Salome HOME
premiere version
[tools/eficas.git] / Telemac / Telemac_Cata.py
1 from Accas import *
2
3 JdC = JDC_CATA (code = 'MAP',
4                 execmodul = None,
5                 )
6 # ======================================================================
7 # Catalog entry for the MAP function : c_pre_interfaceBody_mesh
8 # ======================================================================
9 START=PROC(nom="START",op=None,
10      Title = SIMP( statut='o',typ='TXM'),
11      Working_Directory = SIMP( statut='o',typ='Repertoire',defaut='/tmp'),
12      Dictionnary   = SIMP( statut='o', typ = ('Fichier', 'Dico (*.dico);;All Files (*)',),
13               ),
14      Geometry_File     = SIMP( statut='o', typ = ('Fichier', 'Geo Files (*.geo);;All Files (*)',),
15               fr='Nom du fichier contenant le maillage du calcul a realiser.',
16               ang='Name of the file containing the mesh. This file may also contain the topography and the friction coefficients.'
17               ),
18      Geometry_File_Format = SIMP( statut='f',typ='TXM',into=['MED','SERAFIN','SERAFIND'],sug='MED',
19               ),
20      Steering_File     = SIMP( statut='o', typ = ('Fichier', 'Steering Files (*.cas);;All Files (*)',),
21               ),
22      Fortran_File=SIMP(statut='f',typ = ('Fichier', 'Fortran files (*.f);;All Files (*)'),
23                        fr='Nom du fichier a soumettre',
24                        ang='Name of FORTRAN file to be submitted',),
25      Boundary_Condition_File     = SIMP( statut='o', typ = ('Fichier', 'Boundary Condition (*.cli);;All Files (*)',),
26               ),
27      Reference_File     = SIMP( statut='f', typ = ('Fichier', 'Reference File (*.ref);;All Files (*)',),
28               ),
29
30      Formated_And_Binary_Files=FACT( statut='f',
31           Formated_File1     = SIMP( statut='f', typ = ('Fichier', 'formated File (*.txt);;All Files (*)',),),
32           Formated_File2     = SIMP( statut='f', typ = ('Fichier', 'formated File (*.txt);;All Files (*)',),),
33           Binary_Data_File1  = SIMP( statut='f', typ = ('Fichier', 'Reference File (*.txt);;All Files (*)',),),
34           Binary_Data_File2  = SIMP( statut='f', typ = ('Fichier', 'Reference File (*.txt);;All Files (*)',),),
35      ),
36      Computation_Continued=FACT( statut='f',
37           Previous_Computation = SIMP( statut='o',typ='TXM',into=['SERALIN','SERAFIN'],sug='SERAFIN',),
38           Initial_Time_Set     =SIMP(typ=bool, statut='f'),
39           Computation_File   = SIMP( statut='o', typ = ('Fichier', 'Computation File (*.res);;All Files (*)',),),
40      ),
41 )
42 # Ordre Catalogue START
43
44 GENERAL_PARAMETERS=PROC(nom="GENERAL_PARAMETERS",op=None,
45      Time=FACT( statut='f',
46        Original_Date_of_Time=FACT( statut='f',
47          Jour=SIMP(statut='o',typ='I',val_min=1,val_max=31),
48          Mois=SIMP(statut='o',typ='I',val_min=1,val_max=12),
49          An=SIMP(statut='o',typ='I',val_min=1900),
50           ),
51        Original_Hour_of_Time=FACT( statut='f',
52          Heure=SIMP(statut='o',typ='I',val_min=0,val_max=24,sug=0),
53          Minute=SIMP(statut='o',typ='I',val_min=0,val_max=60,sug=0),
54          Seconde=SIMP(statut='o',typ='I',val_min=0,val_max=60,sug=0),
55          ),
56       ),
57      Location=FACT( statut='f',
58        regles=( PRESENT_PRESENT('Longitude_of_origin','Latitute_of_origin', ),),
59         Latitute_of_origin=SIMP(statut='f',typ='R',val_min=-90,val_max=90),
60         Longitude_of_origin=SIMP(statut='f',typ='R'),
61         Spatial_Projection=SIMP(statut='f',typ='I',into=[1,2,3]),
62         Geographic_System=SIMP(statut='f',typ='I',into=[-1,0,1,2,3,4,5]),
63         Zone_number_in_Geographic_System=SIMP(statut='f',typ='I',into=[-1,0,1,2,3,4,22,30]),
64      ),
65      Machine=FACT( statut='f',
66         Number_of_Processors=SIMP(statut='f',typ='I',val_min=0),
67         Parallel_Computation=SIMP(statut='f',typ=bool,),
68      ),
69      Coupling=FACT( statut='f',
70         Sisyphe=SIMP(statut='f',typ=bool,sug=0),
71         Tomawac=SIMP(statut='f',typ=bool,sug=0),
72         Delwacq=SIMP(statut='f',typ=bool,sug=0),
73      ),
74 )
75 # Ordre Catalogue GENERAL_PARAMETERS
76
77 INITIAL_CONDITIONS=PROC(nom="INITIAL_CONDITIONS",op=None,
78         Initial_Conditions=SIMP(statut='f',typ='TXM',into=['ZERO ELEVATION', 'CONSTANT ELEVATION','ZERO DEPTH','CONSTANT DEPTH','SPECIAL','TPXO SATELLITE ALTIMETRY'],sug='ZERO ELEVATION',),
79  
80          b_initial_elevation     =BLOC(condition = "Initial_Conditions == 'CONSTANT ELEVATION'",
81            Initial_Elevation       =SIMP(statut='o',typ='R' ),
82          ),
83          b_initial_depth     =BLOC(condition = "Initial_Conditions == 'CONSTANT DEPTH'",
84            Initial_Depth       =SIMP(statut='o',typ='R' ),
85          ),
86         Initial_Guess_for_U=SIMP(statut='f',typ='TXM',into=['0=zero','1=previous','2=extrapolation'],sug='1=previous',),
87         Initial_Guess_for_H=SIMP(statut='f',typ='TXM',into=['0=zero','1=previous','2=extrapolation'],sug='1=previous',),
88
89     Boundary_Conditions=FACT(statut='f', 
90        Liquid_Boundaries=FACT(statut='f',max='**',
91
92             Prescibed_Flowrates=SIMP(statut='f',typ='R'),
93             Prescibed_Elevations=SIMP(statut='f',typ='R'),
94             Prescibed_Velocity=SIMP(statut='f',typ='R'),
95             Options=SIMP(statut='f',typ='I',into=[1,2]),
96        ),
97        Stage_Discharge_Curves=SIMP(statut='f',typ='I',into=[0,1,2]),
98        Stage_Discharge_Curves_File   = SIMP( statut='f', typ = ('Fichier', 'All Files (*)',),),
99        Treatment_of_Fluxes_at_the_Boundaries   = SIMP( statut='f',typ='I',into=[1,2],sug=1),
100        Option_for_tidal_Boundary_Conditions   = SIMP( statut='f',typ='I',into=[1,2],sug=1),
101    ),
102 )
103 # Ordre Catalogue INITIAL_CONDITIONS
104
105 NUMERICAL_PARAMETERS=PROC(nom="NUMERICAL_PARAMETERS",op=None,
106         Solver=FACT(statut='o',
107           Equations=SIMP(statut='o',typ='TXM',into=['SAINT-VENANT EF','SAINT-VENANT VF','BOUSSINESQ'],sug='SAINT-VENANT EF'),
108           Solver=SIMP(statut='o',typ='I',into=[1,2,3,4,6,7,8]),
109           Solver_Accuracy=SIMP(statut='o',typ='R'),
110           Maximum_Number_of_Iterations=SIMP(statut='o',typ='I'),
111         ),
112         Time=FACT(statut='f',
113         regles=(AU_MOINS_UN('Number_of_time_Steps','Variable_Time_Step'),
114                 PRESENT_PRESENT('Time_Step','Duration',),),
115            Number_of_Time_Steps=SIMP(statut='f',typ='I'),
116            Time_Step=SIMP(statut='f',typ='R'),
117            Duration=SIMP(statut='f',typ='R'),
118            Variable_Time_Step=SIMP(statut='f',typ=bool),
119         ),
120         Linearity=FACT(statut='f',
121            Treatment_of_Fluxes_at_the_Boundaries =SIMP( statut='f',typ='I',into=[1,2],sug=1),
122            Continuity_Correction  =SIMP(typ=bool, statut='f'),
123            Number_of_Sub_Iterations=SIMP(statut='f',typ='I'),
124         ),
125         Precondionning=FACT(statut='f',
126           Preconditionning=SIMP(statut='f',typ='I',into=[0,2,3,7,11,14,21],sug=2),
127           C_U_Preconditionning  =SIMP(typ=bool, statut='f',),
128           Matrix_Vector_Product =SIMP(statut='f',typ='I',into=[1,2]),
129           Matrix_Storage =SIMP(statut='f',typ='I',into=[1,3]),
130           Mass_Lumping_on_H =SIMP(statut='f',typ='R',sug=0),
131           Mass_Lumping_on_Velocity =SIMP(statut='f',typ='R',sug=0),
132         ),
133         Advection_Propagation=FACT(statut='f',
134           Type_of_Advection=SIMP(statut='f',typ='I',min=4,max=4,into=[1,2,3,4,5,6,7,13,14],defaut=(1,5,1,1),),
135           Advection_of_U_and_V=SIMP(statut='f',typ=bool),
136           Advection_of_H=SIMP(statut='f',typ=bool),
137           Advection_of_Tracers=SIMP(statut='f',typ=bool),
138           Advection_of_K_and_Epsilon=SIMP(statut='f',typ=bool),
139
140          b_upwind     =BLOC(condition = "2 in Type_of_Advection",
141             Upwind_Coefficients=SIMP(statut='o',typ='R',min=4,max=4,)
142            ),
143           Linearized_Propoagation=SIMP(statut='f',typ=bool,sug=False),
144           Mean_Depth_For_Linearity=SIMP(statut='f',typ='R',sug=0.0),
145         ),
146         Discretisation_Implicitation=FACT(statut='f',
147           Discretisation_in_Space=SIMP(statut='f',typ='I',min=4,max=4,into=[11,12,13],defaut=(11,11,11),),
148           Implicitation_for_Diffusion_of_velocity=SIMP(statut='f',typ='R',sug=0),
149           Implicitation_for_Depth=SIMP(statut='f',typ='R',sug=0.55),
150           Implicitation_for_Velocity=SIMP(statut='f',typ='R',sug=0.55),
151           Free_Surface_Gradient_Compatibility=SIMP(statut='f',typ='R',sug=1.),
152         ),
153 )
154 # Ordre Catalogue NUMERICAL_PARAMETERS
155
156 PHYSICAL_PARAMETERS=PROC(nom="PHYSICAL_PARAMETERS",op=None,
157         Atmosphere=FACT(statut='f',
158           Wind=SIMP(statut='f',typ=bool,sug=False),
159           b_Wind     =BLOC(condition = "Wind=='True'",
160             regles=( PRESENT_PRESENT('Wind_Velocity_along_X','Wind_Velocity_along_Y', ),),
161             Coefficient_of_Wind_Influence=SIMP(statut='f',typ='R',sug=0,),
162             Wind_Velocity_along_X=SIMP(statut='f',typ='R',sug=0,),
163             Wind_Velocity_along_Y=SIMP(statut='f',typ='R',sug=0,),
164             Threashold_Depth_for_Wind=SIMP(statut='f',typ='R',sug=0,),
165             Air_Pressure=SIMP(statut='f',typ=bool,sug=False),
166          ),
167           Rain_or_Evaporation=SIMP(statut='f',typ=bool,sug=False),
168           b_Rain     =BLOC(condition = "Rain_or_Evaporation=='True'",
169             Rain_or_Evaporation_in_mm_perday=SIMP(statut='f',typ='I',sug=0),
170                          ),
171          ),
172           Tide_Generating_Force=SIMP(statut='f',typ=bool,sug=False),
173           b_Tide     =BLOC(condition = "Tide_Generating_Force=='True'",
174               Tidal_Data_Base=SIMP(statut='f',typ='I',into=[-1,1,2,3,4]),
175               Coefficient_To_Calibrate_Tidal_Range=SIMP(statut='f',typ='R',sug=1.),
176               Coefficient_To_Calibrate_Tidal_Velocity=SIMP(statut='f',typ='R',sug=999999),
177               Coefficient_To_Calibrate_Sea_Level=SIMP(statut='f',typ='R',sug=0.),
178               Binary_Database_1_for_Tide  = SIMP( statut='f', typ = ('Fichier', '(All Files (*)',),),
179               Binary_Database_2_for_Tide  = SIMP( statut='f', typ = ('Fichier', '(All Files (*)',),),
180          ),
181           Wave_Driver_Currents=SIMP(statut='f',typ=bool,sug=False),
182           b_Wave     =BLOC(condition = "Wave_Driver_Currents=='True'",
183               Record_Number_in_Wave_File=SIMP(statut='f',typ='I',sug=1),
184          ),
185 )
186
187 # Ordre Catalogue PHYSICAL_PARAMETERS