+
+# -*- coding: latin-1 -*-
+
+from Accas import *
+class DateJJMMAAAA:
+ def __init__(self):
+ self.ntuple=3
+
+ def __convert__(self,valeur):
+ if type(valeur) == types.StringType: return None
+ if len(valeur) != self.ntuple: return None
+ return valeur
+
+ def info(self):
+ return "Date : jj/mm/aaaa "
+
+ __repr__=info
+ __str__=info
+
+class grma(GEOM):
+ pass
+
+import types
+class Tuple:
+ def __init__(self,ntuple):
+ self.ntuple=ntuple
+
+ def __convert__(self,valeur):
+ if type(valeur) == types.StringType:
+ return None
+ if len(valeur) != self.ntuple:
+ return None
+ return valeur
+
+ def info(self):
+ return "Tuple de %s elements" % self.ntuple
+
+
+
+JdC = JDC_CATA (code = 'TELEMAC2D',
+ execmodul = None,
+ )
+# =======================================================================
+# Catalog entry for the MAP function : c_pre_interfaceBody_mesh
+# =======================================================================
+
+VERSION_CATALOGUE="TRUNK_20180306"
+# -----------------------------------------------------------------------
+COMPUTATION_ENVIRONMENT = PROC(nom= "COMPUTATION_ENVIRONMENT",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ INITIALIZATION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ TITLE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """Titre du cas etudie. Ce titre figurera sur les dessins.""",
+ ang = """Title of the case being considered. This title shall be marked on the
+drawings.""",
+ ),
+# -----------------------------------
+ INITIAL_CONDITIONS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['ZERO ELEVATION','CONSTANT ELEVATION','ZERO DEPTH','CONSTANT DEPTH','SPECIAL','PARTICULIERES','PARTICULAR','TPXO SATELLITE ALTIMETRY'],
+ defaut = 'ZERO ELEVATION',
+ fr = """Permet de definir les conditions initiales sur
+les hauteurs d''eau.
+Les valeurs possibles sont :
+ - COTE NULLE. Initialise la cote de surface libre a 0.
+ Les hauteurs d''eau initiales sont alors retrouvees en
+ faisant la difference entre les cotes de surface libre
+ et du fond.
+ - COTE CONSTANTE .Initialise la cote de surface libre a la
+ valeur donnee par le mot-cle COTE INITIALE. Les hauteurs
+ d''eau initiales sont calculees comme precedemment.
+ - HAUTEUR NULLE .Initialise les hauteurs d''eau a 0.
+ - HAUTEUR CONSTANTE. Initialise les hauteurs d''eau a la valeur
+ donnee par le mot-cle HAUTEUR INITIALE.
+ - PARTICULIERES. Les conditions initiales sur la hauteur d''eau
+ doivent etre precisees dans le sous-programme CONDIN.
+ - ALTIMETRIE SATELLITE TPXO. Les conditions initiales sur la hauteur
+ d''eau et les vitesses sont etiblies sur la base des donnees
+ satellite TPXO dont les 8 premiers constistuents
+ont ete extrait
+ et sauves dans le fichier BASE DE DONNEES DE MAREE.""",
+ ang = """Makes it possible to define the initial conditions with
+the water depth.
+The possible values are as follows:
+ - ZERO ELEVATION-. Initializes the free surface elevation to 0.
+The initial water depths are then found by computing the difference
+between the free surface and the bottom.
+ - CONSTANT ELEVATION-. Initializes the water elevation to the value
+given by the keyword -INITIAL ELEVATION-. The initial water depths
+are computed as in the previous case.
+ - ZERO DEPTH-. Initializes the water depths to 0.
+ - CONSTANT DEPTH-. Initializes the water depths to the value given
+by the key-word -INITIAL DEPTH-.
+ - SPECIAL-. The initial conditions with the water depth should be
+stated in the CONDIN subroutine.
+ - TPXO SATELITE ALTIMETRY. The initial conditions on the
+free surface and
+velocities are established from the TPXO satellite program data,
+the harmonic
+constituents of which are stored in the TIDE DATA BASE file.""",
+ ),
+# -----------------------------------
+ b_INITIAL_CONDITIONSG = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT ELEVATION'",
+# -----------------------------------
+# -----------------------------------
+ INITIAL_ELEVATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Valeur utilisee avec l''option :
+ CONDITIONS INITIALES - COTE CONSTANTE""",
+ ang = """Value to be used with the option :
+INITIAL CONDITIONS -CONSTANT ELEVATION""",
+ ),
+ ),
+# -----------------------------------
+ b_INITIAL_CONDITIONSH = BLOC(condition="INITIAL_CONDITIONS == 'CONSTANT DEPTH'",
+# -----------------------------------
+# -----------------------------------
+ INITIAL_DEPTH = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Valeur utilisee avec l''option :
+CONDITIONS INITIALES :-HAUTEUR CONSTANTE-""",
+ ang = """Value to be used along with the option:
+ INITIAL CONDITIONS -CONSTANT DEPTH-""",
+ ),
+ ),
+# -----------------------------------
+ BINARY_DATA_FILE_1_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['BIN','SERAFIN','SERAFIND','MED'],
+ defaut = 'BIN',
+ fr = """Format du fichier de geometrie.
+Les valeurs possibles sont :
+- BIN : format binaire standard
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Geometry file format.
+Possible values are:
+- BIN : Standard binary format
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ BINARY_DATA_FILE_1 = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees code en binaire mis a la disposition
+de l''utilisateur.
+Les donnees de ce fichier seront a lire sur le canal 24.""",
+ ang = """Binary-coded data file made available to the user.
+The data in this file shall be read on channel 24.""",
+ ),
+# -----------------------------------
+ BINARY_DATA_FILE_2_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['BIN','SERAFIN','SERAFIND','MED'],
+ defaut = 'BIN',
+ fr = """Format du fichier de geometrie.
+Les valeurs possibles sont :
+- BIN : format binaire standard
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Geometry file format.
+Possible values are:
+- BIN : Standard binary format
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ BINARY_DATA_FILE_2 = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees code en binaire mis a la disposition
+de l''utilisateur.
+Les donnees de ce fichier seront a lire sur le canal 25.""",
+ ang = """Binary-coded data file made available to the user.
+The data in this file shall be read on channel 25.""",
+ ),
+# -----------------------------------
+ FORMATTED_DATA_FILE_1 = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees formate mis a la disposition de
+l''utilisateur.
+Les donnees de ce fichier seront a lire sur le canal 26.""",
+ ang = """Formatted data file made available to the user.
+The data in this file shall be read on channel 26.""",
+ ),
+# -----------------------------------
+ FORMATTED_DATA_FILE_2 = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees formate mis a la disposition de
+l''utilisateur.
+Les donnees de ce fichier seront a lire sur le canal 27.""",
+ ang = """Formatted data file made available to the user.
+The data in this file shall be read on channel 27.""",
+ ),
+# -----------------------------------
+ INPUT_FILES = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ GEOMETRY_FILE_FORMAT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du fichier de geometrie.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Geometry file format.
+Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ GEOMETRY_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ fr = """Nom du fichier contenant le maillage du calcul a realiser.""",
+ ang = """Name of the file containing the mesh. This file may also
+contain the topography and the friction coefficients.""",
+ ),
+# -----------------------------------
+ FORTRAN_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'FichierOuRepertoire',
+ defaut = 'DEFAUT',
+ fr = """Nom du fichier FORTRAN a soumettre.""",
+ ang = """Name of FORTRAN file to be submitted.""",
+ ),
+# -----------------------------------
+ BOTTOM_TOPOGRAPHY_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier eventuel contenant la bathymetrie associee au
+maillage.
+Si ce mot-cle est utilise; c''est cette bathymetrie qui sera utilisee
+pour le calcul.""",
+ ang = """Name of the possible file containing the bathymetric data.
+Where this keyword is used, these bathymetric data shall be used in
+the computation.""",
+ ),
+# -----------------------------------
+ BOTTOM_SMOOTHINGS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Nombre de lissages effectues sur la topographie.
+chaque lissage, effectue a l''aide d''une matrice de masse,
+est conservatif.
+Utilise lorsque les donnees de bathymetrie donnent des resultats
+trop irreguliers apres interpolation.""",
+ ang = """Number of smoothings on bottom topography.
+each smoothing is mass conservative.
+to be used when interpolation of bathymetry on the mesh gives
+very rough results.""",
+ ),
+# -----------------------------------
+ BOUNDARY_CONDITIONS_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ fr = """Nom du fichier contenant les types de conditions aux limites.
+Ce fichier est rempli de facon automatique par le mailleur au moyen de
+couleurs affectees aux noeuds des frontieres du domaine de calcul.""",
+ ang = """Name of the file containing the types of boundary conditions.
+This file is filled automatically by the mesh generator through
+through colours that are assigned to the boundary nodes.""",
+ ),
+# -----------------------------------
+ VALIDATION = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Option utilisee principalement pour le dossier de validation. Le
+fichier des resultats du calcul precedent est alors considere comme une
+reference a laquelle on va comparer le calcul. La comparaison est
+effectuee par le sous-programme VALIDA qui peut etre une comparaison
+avec une solution exacte par exemple.""",
+ ang = """This option is primarily used for the validation documents. The
+PREVIOUS COMPUTATION FILE is then considered as a reference which the
+computation is going to be compared with. The comparison is made by the
+subroutine VALIDA, which can be modified as to so as to include, for
+example,a comparison with an exact solution.""",
+ ),
+# -----------------------------------
+ REFERENCE_FILE_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du fichier de resultats du calcul precedent.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Previous computation results file format.
+Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ REFERENCE_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de resultats de reference pour la validation. Les resultats a
+placer dans ce fichier seront a ecrire sur le canal 22.""",
+ ang = """Binary-coded result file for validation. The results to be entered
+into this file shall be written on channel 22.""",
+ ),
+ ),
+# -----------------------------------
+ GLOBAL = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ PARALLEL_PROCESSORS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """NOMBRE DE PROCESSEURS EN CALCUL PARALLELE
+0 : 1 machine, compilation sans bibliotheque de parallelisme
+1 : 1 machine, compilation avec bibliotheque de parallelisme
+2 : 2 processeurs ou machines en parallele
+etc...""",
+ ang = """NUMBER OF PROCESSORS FOR PARALLEL PROCESSING
+0 : 1 machine, compiling without parallel library
+1 : 1 machine, compiling with a parallel library
+2 : 2 processors or machines in parallel
+etc....""",
+ ),
+# -----------------------------------
+ CHECKING_THE_MESH = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Si oui on appelle le sous-programme checkmesh qui verifie
+la coherence du maillage, points superposes, etc.""",
+ ang = """if this key word is equal to yes, a call to subroutine
+checkmesh will look for errors in the mesh, superimposed points, etc.""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_BOUNDARIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 30,
+ fr = """nombre maximal de frontieres differentes dans le maillage.
+Sert au dimensionnement de la memoire, a augmenter si necessaire""",
+ ang = """maximal number of boundaries in the mesh.
+Used for dimensioning arrays. Can be increased if needed""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_SOURCES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 20,
+ fr = """nombre maximal de points sources dans le maillage.
+Sert au dimensionnement de la memoire, a augmenter si necessaire""",
+ ang = """maximal number of punctual sources in the mesh.
+Used for dimensioning arrays. Can be increased if needed""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_TRACERS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 20,
+ fr = """nombre maximal de traceurs.
+Sert au dimensionnement de la memoire, a augmenter si necessaire""",
+ ang = """maximal number of tracers.
+Used for dimensioning arrays. Can be increased if needed""",
+ ),
+# -----------------------------------
+ VECTOR_LENGTH = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """LONGUEUR DU VECTEUR POUR LES MACHINES VECTORIELLES""",
+ ang = """VECTOR LENGTH ON VECTOR MACHINES""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ RESTART = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ COMPUTATION_CONTINUED = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Determine si le calcul en cours est independant de tout autre
+resultat ou est une reprise effectuee a partir du resultat d''un calcul
+precedent.
+NON : Il s''agit du premier passage pour ce calcul et il est necessaire
+de definir un jeu complet de conditions initiales
+OUI : Il s''agit d''une reprise de calcul :
+les conditions initiales sont constituees par le dernier pas de
+temps du ''FICHIER DU CALCUL PRECEDENT'' du fichier des parametres
+utilise pour soumettre le calcul.
+Par contre, l''ensemble des donnees du fichier des parametres
+peuvent etre redefinies ; ce qui offre la possibilite de changer
+par exemple, le pas de temps, le modele de turbulence, le
+frottement, d''ajouter ou retirer un traceur ...
+De meme, il est necessaire de definir des conditions aux limites
+(sous-programme BORD ou valeurs placees dans le fichier des
+parametres), qui peuvent egalement etre modifiees.""",
+ ang = """Determines whether the computation under way is independent
+result or is following an earlier result.
+NO: It is the first run for this computation and a whole set of
+initial conditions should be defined.
+YES: It follows a former computation:
+the initial conditions consist in the last time step of the
+PREVIOUS COMPUTATION FILE in the steering file used for submitting
+the computation.
+All the data from the steering file may be defined once again, which
+provides an opportunity to change, for example, the time step,
+the turbulence model, the friction, to add or remove a tracer...
+It is also possible to define new boundary conditions.""",
+ ),
+# -----------------------------------
+ b_COMPUTATION_CONTINUEDG = BLOC(condition="COMPUTATION_CONTINUED == True",
+# -----------------------------------
+# -----------------------------------
+ PREVIOUS_COMPUTATION_FILE_FORMAT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du fichier de resultats du calcul precedent.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Previous computation results file format.
+Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ PREVIOUS_COMPUTATION_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom d''un fichier contenant les resultats d''un calcul
+precedent realise sur le meme maillage et dont le dernier pas de temps
+enregistre va fournir les conditions initiales pour une suite de de
+calcul.""",
+ ang = """Name of a file containing the results of an earlier
+computation which was made on the same mesh. The last recorded time
+step will provid the initial conditions for the new computation.""",
+ ),
+# -----------------------------------
+ RECORD_NUMBER_FOR_RESTART = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """En cas de suite de calcul, numero de l''enregistrement
+de depart dans le fichier du calcul precedent. 0 signifie
+qu''on prend le dernier enregistrement""",
+ ang = """In case of COMPUTATION CONTINUED, record number to
+start from in the PREVIOUS COMPUTATION FILE""",
+ ),
+ ),
+# -----------------------------------
+ INITIAL_TIME_SET_TO_ZERO = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Remet le temps a zero en cas de suite de calcul""",
+ ang = """Initial time set to zero in case of restart""",
+ ),
+ ),
+# -----------------------------------
+ OUTPUT_FILES = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ RESULTS_FILES = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_FIRST_TIME_STEP_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Determine le nombre de pas de temps a partir duquel debute
+l''ecriture des resultats dans le FICHIER DES RESULTATS.""",
+ ang = """Determines the number of time steps after which the results
+are first written into the RESULTS FILE.""",
+ ),
+# -----------------------------------
+ GRAPHIC_PRINTOUT_PERIOD = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """ Determine la periode en nombre de pas de temps d''impression des
+VARIABLES POUR LES SORTIES GRAPHIQUES (voir ce mot-cle) dans le FICHIER
+DES RESULTATS.""",
+ ang = """ Determines, in number of time steps, the printout period for the
+VARIABLES FOR GRAPHIC PRINTOUTS in the RESULTS FILE.""",
+ ),
+# -----------------------------------
+ VARIABLES_FOR_GRAPHIC_PRINTOUTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wave celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","tracer 1 etc.","All the tracers 1 to 9.","All the tracers 10 to 19.","turbulent kinetic energy in k-epsilon model (J/kg)","dissipation of turbulent energy (W/kg)","turbulent viscosity (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","scalar velocity (m/s)","wind along x axis (m/s)","wind along y axis (m/s)","air pressure (Pa)","friction coefficient","drift along x (m)","drift along y (m)","Courant number ","supplementary variable N","supplementary variable O","supplementary variable R","supplementary variable Z","maximum elevation","time of maximum elevation","maximum velocity","time of maximum velocity","friction velocity","gradient 1, etc. ","reference level for Nestor "],
+ defaut = ["velocity along x axis (m/s)","velocity along y axis (m/s)","water depth (m)","bottom elevation (m)"],
+ fr = """ Noms des variables que l''utilisateur veut ecrire dans le fichier des
+resultats. Chaque variable est representee par une lettre. Le choix des
+separateurs est libre. Les possibilites offertes sont les suivantes :
+ - U : vitesse suivant l''axe des x (m/s),
+ - V : vitesse suivant l''axe des y (m/s),
+ - C : celerite des ondes (m/s),
+ - H : hauteur d''eau (m),
+ - S : cote de surface libre (m),
+ - B : cote du fond (m),
+ - F : nombre de Froude,
+ - Q : debit scalaire du fluide (m2/s),
+ - Tn: traceur, avec n le numero du traceur,
+ - K : energie turbulente du modele k-epsilon (J/kg),
+ - E : dissipation de l''energie turbulente (W/kg),
+ - D : viscosite turbulente du modele k-epsilon (m2/s),
+ - I : debit suivant l''axe des x (m2/s),
+ - J : debit suivant l''axe des y (m2/s),
+ - M : vitesse scalaire (m/s),
+ - X : vent suivant l''axe des x (m/s),
+ - Y : vent suivant l''axe des y (m/s),
+ - P : pression atmospherique (Pa),
+ - W : coefficient de frottement sur le fond,
+ - A : derive en x (m),
+ - G : derive en y (m),
+ - L : coefficient de frottement sur le fond,
+ - Gn: gradient differencie, avec n le numero de reference du gradient.
+L''utilisateur dispose egalement de 4 champs libres, qu''il peut
+utiliser pour ecrire dans le fichier des resultats des variables qu''il
+cree lui-meme. Ces variables propres a l''utlisateur doivent etre
+calculees dans le sous-programme PRERES et le nom que l''on desire leur
+donner doit etre ecrit dans le sous-programme NOMVAR. Ces 7 champs sont
+:
+ - N, O, R, Z qui correspondent aux tableaux PRIVE(1,1), PRIVE(1,2),
+ PRIVE(1,3), PRIVE(1,4).
+A la difference des variables precedentes, celles-ci sont conservees
+dans tout le programme, et peuvent donc etre reutilisees. Dans ce
+dernier cas ne pas oublier de donner une taille suffisante au tableau
+PRIVE (dans le programme principal). Il est ainsi possible de limiter,
+par exemple, la taille des fichiers de resultats pour de tres gros
+calculs. Cependant, il faut etre conscient du fait que, dans
+l''eventualite d''une reprise de calcul, le code doit disposer, dans le
+fichier des resultats, des informations necessaires a sa poursuite, a
+savoir :
+ - les vitesses U et V,
+ - les hauteurs d''eau H,
+ - les cotes du fond B.
+Toutefois, TELEMAC peut recalculer certaines de ces variables a
+partir d''autres qui lui seront fournies (par exemple, il recalculera H
+a partir de S et B).""",
+ ang = """ Names of variables the user wants to write into the results file. Each
+variable is represented by a letter. The separators can be freely
+selected. The available capabilities are as follows:
+ - U : velocity along x axis (m/s),
+ - V : velocity along y axis (m/s),
+ - C : wave celerity (m/s),
+ - H : water depth (m),
+ - S : free surface elevation (m),
+ - B : bottom elevation (m),
+ - F : Froude number,
+ - Q : scalar flowrate of fluid (m2/s),
+ - Tn : tracer, with n the tracer number,
+ - K : turbulent kinetic energy in k-epsilon model (J/kg),
+ - E : dissipation of turbulent energy (W/kg),
+ - D : turbulent viscosity of k-epsilon model (m2/s),
+ - I : flowrate along x axis (m2/s),
+ - J : flowrate along y axis (m2/s),
+ - M : scalar velocity (m/s),
+ - X : wind along x axis (m/s) Y : wind along y axis (m/s),
+ - P : air pressure (Pa),
+ - W : friction coefficient ,
+ - A : drift along x,
+ - G : drift along y,
+ - L : nombre de courant,
+ - Gn : differentiated gradient, with n the gradient reference number.
+Four other variables are also made available to the
+user who may use them for writing into the file the results of variables
+he creates himself. These user-specific variables should be computed in
+the subroutine PRERES and their desired name should be written into the
+subroutine NOMVAR. These seven variables are as follows:
+- N, O, R, Z
+which correspond to arrays PRIVE(1,1) up to PRIVE(1, Unlike the
+preceding variables, they are preserved throughout the program, so that
+they can be used again.
+In the latter case, do not forget to provide the
+array PRIVE with sufficiently large dimensions (in FORTRAN file). With
+this key-word, one can limit the size of the RESULTS FILE. It should be
+kept in mind, however, that if a computation has to be continued, the
+RESULTS FILE should contain the appropriate information for running the
+code,i.e.:
+ - velocities U and V,
+ - water depths H,
+ - bottom elevations B.
+TELEMAC, however, can compute some of these variables from others for
+example, it will compute H from S and B.""",
+ ),
+# -----------------------------------
+ NUMBER_OF_PRIVATE_ARRAYS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Nombre de tableaux mis a disposition de l utilisateur""",
+ ang = """Number of arrays for own user programming""",
+ ),
+# -----------------------------------
+ NAMES_OF_PRIVATE_VARIABLES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ fr = """Noms des variables privees en 32 caracteres, 16 pour le nom
+ 16 pour l''unite. Elles correspondent au bloc PRIVE
+ et peuvent etre lues dans le fichier de geometrie si elles
+ y sont presentes avec leur nom""",
+ ang = """Name of private variables in 32 characters, 16 for the name,
+ 16 for the unit. They are stored in the block PRIVE and
+ can be read in the geometry file if they are here with their
+ name""",
+ ),
+# -----------------------------------
+ RESULTS_FILE_FORMAT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du fichier de resultats.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Results file format. Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ RESULTS_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Nom du fichier dans lequel seront ecrits les resultats du
+calcul avec la periodicite donnee par le mot cle ''PERIODE POUR LES
+SORTIES GRAPHIQUES''.""",
+ ang = """Name of the file into which the computation results shall be
+written,
+the periodicity being given by the key-word:
+GRAPHIC PRINTOUT PERIOD.""",
+ ),
+# -----------------------------------
+ RESULT_FILE_IN_LONGITUDE_LATITUDE = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """donne les coordonnees dans le fichier resultats en longitude-latitude
+si le fichier geo est aussi donnee en long lat""",
+ ang = """gives result file in longitude latitude if geo file is
+also given in long lat""",
+ ),
+# -----------------------------------
+ BINARY_RESULTS_FILE_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['BIN','SERAFIN','SERAFIND','MED'],
+ defaut = 'BIN',
+ fr = """Format du fichier de geometrie.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Geometry file format.
+Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ BINARY_RESULTS_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats code en binaire mis a la disposition
+de l''utilisateur. Les resultats a placer dans ce fichier seront a
+ecrire sur le canal 28.""",
+ ang = """Additional binary-coded result file made available
+to the user. The results to be entered into this file shall be written
+on channel 28.""",
+ ),
+# -----------------------------------
+ FORMATTED_RESULTS_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats formate mis a la disposition de
+l''utilisateur.
+Les resultats a placer dans ce fichier seront a ecrire sur
+le canal 29.""",
+ ang = """Formatted file of results made available to the user.
+The results to be entered into this file shall be written
+on channel 29.""",
+ ),
+ ),
+# -----------------------------------
+ CONTROL_SECTION = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ CONTROL_SECTIONS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ fr = """Couples de points (numeros globaux dans le maillage) entre
+lesquels les debits instantanes et cumules seront donnes.""",
+ ang = """Couples of points (global numbers
+in the mesh) defining sections
+ where the instantaneous and cumulated discharges will be given""",
+ ),
+# -----------------------------------
+ PRINTING_CUMULATED_FLOWRATES = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """IMPRESSION DU FLUX CUMULE A TRAVERS LES SECTIONS DE CONTROLE""",
+ ang = """PRINTING THE CUMULATED FLOWRATES THROUGH CONTROL SECTIONS""",
+ ),
+# -----------------------------------
+ COMPATIBLE_COMPUTATION_OF_FLUXES = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """FLUX A TRAVERS LES SECTIONS DE CONTROLE, CALCUL COMPATIBLE
+AVEC L''IMPERMEABILITE SOUS FORME FAIBLE""",
+ ang = """FLOWRATES THROUGH CONTROL SECTIONS, COMPUTATION COMPATIBLE
+WITH THE WEAK FORMULATION OF NO-FLUX BOUNDARY CONDITION""",
+ ),
+# -----------------------------------
+ SECTIONS_INPUT_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """sections input file, partitioned""",
+ ang = """sections input file, partitioned""",
+ ),
+# -----------------------------------
+ SECTIONS_OUTPUT_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """sections output file, written by the master""",
+ ang = """sections output file, written by the master""",
+ ),
+# -----------------------------------
+ FLUXLINE = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """FLUXLINE""",
+ ang = """Use Fluxline to compute flux over lines""",
+ ),
+# -----------------------------------
+ FLUXLINE_INPUT_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier de fluxline, avec des donnees sur les sections""",
+ ang = """Name of the Fluxline file, with data on cross-sections""",
+ ),
+ ),
+# -----------------------------------
+ LISTING = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_FIRST_TIME_STEP_FOR_LISTING_PRINTOUTS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Determine le nombre de pas de temps a partir duquel debute
+l''ecriture des resultats dans le listing.""",
+ ang = """Determines the number of time steps after which the results
+are first written into the listing.""",
+ ),
+# -----------------------------------
+ LISTING_PRINTOUT_PERIOD = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """ Determine la periode en nombre de pas de temps d''impression des
+VARIABLES A IMPRIMER (voir ce mot-cle) Pour la mise au point, il faut
+savoir que la sortie des resultats est effectuee systematiquement sur le
+fichier de retour d''execution du code (actuellement accessible par le
+menu 3.f de SPF sur IBM, et dans le fichier !CAS.SORTIE sur station de
+travail)""",
+ ang = """ Determines, in number of time steps, the printout period of the
+VARIABLES TO BE PRINTED The results are systematically printed out on
+the listing file (file CAS.SORTIE at the workstation).""",
+ ),
+# -----------------------------------
+ LISTING_FOR_PRINTOUT_PERIOD = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Determine la periode en nombre de pas de temps d''impression
+des VARIABLES A IMPRIMER (voir ce mot-cle) Pour la mise au point,
+il faut savoir que la sortie des resultats est effectuee
+systematiquement sur le fichier de retour d''execution du code
+(actuellement accessible par le menu 3.f de SPF sur IBM, et dans
+le fichier !CAS.SORTIE sur station de travail)""",
+ ang = """Determines, in number of time steps, the printout period of
+the VARIABLES TO BE PRINTED
+The results are systematically printed out on the listing file
+(file CAS.SORTIE at the workstation).""",
+ ),
+# -----------------------------------
+ LISTING_PRINTOUT = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Sortie des resultats sur support papier.
+Si l''on met NON le listing ne contient que l''entete et la mention
+FIN NORMALE DU PROGRAMME
+Commande a eviter""",
+ ang = """Result printout on hard copy.
+When NO is selected, the listing only includes the heading and the
+phrase "NORMAL END OF PROGRAM"
+In addition, the options MASS BALANCE and VALIDATION are inhibited.
+Not recommended for use.""",
+ ),
+# -----------------------------------
+ VARIABLES_TO_BE_PRINTED = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ intoSug = ["velocity along x axis (m/s)","velocity along y axis (m/s)","wave celerity (m/s)","water depth (m)","free surface elevation (m)","bottom elevation (m)","Froude number","scalar flowrate of fluid (m2/s)","tracer 1, etc.","turbulent kinetic energy in k-epsilon model (J/kg)","dissipation of turbulent energy (W/kg)","turbulent viscosity of k-epsilon model (m2/s)","flowrate along x axis (m2/s)","flowrate along y axis (m2/s)","scalar velocity (m/s)","wind along x axis (m/s)","wind along y axis (m/s)","air pressure (Pa)","friction coefficient","drift along x (m)","drift along y (m)","nombre de courants ","supplementary variable N","supplementary variable O","supplementary variable R","supplementary variable Z","gradient 1, etc."],
+ defaut = '',
+ fr = """Nom des variables que l''utilisateur desire ecrire a l''ecran. Meme
+possibilites que pour les sorties graphiques.""",
+ ang = """Name of the variables that the user wants printed on screen.
+Same values available as graphical outputs""",
+ ),
+# -----------------------------------
+ MASS_BALANCE = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Determine si l''on effectue ou non le bilan de masse
+sur le domaine.
+Cette procedure calcule a chaque pas de temps :
+ - les flux aux entrees et sorties du domaine;
+ - le flux global a travers l''ensemble des parois du domaine (liquides
+ou solides)
+- l''erreur relative sur la masse pour ce pas de temps.
+En fin de listing, on trouve l''erreur relative sur la masse pour
+l''ensemble du calcul.
+Il ne s''agit que d''un calcul indicatif car il n''existe pas
+d''expression compatible du debit en formulation c,u,v.""",
+ ang = """Determines whether a check of the mass-balance over
+the domain is mader or not.
+This procedures computes the following at each time step:
+the domain inflows and outflows,
+the overall flow across all the boundaries,
+the relative error in the mass for that time step.
+The relative error in the mass over the whole computation can be found
+at the end of the listing.""",
+ ),
+# -----------------------------------
+ INFORMATION_ABOUT_SOLVER = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Donne a chaque pas de temps le nombre d''iterations necessaires
+a la convergence du solveur de l''etape de propagation.""",
+ ang = """if YES, prints the number of iterations
+that have been necessar
+to get the solution of the linear system.""",
+ ),
+# -----------------------------------
+ LIST_OF_POINTS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ fr = """Liste de points remarquables pour les impressions""",
+ ang = """List of remarkable points for printouts""",
+ ),
+# -----------------------------------
+ NAMES_OF_POINTS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ fr = """Noms des points remarquables pour les impressions""",
+ ang = """Names of remarkable points for printouts""",
+ ),
+ ),
+# -----------------------------------
+ FOURIER = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ FOURIER_ANALYSIS_PERIODS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Liste des periodes que l''on veut analyser""",
+ ang = """List of periods to be analysed""",
+ ),
+# -----------------------------------
+ TIME_RANGE_FOR_FOURIER_ANALYSIS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 2, max= 2,
+ defaut = [0.,0.],
+ fr = """Pour le calcul du marnage et de la phase de la maree""",
+ ang = """For computing tidal range and phase of tide""",
+ ),
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+HYDRO = PROC(nom= "HYDRO",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ BOUNDARY_CONDITIONS = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ PRESCRIBED_ELEVATIONS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', max='**',
+ fr = """Valeurs des cotes imposees aux frontieres liquides entrantes.
+Lire la partie du mode d''emploi consacree aux conditions aux limites""",
+ ang = """Values of prescribed elevations at the inflow boundaries.
+The section about boundary conditions is to be read in the manual""",
+ ),
+# -----------------------------------
+ PRESCRIBED_FLOWRATES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', max='**',
+ fr = """Valeurs des debits imposes aux frontieres liquides entrantes.
+Lire la partie du mode d''emploi consacree aux conditions aux limites""",
+ ang = """Values of prescribed flowrates at the inflow boundaries.
+The section about boundary conditions is to be read in the manual""",
+ ),
+# -----------------------------------
+ PRESCRIBED_VELOCITIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', max='**',
+ fr = """Valeurs des vitesses imposees aux frontieres liquides entrantes.
+ Lire la partie du mode d''emploi consacree aux conditions aux limites""",
+ ang = """Values of prescribed velocities at the liquid inflow boundaries.
+ Refer to the section dealing with the boundary conditions""",
+ ),
+ ),
+# -----------------------------------
+ BOUNDARY_CONDITIONS_OTHERS = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ STAGE_DISCHARGE_CURVES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', max='**',
+ into = ["no","Z(Q)","Q(Z)"],
+ fr = """Indique si une courbe de tarage doit etre utilisee pour une frontiere
+0:non 1:Z(Q) 2: Q(Z)""",
+ ang = """Says if a discharge-elevation curve must be used for a given boundary
+0:NO 1:Z(Q) 2: Q(Z)""",
+ ),
+# -----------------------------------
+ b_STAGE_DISCHARGE_CURVESG = BLOC(condition="STAGE_DISCHARGE_CURVES != 'no'",
+# -----------------------------------
+# -----------------------------------
+ STAGE_DISCHARGE_CURVES_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier contenant les courbes de tarage""",
+ ang = """Name of the file containing stage-discharge curves""",
+ ),
+ ),
+# -----------------------------------
+ VELOCITY_PROFILES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["constant normal profile","u and v given in the conlim file","normal velocity given in ubor in the conlim file","velocity proportional to square root of depth","velocity proportional to square root of depth, variant"],
+ fr = """1:profil normal constant 2:u et v
+donnes dans le fichier conlim
+ 3:vitesse normale donnee dans ubor dans le fichier conlim
+ 4:profil en racine de la profondeur
+ 5:profil en racine de la profondeur, variante""",
+ ang = """1:constant normal profile 2:u and v given in the conlim file
+ 3:normal velocity given in ubor in the conlim file
+ 4:sqrt(depth) profile
+ 5:sqrt(depth) profile, variant""",
+ ),
+# -----------------------------------
+ OPTION_FOR_LIQUID_BOUNDARIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', max='**',
+ into = ["classical","Thompson method based on characteristics"],
+ fr = """On donne 1 entier par frontiere liquide
+ 1 : conditions aux limites classiques
+ 2 : methode de Thompson avec calcul de caracteristiques""",
+ ang = """One integer per liquid boundary is given
+ 1 : classical boundary conditions
+ 2 : Thompson method based on characteristics""",
+ ),
+# -----------------------------------
+ LIQUID_BOUNDARIES_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de variations en temps des conditions aux limites.
+Les donnees de ce fichier seront a lire sur le canal 12.""",
+ ang = """Variations in time of boundary conditions.
+Data of this file are read
+on channel 12.""",
+ ),
+# -----------------------------------
+ ELEMENTS_MASKED_BY_USER = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """SI OUI REMPLIR LE SOUS-PROGRAMME MASKOB""",
+ ang = """IF YES REWRITE SUBROUTINE MASKOB""",
+ ),
+# -----------------------------------
+ b_ELEMENTS_MASKED_BY_USERG = BLOC(condition="ELEMENTS_MASKED_BY_USER == True",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Rewrite subroutine maskob"),
+ ),
+ ),
+# -----------------------------------
+ PHYSICAL_PARAMETERS_HYDRO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ FRICTION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_FRICTION_DOMAINS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 10,
+ fr = """nombre maximal de zones pouvant etre definies pour le
+frottement. Peut etre augmente si necessaire""",
+ ang = """maximal number of zones defined for the friction.
+Could be increased if needed""",
+ ),
+# -----------------------------------
+ FRICTION_DATA = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Lois de frottements definies par zone""",
+ ang = """Friction law defined by area""",
+ ),
+# -----------------------------------
+ FRICTION_DATA_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """fichier de donnees pour le frottement""",
+ ang = """friction data file""",
+ ),
+# -----------------------------------
+ LAW_OF_BOTTOM_FRICTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO FRICTION","HAALAND","CHEZY","STRICKLER","MANNING","NIKURADSE"],
+ fr = """ selectionne le type de formulation utilisee pour le calcul du
+frottement sur le fond. Les lois possibles sont les suivantes (cf. Note
+de principe) : - 0 : pas de frottement sur le fond; 1 : formule de
+Haaland 2 : formule de Chezy 3 : formule de STRICKLER 4 : formule de
+MANNING 5 : formule de NIKURADSE""",
+ ang = """ Selects the type of formulation used for the bottom friction. The
+possible laws are as follows (refer to the Principle note): 0: no
+friction against bottom, 1: Haaland''s formula 2: CHEZY''s formula 3:
+STRICKLER''s formula 4: MANNING''s formula 5: NIKURADSE''s formula""",
+ ),
+# -----------------------------------
+ b_LAW_OF_BOTTOM_FRICTIONG = BLOC(condition="LAW_OF_BOTTOM_FRICTION != 'NO FRICTION'",
+# -----------------------------------
+# -----------------------------------
+ FRICTION_COEFFICIENT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 50.,
+ fr = """Fixe la valeur du coefficient de frottement pour la
+formulation choisie.
+Attention; la signification de ce chiffre varie suivant la formule
+choisie :
+ 1 : coefficient lineaire
+ 2 : coefficient de Chezy
+ 3 : coefficient de Strickler
+ 4 : coefficient de Manning
+ 5 : hauteur de rugosite de Nikuradse""",
+ ang = """Sets the value of the friction coefficient for the selected
+formulation. It is noteworthy that the meaning of this figure changes
+according to the selected formula (Chezy, Strickler, etc.) :
+ 1 : linear coefficient
+ 2 : Chezy coefficient
+ 3 : Strickler coefficient
+ 4 : Manning coefficient
+ 5 : Nikuradse grain size""",
+ ),
+ ),
+# -----------------------------------
+ MANNING_DEFAULT_VALUE_FOR_COLEBROOK_WHITE_LAW = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.02,
+ fr = """valeur par defaut du manning pour la loi de frottement de
+Colebrook-White (loi numero 7)""",
+ ang = """Manning default value for the friction law of Colebrook-White
+(law number 7)""",
+ ),
+# -----------------------------------
+ DEPTH_IN_FRICTION_TERMS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["nodal","average"],
+ defaut = "nodal",
+ fr = """1 : nodale 2 : moyenne""",
+ ang = """1: nodal 2: average""",
+ ),
+# -----------------------------------
+ NON_SUBMERGED_VEGETATION_FRICTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """calcul du frottement du a la vegetation non submergee""",
+ ang = """friction calculation of the non-submerged vegetation""",
+ ),
+# -----------------------------------
+ b_NON_SUBMERGED_VEGETATION_FRICTIONG = BLOC(condition="NON_SUBMERGED_VEGETATION_FRICTION == True",
+# -----------------------------------
+# -----------------------------------
+ DIAMETER_OF_ROUGHNESS_ELEMENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.006,
+ fr = """diametre des elements de frottements""",
+ ang = """diameter of roughness element""",
+ ),
+# -----------------------------------
+ SPACING_OF_ROUGHNESS_ELEMENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.14,
+ fr = """espacement des elements de frottement""",
+ ang = """spacing of rouhness element""",
+ ),
+ ),
+# -----------------------------------
+ LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO FRICTION","HAALAND","CHEZY","STRICKLER","MANNING","NIKURADSE","LOG LAW","COLEBROOK-WHITE"],
+ defaut = "NO FRICTION",
+ fr = """selectionne le type de formulation utilisee pour le calcul
+du frottement sur les parois laterales.
+Les lois possibles sont les suivantes (cf. Note de principe) :
+0 : pas de frottement
+1 : lineaire
+2 : Chezy
+3 : Strickler
+4 : Manning
+5 : formule de NIKURADSE
+6 : loi en log
+7 : Colebrook-White""",
+ ang = """Selects the type of formulation used
+for the friction on lateral boundaries.
+The possible laws are as follows (refer to the Principle note):
+0: no friction
+1: linear
+2: Chezy
+3: Strickler
+4: Manning
+5: NIKURADSE''s formula
+6 : law log
+7 : Colebrook-White""",
+ ),
+# -----------------------------------
+ b_LAW_OF_FRICTION_ON_LATERAL_BOUNDARIESG = BLOC(condition="LAW_OF_FRICTION_ON_LATERAL_BOUNDARIES != 'NO FRICTION'",
+# -----------------------------------
+# -----------------------------------
+ ROUGHNESS_COEFFICIENT_OF_BOUNDARIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 100.,
+ fr = """Fixe la valeur du coefficient de frottement sur les frontieres
+solides avec un regime turbulent rugueux sur les bords du domaine.
+meme convention que pour le coefficient de frottement:
+ 1 : non programme
+ 2 : coefficient de Chezy
+ 3 : coefficient de Strickler
+ 4 : coefficient de Manning
+ 5 : hauteur de rugosite de Nikuradse""",
+ ang = """Sets the value of the friction coefficient of the solid
+boundary with the bed roughness option. Same meaning than friction
+coefficient""",
+ ),
+ ),
+# -----------------------------------
+ DEFINITION_OF_ZONES = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Declenche l''appel a def\_zones, pour donner
+ un numero de zone a chaque point""",
+ ang = """Triggers the call to def\_zones to give a zone number to every point""",
+ ),
+# -----------------------------------
+ b_DEFINITION_OF_ZONESG = BLOC(condition="DEFINITION_OF_ZONES == True",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Rewrite subroutine def_zones"),
+ ),
+# -----------------------------------
+ ZONES_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier des zones avec sur chaque ligne
+numero de point numero de zone""",
+ ang = """Zones file, with on every line:
+point number zone number""",
+ ),
+ ),
+# -----------------------------------
+ ICE_PROCESSES = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ICE_PROCESSES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Donne le numero du processus des glaces, avec le numero defini
+sur la base multiplicative de nombres premiers (2, 3, 5, 7, 11, 13,
+...). Par example, 14 (2x7) rend actif les processus 2 et 7.
+Exception a la regle:
+si l''entier est 1, il n''y a pas de couplage;
+si l''entier est 0, tous les effets suivant sont inclus:
+ 2- BUDGET THERMIQUE,
+ 3-..""",
+ ang = """provides the ice process number with the number being defined
+on the basis of a multiplication of primary numbers (2, 3, 5,
+7, 11, 13, ...). For instance, 14 (2x7) activate processes 2
+and 7. Exception is made for:
+if the number is 1, there will be no ice processes included;
+if the number is 0, all processes are included, as follows:
+ 2- THERMIMAL BUDGET,
+ 3-..""",
+ ),
+ ),
+# -----------------------------------
+ METEOROLOGY = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ WIND = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Prise en compte ou non des effets du vent.""",
+ ang = """Determines whether the wind effects are to be taken into
+account or not.""",
+ ),
+# -----------------------------------
+ b_WINDG = BLOC(condition="WIND == True",
+# -----------------------------------
+# -----------------------------------
+ WIND_VELOCITY_ALONG_X = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Composante de la vitesse du vent suivant l''axe des x (m/s).""",
+ ang = """Wind velocity, component along x axis (m/s).""",
+ ),
+# -----------------------------------
+ WIND_VELOCITY_ALONG_Y = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Composante de la vitesse du vent suivant l''axe des y (m/s).""",
+ ang = """Wind velocity, component along y axis (m/s).""",
+ ),
+# -----------------------------------
+ THRESHOLD_DEPTH_FOR_WIND = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Retire la force due au vent dans les petites profondeurs""",
+ ang = """Wind is not taken into account for small depths""",
+ ),
+# -----------------------------------
+ COEFFICIENT_OF_WIND_INFLUENCE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe la valeur du coefficient d''entrainement du vent (cf.
+Note de principe).""",
+ ang = """Sets the value of the wind driving coefficient.
+Refer to principle note.""",
+ ),
+# -----------------------------------
+ OPTION_FOR_WIND = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["constant in time and space","variable in time given by formated file","variable in time and space given by formated file"],
+ defaut = "constant in time and space",
+ fr = """donne les options pour introduire le vent:
+ 1: constant en temps et en espace (donne par le mot cle
+ VITESSE ET DIRECTION DU VENT)
+ 2: variable en temps donne par fichier formate
+ 3: variable en temps et en espace donne par fichier formate
+ ou un fichier binaire serafin""",
+ ang = """gives option for managing the wind:
+ 1: constant in time and space, given by keyword SPEED AND
+ DIRECTION OF WIND
+ 2: variable in time and (constant in space), given by formated file
+ 3: variable in time and space , given by formated file or by
+ a binary serafin file""",
+ ),
+# -----------------------------------
+ b_OPTION_FOR_WINDG = BLOC(condition="OPTION_FOR_WIND == 'constant in time and space'",
+# -----------------------------------
+# -----------------------------------
+ SPEED_AND_DIRECTION_OF_WIND = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 2, max= 2,
+ defaut = [0.,0.],
+ fr = """Donne la vitesse et la direction (en degres de 0 a 360,
+0 etant y=0 et x=+inf) du vent lorsqu ils sont consant en temps et
+en espace (mot cle OPTION DU VENT = 1)""",
+ ang = """gives the speed and direction (degre (from 0 to 360),
+0 given y=0 anx x=+infinity) when they are constant in time and space
+(keyword OPTION FOR WIND = 1)""",
+ ),
+ ),
+# -----------------------------------
+ b_OPTION_FOR_WINDH = BLOC(condition="OPTION_FOR_WIND == 'variable in time given by formated file' or OPTION_FOR_WIND == 'variable in time and space given by formated file'",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Give the formatted file 3"),
+ ),
+ ),
+# -----------------------------------
+ AIR_PRESSURE = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Permet de decider si l''on prend ou non en compte l''influence
+d''un champ de pression.""",
+ ang = """Provided to decide whether the influence of
+an atmosphere field
+is taken into account or not.""",
+ ),
+# -----------------------------------
+ b_AIR_PRESSUREG = BLOC(condition="AIR_PRESSURE == True",
+# -----------------------------------
+# -----------------------------------
+ VALUE_OF_ATMOSPHERIC_PRESSURE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 100000.,
+ fr = """donne la valeur de la pression atmospherique lorsquelle est
+constante en temps et en espace""",
+ ang = """gives the value of atmospheric pressure when it is contant
+in time and space""",
+ ),
+ ),
+# -----------------------------------
+ RAIN_OR_EVAPORATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Pour ajouter un apport ou une perte d''eau en surface.
+Voir le mot-cle PLUIE OU EVAPORATION EN MM PAR JOUR""",
+ ang = """to add or remove water at the free surface. See the key-word
+RAIN OR EVAPORATION IN MM PER DAY""",
+ ),
+# -----------------------------------
+ b_RAIN_OR_EVAPORATIONG = BLOC(condition="RAIN_OR_EVAPORATION == True",
+# -----------------------------------
+# -----------------------------------
+ RAIN_OR_EVAPORATION_IN_MM_PER_DAY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.0,
+ fr = """Pour ajouter un apport ou une perte d''eau en surface""",
+ ang = """to add or remove water at the free surface""",
+ ),
+ ),
+# -----------------------------------
+ RAINFALL_RUNOFF_MODEL = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["No infiltration","CN runoff model"],
+ defaut = "No infiltration",
+ fr = """Option pour modele pluie-debit. Les options disponibles sont:
+ 0 : Pas d infiltration (fonction de base)
+ 1 : Modele CN (Curve Number du SCS)""",
+ ang = """Option for the rainfall-runoff model. Available options are:
+ 0 : No infiltration
+ 1 : CN runoff model (Curve Number method of the SCS)""",
+ ),
+# -----------------------------------
+ ANTECEDENT_MOISTURE_CONDITIONS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 2,
+ fr = """Donne les conditions d humidite precedant un episode de pluie pour
+le modele CN du SCS. Les options disponibles sont:
+ 1 : conditions precedentes seches
+ 2 : conditions precedentes normales
+ 3 : conditions prcedentes mouillees
+ce mot cle est uniquement utile pour le modele pluie-debit 1 (CN)""",
+ ang = """Gives the antecedent moisture conditions before a rainfall
+ event for the SCS CN runoff model. Available options are:
+ 1 : dry antecedent conditions
+ 2 : normal antecedent conditions
+ 3 : wet antecedent conditions
+This keyword is only usefull for runoff model 1 (SCS CN model)""",
+ ),
+# -----------------------------------
+ DURATION_OF_RAIN_OR_EVAPORATION_IN_HOURS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E6,
+ fr = """Donne la duree de la pluie en heure, par defaut pluie infinie""",
+ ang = """Gives the duration of the rain in hour,
+default value is infinite""",
+ ),
+# -----------------------------------
+ ASCII_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees en ascii contenant les informations
+atmospheriques variables en temps""",
+ ang = """Ascii data file containing the atmospheric data varying in
+time""",
+ ),
+# -----------------------------------
+ BINARY_ATMOSPHERIC_DATA_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de donnees code en binaire contenant les informations
+atmospheriques variables en temps et en espace sur le maillage""",
+ ang = """Binary-coded data file containing the atmospheric data varying in
+time and space on the mesh""",
+ ),
+# -----------------------------------
+ BINARY_ATMOSPHERIC_DATA_FILE_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du fichier binaire de donn\E9es atmospheriques.
+Les valeurs possibles sont :
+- SERAFIN : format standard simple precision pour Telemac;
+- SERAFIND: format standard double precision pour Telemac;
+- MED : format MED base sur HDF5""",
+ ang = """Binary atmospheric file format.
+Possible values are:
+- SERAFIN : classical single precision format in Telemac;
+- SERAFIND: classical double precision format in Telemac;
+- MED : MED format based on HDF5""",
+ ),
+# -----------------------------------
+ OPTION_FOR_INITIAL_ABSTRACTION_RATIO = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Donne le ratio entre pertes initiales IA et la retention potenti
+maximale S pour le modele pluie-debit SCS CN. Les options disponibles so
+ 1 : IA/S = 0.2 (methode standard)
+ 2 : IA/S = 0.05 (methode revisee, cf. Woodward, Hawkins et al. 2003. A
+ cette option les coefficients CN fournis en entree sont alors
+ automatiquement corriges, cf. manuel utilisateur).
+Ce mot cle est uniquement utile pour le modele pluie-d�bit 1 (CN)""",
+ ang = """Gives the ratio for Initial Abstraction to Maximal Potential
+Retention S for the SCS CN runoff model. Available options are:
+ 1 : IA/S = 0.2 (standard method)
+ 2 : IA/S = 0.05 (revised method, see Woodward, Hawkins et al. 2003. Wi
+ this option the CN values given in input are automatically convers
+ see user manual).
+This keyword is only useful for runoff model 1 (SCS CN model)""",
+ ),
+ ),
+# -----------------------------------
+ WAVE = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ WAVE_DRIVEN_CURRENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Active la prise en compte des courants de houle""",
+ ang = """Wave driven currents are taken into account.""",
+ ),
+# -----------------------------------
+ b_WAVE_DRIVEN_CURRENTSG = BLOC(condition="WAVE_DRIVEN_CURRENTS == True",
+# -----------------------------------
+# -----------------------------------
+ RECORD_NUMBER_IN_WAVE_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Numero d enregistrement dans le fichier des courants de houle""",
+ ang = """Record number to read in the wave driven currents file""",
+ ),
+ ),
+# -----------------------------------
+ WAVE_ENHANCED_FRICTION_FACTOR = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Active la prise en compte des interactions non-lineaires entre la
+houle et les courant pour le calcul du courant de houle (cf OConnor and
+Yoo, 1988, Coast Eng.12.)""",
+ ang = """Wave friction enhancement for the calculation of the wave generated
+longshore current (cf OConnor and Yoo, 1988, Coast Eng.12.)""",
+ ),
+ ),
+# -----------------------------------
+ ESTIMATION = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ PARAMETER_ESTIMATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['','FRICTION','FRICTION, STEADY'],
+ defaut = '',
+ fr = """Liste des parametres a estimer, choix : FROTTEMENT
+ ou FROTTEMENT, PERMANENT""",
+ ang = """List of parameter to be estimated, choice : FRICTION
+ or FRICTION, STEADY""",
+ ),
+# -----------------------------------
+ COST_FUNCTION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["Computed with h,u,v","Computed with c,u,v"],
+ defaut = "Computed with h,u,v",
+ fr = """1 : calculee sur h, u , v 2 : calculee avec c, u , v""",
+ ang = """1: computed with h, u , v 2: computed with c, u , v""",
+ ),
+# -----------------------------------
+ IDENTIFICATION_METHOD = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["list of tests","gradient simple","conj gradient","Lagrange interp."],
+ defaut = "gradient simple",
+ fr = """0 : plan d''experience
+1 : gradient simple
+2 : gradient conj.
+3 : interp. de Lagrange""",
+ ang = """0 : list of tests
+1: gradient
+2 : conj. gradient
+3 : lagrange interp.""",
+ ),
+# -----------------------------------
+ TOLERANCES_FOR_IDENTIFICATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 4, max= 4,
+ defaut = [1.E-3,1.E-3,1.E-3,1.E-4],
+ fr = """4 nombres : precision absolue sur H, U, V,
+ et precision relative sur la fonction cout""",
+ ang = """4 numbers: absolute precision on H, U V,
+ and relative precision on the cost function""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_ITERATIONS_FOR_IDENTIFICATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 20,
+ fr = """chaque iteration comprend au moins un
+ calcul direct et un calcul adjoint""",
+ ang = """every iteration implies at least a direct and
+ an adjoint computation""",
+ ),
+ ),
+# -----------------------------------
+ SOURCES = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ ABSCISSAE_OF_SOURCES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Valeurs des abscisses des sources de debit et de traceur.""",
+ ang = """abscissae of sources of flowrate and/or tracer""",
+ ),
+# -----------------------------------
+ ORDINATES_OF_SOURCES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Valeurs des ordonnees des sources de debit et de traceur.""",
+ ang = """ordinates of sources of flowrate and/or tracer""",
+ ),
+# -----------------------------------
+ WATER_DISCHARGE_OF_SOURCES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Valeurs des debits des sources.""",
+ ang = """values of water discharge of sources""",
+ ),
+# -----------------------------------
+ VELOCITIES_OF_THE_SOURCES_ALONG_X = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Vitesses du courant a chacune des sources. Si elles ne sont pas
+donnees, on considere que la vitesse est celle du courant""",
+ ang = """Velocities at the sources. If they are not given, the velocity
+of the flow at this location is taken""",
+ ),
+# -----------------------------------
+ VELOCITIES_OF_THE_SOURCES_ALONG_Y = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Vitesses du courant a chacune des sources""",
+ ang = """Velocities at the sources""",
+ ),
+# -----------------------------------
+ TYPE_OF_SOURCES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["Normal","Dirac"],
+ defaut = "Normal",
+ fr = """1: Source portee par une base elements finis
+2: Source portee par une fonction de Dirac""",
+ ang = """1: Source term multiplied by a finite element basis
+2: Source term multiplied by a Dirac function""",
+ ),
+# -----------------------------------
+ SOURCES_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier contenant les informations variables
+en temps des sources""",
+ ang = """Name of the file containing time-dependent
+information on sources""",
+ ),
+# -----------------------------------
+ GLOBAL_NUMBERS_OF_SOURCE_NODES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ fr = """ Numeros globaux des noeuds du maillage sur lequels sont affectes des
+points source""",
+ ang = """ Global numbers of nodes in the mesh that correspond to source point
+locations""",
+ ),
+ ),
+# -----------------------------------
+ WATER_QUALITY_INFO = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ WATER_QUALITY_PROCESS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Donne le numero du processus de qualite d''eau, defini
+comme une combinaison multiplicative de nombres premiers
+(2,3,5,7,11 et 13) avec les cas particuliers 0 et 1 :
+\begin{itemize}
+\item 0 : tous ;
+\item 1 : rien ;
+\item 2 : O2 ;
+\item 3 : BIOMASS ;
+\item 5 : EUTRO ;
+\item 7 : MICROPOL ;
+\item 11 : THERMIC ;
+\item 13 : AED2.
+\item 17 : Loi de degradation
+\item 19 : Court-cicuit temporaire pour les glaces
+\end{itemize}
+Example: 110 = 2x5x11 activera O2, EUTRO et THERMIC ensemble.
+On notera que AED2, pour l instant, n est pas disponible en 2D""",
+ ang = """Gives the water quality process number, defined as
+a multiplicative combination of prime numbers (2,3,5,7,11
+ et 13) with 0 and 1 having a special role:
+\begin{itemize}
+\item 0: all,
+\item 1: none,
+\item 2: O2,
+\item 3: BIOMASS,
+\item 5: EUTRO,
+\item 7: MICROPOL,
+\item 11: THERMIC,
+\item 13: AED2.
+\item 17: Degradation law
+\item 19: Ghost process for ice modelling
+\end{itemize}
+Example: 110 = 2x5x11 activate O2, EUTRO and THERMIC together.
+It is noted that AED2 is not available in 2D, for the time being.""",
+ ),
+ ),
+# -----------------------------------
+ ADVANCED_PHY = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ WATER_DENSITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1000.,
+ fr = """Fixe la valeur de la masse volumique de l''eau.""",
+ ang = """set the value of water density""",
+ ),
+# -----------------------------------
+ GRAVITY_ACCELERATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 9.81,
+ fr = """Fixe la valeur de l''acceleration de la pesanteur.""",
+ ang = """Set the value of the acceleration due to gravity.""",
+ ),
+# -----------------------------------
+ VERTICAL_STRUCTURES = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Prise en compte de la force de trainee de structures verticales
+(il faut alors remplir la subroutine DRAGFO)""",
+ ang = """drag forces from vertical structures are taken into account.
+(subroutine DRAGFO must then be implemented)""",
+ ),
+# -----------------------------------
+ b_VERTICAL_STRUCTURESG = BLOC(condition="VERTICAL_STRUCTURES == True",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Fill the subroutine DRAGFO"),
+ ),
+ ),
+ ),
+# -----------------------------------
+ NUMERICAL_PARAMETERS_HYDRO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ EQUATIONS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SAINT-VENANT FE','SAINT-VENANT FV','BOUSSINESQ'],
+ defaut = 'SAINT-VENANT FE',
+ fr = """CHOIX DES EQUATIONS A RESOUDRE : SAINT-VENANT ELEMENTS FINIS,
+SAINT-VENANT VOLUMES FINIS OU BOUSSINESQ 20 CARACTERES""",
+ ang = """CHOICE OF EQUATIONS TO SOLVE : SAINT-VENANT FINITE ELEMENTS,
+SAINT-VENANT FINITE VOLUMES OR BOUSSINESQ 20 CHARACTERS""",
+ ),
+# -----------------------------------
+ b_EQUATIONSG = BLOC(condition="EQUATIONS == 'SAINT-VENANT FV'",
+# -----------------------------------
+# -----------------------------------
+ FINITE_VOLUME_SCHEME = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["Roe scheme","kinetic order 1","kinetic order 2","Zokagoa scheme order 1","Tchamen scheme order 1","HLLC scheme order 1","WAF scheme order 2"],
+ defaut = "kinetic order 1",
+ fr = """0 : schema de Roe 1 : cinetique ordre 1 2 : cinetique ordre 2
+3 : schema de Zokagoa 4 : schema de Tchamen 5 : HLLC ordre 1
+6 : WAF ordre 2""",
+ ang = """0: Roe scheme 1: kinetic order 1 2: kinetic order 2
+3 : Zokagoa scheme 4 : Tchamen scheme 5 : HLLC order 1
+6 : WAF order 2""",
+ ),
+ ),
+# -----------------------------------
+ TREATMENT_OF_THE_LINEAR_SYSTEM = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["coupled","Wave equation"],
+ defaut = "coupled",
+ fr = """1 : Traitement couple 2 : equation d onde""",
+ ang = """1 : Coupled 2 : wave equation""",
+ ),
+ ),
+# -----------------------------------
+ FLUID = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ CORIOLIS_EFFECT = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ CORIOLIS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Prise en compte ou non de la force de Coriolis.""",
+ ang = """The Coriolis force is taken into account or ignored.""",
+ ),
+# -----------------------------------
+ CORIOLIS_COEFFICIENT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe la valeur du coefficient de la force de Coriolis.
+Celui-ci doit etre calcule en fonction de la latitude l par la formule
+ FCOR = 2w sin(l) , w etant la vitesse de rotation de la terre.
+ w = 7.2921 10-5 rad/s
+Les composantes de la force de Coriolis sont alors :
+ FU = FCOR x V
+ FV = - FCOR x U""",
+ ang = """Sets the value of the Coriolis force coefficient, in cartesian
+coordinates.
+This coefficient, denoted FCOR in the code, should be equal to
+2 w sin(l)d where w denotes the earth angular speed of rotation
+and l the latitude. w = 7.27 10-5 rad/sec
+The Coriolis force components are then:
+FU = FCOR x V,
+FV = -FCOR x U
+In spherical coordinates, the latitudes are known""",
+ ),
+ ),
+# -----------------------------------
+ TSUNAMI = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ OPTION_FOR_TSUNAMI_GENERATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["No Tsunami","Tsunami generated on the basis of the Okada model 1992"],
+ defaut = "No Tsunami",
+ fr = """""",
+ ang = """""",
+ ),
+# -----------------------------------
+ PHYSICAL_CHARACTERISTICS_OF_THE_TSUNAMI = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=10, max=10,
+ defaut = [100.,210000.,75000.,13.6,81.,41.,110.,0.,0.,3.],
+ fr = """""",
+ ang = """""",
+ ),
+ ),
+# -----------------------------------
+ SECONDARY_CURRENTS_INFO = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ SECONDARY_CURRENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Pour prendre en compte les courants secondaires""",
+ ang = """Using the parametrisation for secondary currents""",
+ ),
+# -----------------------------------
+ b_SECONDARY_CURRENTSG = BLOC(condition="SECONDARY_CURRENTS == True",
+# -----------------------------------
+# -----------------------------------
+ PRODUCTION_COEFFICIENT_FOR_SECONDARY_CURRENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 7.071,
+ fr = """Une constante dans les termes de creation de Omega""",
+ ang = """A constant in the production terms of Omega""",
+ ),
+# -----------------------------------
+ DISSIPATION_COEFFICIENT_FOR_SECONDARY_CURRENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 5.E-1,
+ fr = """Coefficient de dissipation de Omega""",
+ ang = """Coefficient of dissipation term of Omega""",
+ ),
+ ),
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+GENERAL_PARAMETERS = PROC(nom= "GENERAL_PARAMETERS",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ DEBUGGER = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Pour imprimer la sequence des appels, mettre 1""",
+ ang = """If 1, calls of subroutines will be printed in the listing""",
+ ),
+# -----------------------------------
+ TIME = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ TIME_STEP = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Definit le pas de temps en secondes. Remarque : Pour une bonne
+precision; il est souhaitable de choisir le pas de temps de telle sorte
+que le nombre de Courant de propagation soit inferieur a 2 ; voir 3.
+Ceci peut etre realisable en hydraulique fluviale ; mais ne l''est
+pratiquement jamais en hydraulique maritime ou l''on peut atteindre des
+valeurs de 50.""",
+ ang = """Specifies the time step in seconds.""",
+ ),
+# -----------------------------------
+ NUMBER_OF_TIME_STEPS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """ Definit le nombre de pas de temps effectues lors de l''execution du
+code.""",
+ ang = """ Specifies the number of time steps performed when running the code.""",
+ ),
+# -----------------------------------
+ DURATION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Duree de la simulation. alternative au parametre nombre de pas
+de temps. On en deduit le nombre de pas de temps en prenant l''entier le
+ plus proche de (duree du calcul/pas de temps). Si le nombre de pas de
+temps est aussi donne, on prend la plus grande valeur""",
+ ang = """Duration of simulation. May be used instead of the parameter
+NUMBER OF TIME STEPS. The nearest integer to (duration/time step) is
+taken.
+If NUMBER OF TIME STEPS is also given, the greater value is taken""",
+ ),
+# -----------------------------------
+ ORIGINAL_DATE_OF_TIME = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min= 3, max= 3,
+ defaut = [1900,1,1],
+ fr = """Permet de fixer la date d''origine des temps du modele lors
+de la prise en compte de la force generatrice de la maree.""",
+ ang = """Give the date of the time origin of the model when taking into
+account the tide generating force.""",
+ ),
+# -----------------------------------
+ ORIGINAL_HOUR_OF_TIME = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min= 3, max= 3,
+ defaut = [0,0,0],
+ fr = """ Permet de fixer l''heure d''origine des temps du modele lors de la
+prise en compte de la force generatrice de la maree.""",
+ ang = """ Give the time of the time origin of the model when taking into account
+of the tide generator force.""",
+ ),
+# -----------------------------------
+ STOP_IF_A_STEADY_STATE_IS_REACHED = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """A UTILISER AVEC LE MOT-CLE : CRITERES D''ARRET""",
+ ang = """TO BE USED WITH THE KEY-WORD: STOP CRITERIA""",
+ ),
+# -----------------------------------
+ b_STOP_IF_A_STEADY_STATE_IS_REACHEDG = BLOC(condition="STOP_IF_A_STEADY_STATE_IS_REACHED == True",
+# -----------------------------------
+# -----------------------------------
+ STOP_CRITERIA = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 3, max= 3,
+ defaut = [1.E-4,1.E-4,1.E-4],
+ fr = """Criteres d''arret pour un ecoulement permanent
+ces coefficients sont respectivement appliques a
+ 1) U et V
+ 2) H
+ 3) T
+A utiliser avec le mot-cle : ARRET SI UN ETAT PERMANENT EST ATTEINT""",
+ ang = """Stop criteria for a steady state
+These coefficients are applied respectively to
+ 1) U and V
+ 2) H
+ 3) T
+To be used with the key-word: STOP IF A STEADY STATE IS REACHED""",
+ ),
+ ),
+# -----------------------------------
+ CONTROL_OF_LIMITS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Utiliser avec le mot-cle : valeurs limites, le programme
+s''arrete si les limites sur u,v,h ou t sont depassees""",
+ ang = """Use with the key-word : limit values,
+the program is stopped if
+the limits on u,v,h, or t are trespassed""",
+ ),
+# -----------------------------------
+ b_CONTROL_OF_LIMITSG = BLOC(condition="CONTROL_OF_LIMITS == True",
+# -----------------------------------
+# -----------------------------------
+ LIMIT_VALUES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 8, max= 8,
+ defaut = [-1000.,9000.,-1000.,1000.,-1000.,1000.,-1000.,1000.],
+ fr = """Utilise avec le mot-cle CONTROLE DES LIMITES
+ valeurs mini et maxi acceptables pour H,U,V et T dans l''ordre
+ suivant : min(H) max(H) min(U) max(U)
+ min(V) max(V) min(T) max(T)""",
+ ang = """To be used with the key-word CONTROL OF LIMITS
+ min and max acceptable values for H,U,V et T in the following
+ order : min(H) max(H) min(U) max(U)
+ min(V) max(V) min(T) max(T)""",
+ ),
+ ),
+# -----------------------------------
+ VARIABLE_TIME_STEP = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """ Pas de temps variable pour avoir un nombre de courant souhaite""",
+ ang = """ Variable time-step to get a given Courant number""",
+ ),
+# -----------------------------------
+ b_VARIABLE_TIME_STEPG = BLOC(condition="VARIABLE_TIME_STEP == True",
+# -----------------------------------
+# -----------------------------------
+ DESIRED_COURANT_NUMBER = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Nombre de Courant souhaite en cas de pas de temps variable""",
+ ang = """Desired Courant number when VARIABLE TIME-STEP is set to YES""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ LOCATION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ORIGIN_COORDINATES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min= 2, max= 2,
+ defaut = [0,0],
+ fr = """Valeur en metres, utilise
+pour eviter les trops grands nombres, transmis
+dans le format Selafin mais pas d''autre traitement pour l''instant""",
+ ang = """Value in metres, used to avoid large real numbers,
+added in Selafin format, but so far no other treatment""",
+ ),
+# -----------------------------------
+ SPHERICAL_COORDINATES = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Choix des coordonnees spheriques pour la realisation du calcul
+( pour les grands domaines de calcul).
+Attention : cette option est etroitement liee au
+maillage qui doit avoir
+ete saisi sur une carte marine en projection de Mercator.
+Il faut de plus relever sur la carte la LATITUDE DU POINT ORIGINE
+(autre mot-cle) qui correspond dans le maillage a l''ordonnee y = 0.""",
+ ang = """Selection of spherical coordinates to perform the computation
+(for large computation domains).
+Warning: this option is closely related to the mesh that should have
+been entered onto a nautical chart drawn as per Mercator projection
+The LATITUDE OF ORIGIN POINT (another keyword), which corresponds to
+ordinate y=0 in the mesh, must moreover be given.""",
+ ),
+# -----------------------------------
+ b_SPHERICAL_COORDINATESG = BLOC(condition="SPHERICAL_COORDINATES == True",
+# -----------------------------------
+# -----------------------------------
+ LATITUDE_OF_ORIGIN_POINT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 48.,
+ fr = """Determine l''origine utilisee pour le calcul de latitudes
+lorsque l''on effectue un calcul en coordonnees spheriques.""",
+ ang = """Determines the origin used for computing latitudes when
+a computation is made in spherical coordinates.
+this latitude is in particular used to compute the Coriolis force.
+In cartesian coordinates, Coriolis coefficient is considered constant.""",
+ ),
+ ),
+# -----------------------------------
+ LONGITUDE_OF_ORIGIN_POINT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe la valeur de la longitude du point origine du modele,
+lors de l''utilisation de la force generatrice de la maree.""",
+ ang = """Give the value of the longitude of the origin point
+of the model, when taking into account of the tide generator force.""",
+ ),
+# -----------------------------------
+ NORTH = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Direction du nord en degres, par rapport a l''axe des y
+dans le sens trigonometrique. Notation decimale 10.5 signifie 10 degres
+ et trente minutes.""",
+ ang = """Angle of the North with the y axis, in degrees. 10.5 means
+10 degrees and 30 minutes.""",
+ ),
+# -----------------------------------
+ SPATIAL_PROJECTION_TYPE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["CARTESIAN, NOT GEOREFERENCED","MERCATOR","LATITUDE LONGITUDE"],
+ defaut = "CARTESIAN, NOT GEOREFERENCED",
+ fr = """Option 2 ou 3 obligatoire pour les coordonnees spheriques
+Option 3 : latitude et longitude en degres !""",
+ ang = """Option 2 or 3 mandatory for spherical coordinates
+Option 3: latitude and longitude in degrees!""",
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+NUMERICAL_PARAMETERS = PROC(nom= "NUMERICAL_PARAMETERS",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ SOLVER_INFO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ SOLVER = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["conjugate gradient on a normal equation","conjugate gradient","conjugate residual","minimum error","cgstab","gmres","direct"],
+ defaut = "conjugate gradient on a normal equation",
+ fr = """Permet de choisir le solveur utilise pour la resolution de
+l''etape de propagation. Toutes les methodes proposees actuellement
+s''apparentent au Gradient Conjugue. Ce sont :
+ 1 : gradient conjugue
+ 2 : residu conjugue
+ 3 : gradient conjugue sur equation normale
+ 4 : erreur minimale
+ 5 : gradient conjugue carre (non programme)
+ 6 : gradient conjugue carre stabilise (cgstab)
+ 7 : gmres (voir aussi option du solveur)
+ 8 : direct""",
+ ang = """Makes it possible to select the solver used for solving the
+propagation step. All the currently available methods are variations
+of the Conjugate Gradient method. They are as follows:
+1: conjugate gradient
+2: conjugate residual
+3: conjugate gradient on a normal equation
+4: minimum error
+5: conjugate gradient squared (not implemented)
+6: conjugate gradient squared stabilised (cgstab)
+7: gmres (see option for solver)
+8: direct""",
+ ),
+# -----------------------------------
+ b_SOLVERG = BLOC(condition="SOLVER == 'gmres'",
+# -----------------------------------
+# -----------------------------------
+ SOLVER_OPTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 2,
+ fr = """si le solveur est GMRES (7) le mot cle est la dimension de
+l''espace de KRYLOV (valeurs conseillees entre 2 et 15)""",
+ ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE
+TRY VALUES BETWEEN 2 AND 15""",
+ ),
+ ),
+# -----------------------------------
+ SOLVER_ACCURACY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-4,
+ fr = """Precision demandee pour la resolution de l''etape de propagation
+ (cf. Note de principe).""",
+ ang = """Required accuracy for solving the propagation step
+(refer to Principle note).""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_ITERATIONS_FOR_SOLVER = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 100,
+ fr = """Les algorithmes utilises pour la resolution de l''etape de
+propagation etant iteratifs; il est necessaire de limiter le nombre
+d''iterations autorisees.
+Remarque : un maximum de 40 iterations par pas de temps semble
+raisonnable.""",
+ ang = """Since the algorithms used for solving the propagation step are
+iterative, the allowed number of iterations should be limited.
+NOTE: a maximum number of 40 iterations per time step seems to be
+reasonable.""",
+ ),
+# -----------------------------------
+ CONTINUITY_CORRECTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Corrige les vitesses sur les points avec hauteur imposee ou
+l''equation de continuite n''a pas ete resolue""",
+ ang = """Correction of the velocities on points with a prescribed
+elevation, where the continuity equation has not been solved""",
+ ),
+# -----------------------------------
+ PRECONDITIONING = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["diagonal","no preconditioning","block-diagonal (4-9 matrices)","absolute value of diagonal","crout","gauss-seidel","diagonal and crout"],
+ defaut = "diagonal",
+ fr = """Permet de preconditionner le systeme de l''etape de propagation
+afin d''accelerer la convergence lors de sa resolution.
+ - 0 : pas de preconditionnement;
+ - 2 : preconditionnement diagonal.
+ - 3 : preconditionnement diagonal-bloc
+ - 7 : preconditionnement de Crout par element ou segment
+ -11 : preconditionnement de Gauss-Seidel par element ou segment
+Certains preconditionnements sont cumulables
+(les diagonaux 2 ou 3 avec les autres)
+Pour cette raison on ne retient que les nombres premiers pour
+designer les preconditionnements. Si l''on souhaite en cumuler
+plusieurs on formera le produit des options correspondantes.""",
+ ang = """Choice of the preconditioning in the propagation step linear
+system that the convergence is speeded up when it is being solved.
+ 0: no preconditioning
+ 2: diagonal preconditioning
+ 3: block-diagonal preconditioning (systemes a 4 ou 9 matrices)
+ 7: Crout''s preconditioning per element or segment
+11: Gauss-Seidel''s preconditioning per element or segment
+Some operations (either 2 or 3 diagonal preconditioning) can be
+performed concurrently with the others.
+Only prime numbers are therefore kept to denote the preconditioning
+operations. When several of them are to be performed concurrently,
+the product of relevant options shall be made.""",
+ ),
+# -----------------------------------
+ C_U_PRECONDITIONING = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Changement de variable de H en C dans le systeme lineaire final""",
+ ang = """Change of variable from H to C in the final linear system""",
+ ),
+# -----------------------------------
+ FINITE_ELEMENT_ASSEMBLY = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["normal","Integer I8","Compensated"],
+ defaut = "normal",
+ fr = """1 : normal 2 : avec des entiers I8 3:compense""",
+ ang = """1: normal 2: with I8 integers 3:compensation""",
+ ),
+ ),
+# -----------------------------------
+ DISCRETISATIONS_IMPLICITATION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ IMPLICITATION_FOR_DEPTH = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.55,
+ fr = """Fixe la valeur du coefficient d''implicitation sur C dans l''etape de
+propagation (cf. Note de principe). Les valeurs inferieures a 0.5
+donnent un schema instable.""",
+ ang = """Sets the value of the implicitation coefficient for C (the celerity of
+waves) in the propagation step (refer to principle note). Values below
+0.5 result in an unstable scheme.""",
+ ),
+# -----------------------------------
+ IMPLICITATION_FOR_VELOCITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.55,
+ fr = """Fixe la valeur du coefficient d''implicitation sur la vitesse dans
+l''etape de propagation (cf. Note de principe). Les valeurs inferieures
+a 0.5 donnent un schema instable.""",
+ ang = """Sets the value of the implicitation coefficient for velocity in the
+propagation step (refer to principle note). Values below 0.5 result in
+an unstable condition.""",
+ ),
+# -----------------------------------
+ DISCRETIZATIONS_IN_SPACE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', max='**',
+ into = ["linear","quasi-bubble","quadratic"],
+ defaut = ["linear","linear","linear","linear"],
+ fr = """ Choix de la discretisation pour chaque variable ces coefficients sont
+respectivement appliques a 1) U et V 2) H 3) T 4) K ET EPSILON (NON
+PROGRAMME) 11 : lineaire 12 : quasi-bulle 13 : quadratique""",
+ ang = """ Choice of space discretisation for every variable These coefficients
+are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON (NOT
+IMPLEMENTED) 11: linear 12: quasi-bubble 13: quadratic""",
+ ),
+# -----------------------------------
+ b_DISCRETIZATIONS_IN_SPACEG = BLOC(condition="DISCRETIZATIONS_IN_SPACE != None",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Choice of space discretisation for every variable. These coefficients are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON"),
+ ),
+ ),
+# -----------------------------------
+ PROPAGATION_INFO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ PROPAGATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la propagation de la vitesse et de la
+hauteur d''eau.
+La diffusion etant contenue dans cette etape sera supprimee aussi.""",
+ ang = """Determines whether the propagation step is taken into account
+or not.
+The diffusion being included in that step will be deleted as well.""",
+ ),
+# -----------------------------------
+ b_PROPAGATIONG = BLOC(condition="PROPAGATION == True",
+# -----------------------------------
+# -----------------------------------
+ MEAN_DEPTH_FOR_LINEARIZATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe la hauteur d''eau autour de laquelle s''effectue la
+linearisation lorsque l''option PROPAGATION LINEARISEE est choisie.""",
+ ang = """Sets the water depth about which the linearization is made
+when the LINEARIZED PROPAGATION OPTION is selected.""",
+ ),
+# -----------------------------------
+ INITIAL_GUESS_FOR_U = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["zero","previous","extrapolation"],
+ defaut = "previous",
+ fr = """Tir initial du solveur de l''etape de propagation.
+Offre la possibilite de modifier la valeur initiale de U, a chaque
+iteration, dans l''etape de propagation en utilisant les valeurs
+finales de cette variable aux pas de temps precedents. Ceci peut
+permettre d''accelerer la vitesse de convergence lors de la resolution
+du systeme. Trois possibilites sont offertes :
+ 0 : U = 0
+ 1 : U = U(n)
+ 2 : U = 2 U(n)- U(n-1) (extrapolation)""",
+ ang = """Initial guess for the solver in the propagation step.
+Makes it possible to modify the initial value of U, upon each
+iteration in the propagation step, by using the ultimate values this
+variable had in the earlier time steps. Thus, the convergence can be
+speeded up when the system is being solved. 3 options are available:
+ 0 : U = 0
+ 1 : U = U(n)
+ 2 : U = 2 U(n)- U(n-1) (extrapolation)""",
+ ),
+ ),
+# -----------------------------------
+ INITIAL_GUESS_FOR_H = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["zero","previous","extrapolation"],
+ defaut = "previous",
+ fr = """ Tir initial du solveur de l''etape de propagation. Offre la
+possibilite de modifier la valeur initiale de DH, accroissement de H, a
+chaque iteration, dans l''etape de propagation en utilisant les valeurs
+finales de cette variable aux pas de temps precedents. Ceci peut
+permettre d''accelerer la vitesse de convergence lors de la resolution
+du systeme. Trois possibilites sont offertes :
+ 0 : DH = 0.
+ 1 : DH = DHn (valeur finale de DH au pas de temps precedent),
+ 2 : DH = 2DHn - DHn-1 (extrapolation).""",
+ ang = """Initial guess for the solver in the propagation step.
+Makes it possible to modify the initial value of C, upon each
+iteration in the propagation step, by using the ultimate values this
+variable had in the earlier time steps. Thus, the convergence can be
+speeded up when the system is being solved. 3 options are available:
+ 0: DH = 0
+ 1: DH = DHn (ultimate DH value in the next previous time step)
+ 2: DH = 2DHn - DHn-1 (extrapolation)""",
+ ),
+# -----------------------------------
+ LINEARIZED_PROPAGATION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Permet de lineariser l''etape de propagation;
+par exemple lors de la realisation de cas tests
+pour lesquels on dispose
+d''une solution analytique dans le cas linearise.""",
+ ang = """Provided for linearizing the propagation step, e.g. when
+performing test-cases for which an analytical
+solution in the linearized
+case is available.""",
+ ),
+ ),
+# -----------------------------------
+ ADVECTION_INFO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ADVECTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non des termes de convection.
+En cas de reponse positive;
+on peut encore supprimer certains termes de convection avec
+les mots-cles CONVECTION DE ...""",
+ ang = """Are the advection terms taken into account or not?
+If YES, some advection terms can still be deleted using the keywords
+-ADVECTION OF ..-""",
+ ),
+# -----------------------------------
+ ADVECTION_OF_H = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la convection de H.
+Il s''agit en fait dans la version 2.0 de la convection de C""",
+ ang = """The advection of H is taken into account or ignored.
+Actually, in version 2.0, the matter is about C advection.""",
+ ),
+# -----------------------------------
+ ADVECTION_OF_U_AND_V = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la convection de U et V.""",
+ ang = """The advection of U and V is taken into account or ignored.""",
+ ),
+# -----------------------------------
+ b_ADVECTION_OF_U_AND_VG = BLOC(condition="ADVECTION_OF_U_AND_V == True",
+# -----------------------------------
+# -----------------------------------
+ SCHEME_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","N-SCHEME FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME"],
+ defaut = "CHARACTERISTICS",
+ fr = """Choix du schema de convection pour les vitesses,
+remplace FORME DE LA CONVECTION""",
+ ang = """Choice of the advection scheme for the velocities,
+replaces TYPE OF ADVECTION""",
+ ),
+ ),
+# -----------------------------------
+ TYPE_OF_ADVECTION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', max='**',
+ into = ["CHARACTERISTICS","SUPG","CONSERVATIVE N-SCHEME LP","CONSERVATIVE N-SCHEME","CONSERVATIVE PSI-SCHEME","EDGE-BASED N-SCHEME LP","EDGE-BASED N-SCHEME","ERIA SCHEME"],
+ defaut = ["CHARACTERISTICS","CONSERVATIVE PSI-SCHEME","CHARACTERISTICS","CHARACTERISTICS"],
+ fr = """Choix du schema de convection pour chaque variable
+ces coefficients sont respectivement appliques a
+1) U et V 2) H 3) T 4) K ET EPSILON
+1 : caracteristiques sur h
+2 : SUPG
+3 : Schema N conservatif
+4 : Schema N conservatif
+5 : Schema PSI conservatif
+13 : Schema N par segment
+14 : Schema N par segment
+15 : Schema ERIA
+Second integer must be 5""",
+ ang = """Choice of advection schemes for every variable
+These coefficients are applied respectively to
+1) U et V 2) H 3) T 4) K and EPSILON
+1: characteristics
+2: SUPG
+3: Conservative N-scheme
+4: Conservative N-scheme
+5: Conservative PSI-scheme
+13 : Edge-based N-scheme
+14 : Edge-based N-scheme
+15 : ERIA scheme
+Second integer must be 5""",
+ ),
+# -----------------------------------
+ b_TYPE_OF_ADVECTIONG = BLOC(condition="TYPE_OF_ADVECTION != None",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Choice of space discretisation for every variable. These coefficients are applied respectively to 1) U and V 2) H 3) T 4) K and EPSILON"),
+ ),
+# -----------------------------------
+ OPTION_FOR_CHARACTERISTICS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["strong","weak"],
+ defaut = "strong",
+ fr = """1: forme forte 2: forme faible""",
+ ang = """1: strong form 2: weak form""",
+ ),
+# -----------------------------------
+ SUPG_OPTION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ defaut = [2,2,2,2],
+ fr = """0:pas de decentrement SUPG 1:SUPG classique 2:SUPG modifiee
+ces coefficients sont respectivement appliques a
+1) U et V 2) H 3) T 4) K ET EPSILON""",
+ ang = """0:no upwinding 1: classical SUPG 2:modified SUPG
+These coefficients are applied respectively to
+1) U et V 2) H 3) T 4) K and EPSILON""",
+ ),
+# -----------------------------------
+ NUMBER_OF_GAUSS_POINTS_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 3,
+ fr = """Voir les release notes 6.3""",
+ ang = """See release notes 6.3""",
+ ),
+# -----------------------------------
+ MASS_LUMPING_FOR_WEAK_CHARACTERISTICS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Applique a la matrice de masse""",
+ ang = """To be applied to the mass matrix""",
+ ),
+# -----------------------------------
+ b_MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMESF = BLOC(condition="(ADVECTION_OF_TRACERS == True and SCHEME_FOR_ADVECTION_OF_TRACERS == 'EDGE-BASED N-SCHEME') or (ADVECTION_OF_K_AND_EPSILON == True and SCHEME_FOR_ADVECTION_OF_K_EPSILON == 'EDGE-BASED N-SCHEME') or (ADVECTION_OF_U_AND_V == True and SCHEME_FOR_ADVECTION_OF_VELOCITIES == 'EDGE-BASED N-SCHEME')",
+# -----------------------------------
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_ITERATIONS_FOR_ADVECTION_SCHEMES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 10,
+ fr = """Seulement pour schemes 13 et 14""",
+ ang = """Only for schemes 13 and 14""",
+ ),
+# -----------------------------------
+ UPWIND_COEFFICIENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 4, max= 4,
+ defaut = [1.,1.,1.,1],
+ fr = """Coefficients utilises par la methode S.U.P.G.
+ces coefficients sont respectivement appliques a
+ 1) U et V
+ 2) H ou C
+ 3) T
+ 4) K ET EPSILON""",
+ ang = """Upwind coefficients used by the S.U.P.G. method
+These coefficients are applied respectively to
+ 1) U and V
+ 2) H or C
+ 3) T
+ 4) K and epsilon""",
+ ),
+# -----------------------------------
+ MASS_LUMPING_ON_H = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """TELEMAC offre la possibilite d''effectuer du mass-lumping
+sur H ou U.
+Ceci revient a ramener tout ou partie (suivant la valeur de ce
+coefficient) des matrices AM1 (h) ou AM2 (U) et AM3 (V) sur
+leur diagonale.
+Cette technique permet d''accelerer le code dans des proportions tres
+importantes et de le rendre egalement beaucoup plus stable. Cependant
+les solutions obtenues se trouvent lissees.
+Ce parametre fixe le taux de mass-lumping effectue sur h.""",
+ ang = """TELEMAC provides an opportunity to carry out mass-lumping
+either on C,H or on the velocity.
+This is equivalent to bringing the matrices AM1 (h) or AM2 (U) and
+AM3 (V) wholly or partly, back onto their diagonal.
+Thanks to that technique, the code can be speeded up to a quite
+significant extent and it can also be made much more stable. The
+resulting solutions, however, become artificially smoothed.
+This parameter sets the extent of mass-lumping that is performed on h.""",
+ ),
+# -----------------------------------
+ MASS_LUMPING_ON_VELOCITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe le taux de mass-lumping effectue sur la vitesse.""",
+ ang = """Sets the amount of mass-lumping that is performed on the velocity.""",
+ ),
+# -----------------------------------
+ SCHEME_OPTION_FOR_ADVECTION_OF_VELOCITIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Si present remplace et a priorite sur :
+OPTION POUR LES CARACTERISTIQUES
+OPTION DE SUPG
+Si schema PSI ou N : 1=explicite 2=predicteur-correcteur
+3=predicteur-correcteur deuxieme ordre en temps
+4=implicite""",
+ ang = """If present replaces and has priority over:
+OPTION FOR CHARACTERISTICS
+SUPG OPTION
+if N or PSI SCHEME: 1=explicit 2=predictor-corrector
+3= predictor-corrector second-order in time 4= implicit""",
+ ),
+# -----------------------------------
+ FREE_SURFACE_GRADIENT_COMPATIBILITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Des valeurs inferieures a 1 suppriment les oscillations
+parasites""",
+ ang = """Values less than 1 suppress spurious oscillations""",
+ ),
+# -----------------------------------
+ NUMBER_OF_SUB_ITERATIONS_FOR_NON_LINEARITIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Permet de reactualiser, pour un meme pas de temps, les champs
+convecteur et propagateur au cours de plusieurs sous-iterations. A la
+premiere sous-iteration, ces champs sont donnes par C et le champ de
+vitesses au pas de temps precedent. Aux iterations suivantes, ils sont
+pris egaux au champ de vitesse obtenu a la fin de la sous-iteration
+precedente. Cette technique permet d''ameliorer la prise en compte des
+non linearites.""",
+ ang = """Used for updating, within one time step, the advection and
+propagation field.
+upon the first sub-iteration, these fields are given by
+C and the velocity field in the previous time step. At subsequent
+iterations, the results of the previous sub-iteration is used to
+update the advection and propagation field.
+The non-linearities can be taken into account through this technique.""",
+ ),
+# -----------------------------------
+ b_TREATMENT_OF_FLUXES_AT_THE_BOUNDARIESF = BLOC(condition="(ADVECTION_OF_TRACERS == True and SCHEME_FOR_ADVECTION_OF_TRACERS in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME']) or (ADVECTION_OF_K_AND_EPSILON == True and SCHEME_FOR_ADVECTION_OF_K_EPSILON in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME']) or (ADVECTION_OF_U_AND_V == True and SCHEME_FOR_ADVECTION_OF_VELOCITIES in ['EDGE-BASED N-SCHEME','SUPG','CONSERVATIVE N-SCHEME','CONSERVATIVE PSI-SCHEME'])",
+# -----------------------------------
+ ),
+# -----------------------------------
+ TREATMENT_OF_FLUXES_AT_THE_BOUNDARIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["Priority to prescribed values","Priority to fluxes"],
+ defaut = ["Priority to prescribed values","Priority to prescribed values"],
+ fr = """Utilise pour les schemas SUPG, PSI et N, avec option 2, on ne retrouve
+pas exactement les valeurs imposees des traceurs, mais le flux est
+correct""",
+ ang = """Used so far only with the SUPG, PSI and N schemes. With option 2,
+Dirichlet prescribed values are not obeyed, but the fluxes are correct""",
+ ),
+# -----------------------------------
+ NUMBER_OF_CORRECTIONS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = [1],
+ fr = """Pour les options avec predicteur-correcteur""",
+ ang = """For predictor-corrector options""",
+ ),
+# -----------------------------------
+ NUMBER_OF_SUB_STEPS_OF_DISTRIBUTIVE_SCHEMES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """ Pour les options predicteur-correcteur avec schema localement
+implicite""",
+ ang = """ Only for implicit scheme with predictor-corrector""",
+ ),
+# -----------------------------------
+ PSI_SCHEME_OPTION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["explicit","predictor-corrector"],
+ defaut = "explicit",
+ fr = """ 1: explicite 2: predicteur-correcteur""",
+ ang = """ 1: explicit 2: predictor-corrector""",
+ ),
+ ),
+# -----------------------------------
+ DIFFUSION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ DIFFUSION_OF_VELOCITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Permet de decider si l''on prend ou non en compte la diffusion
+des vitesses.""",
+ ang = """Makes it possible to decide whether the diffusion of velocity
+(i.e. viscosity) is taken into account or not.""",
+ ),
+# -----------------------------------
+ b_DIFFUSION_OF_VELOCITYG = BLOC(condition="DIFFUSION_OF_VELOCITY == True",
+# -----------------------------------
+# -----------------------------------
+ IMPLICITATION_FOR_DIFFUSION_OF_VELOCITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Fixe la valeur du coefficient d''implicitation sur les termes de
+diffusion des vitesses""",
+ ang = """Sets the value of the implicitation coefficient for the diffusion of
+velocity""",
+ ),
+# -----------------------------------
+ OPTION_FOR_THE_DIFFUSION_OF_VELOCITIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["div( nu grad(U) )","1/h div ( h nu grad(U)"],
+ defaut = "div( nu grad(U) )",
+ fr = """1: Diffusion de la forme div( nu grad(U) )
+2: Diffusion de la forme 1/h div ( h nu grad(U) )""",
+ ang = """1: Diffusion in the form div( nu grad(U) )
+2: Diffusion in the form 1/h div ( h nu grad(U) )""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ AUTOMATIC_DIFFERENTIATION = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ AD_NUMBER_OF_DERIVATIVES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Definit le nombre de derivees utilisateurs, dans le cadre
+de la differentiation algorithmique.""",
+ ang = """Defines the number of user derivatives, within the framework
+of the algorithmic differentiation.""",
+ ),
+# -----------------------------------
+ AD_NAMES_OF_DERIVATIVES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min= 2, max= 2,
+ fr = """Noms des differentiateurs utilisateurs en 32 caracteres,
+ 16 pour le nom, 16 pour l''unite.""",
+ ang = """Name of user differentiators in 32 characters,
+ 16 for the name, 16 for the unit.""",
+ ),
+# -----------------------------------
+ AD_SYMBOLIC_LINEAR_SOLVER = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Permet le solveur lineaire symbolique pour l AD.""",
+ ang = """Enables the symbolic linear solver for AD.""",
+ ),
+# -----------------------------------
+ AD_LINEAR_SOLVER_RESET_DERIVATIVES = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Remet a zero les derivees pour l AD.""",
+ ang = """Resets the derivatives for AD.""",
+ ),
+# -----------------------------------
+ AD_LINEAR_SOLVER_DERIVATIVE_CONVERGENCE = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Solveur lineaire iteratif : test de convergence des derivees
+pour l AD.""",
+ ang = """Iterative linear solvers: derivative convergence test for AD.""",
+ ),
+ ),
+# -----------------------------------
+ ADVANCED = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ MATRIX_STORAGE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["classical EBE","Edge-based storage"],
+ defaut = "Edge-based storage",
+ fr = """1 : EBE classique 3 : Stockage par segments""",
+ ang = """1 : classical EBE 3 : Edge-based storage""",
+ ),
+# -----------------------------------
+ MATRIX_VECTOR_PRODUCT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """1 : classique 2 : frontal
+attention, avec 2, il faut une numerotation speciale des points""",
+ ang = """1 : classic 2 : frontal
+beware, with option 2, a special numbering of points is required""",
+ ),
+# -----------------------------------
+ NEWMARK_TIME_INTEGRATION_COEFFICIENT = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """1. : Euler explicite 0.5 : ordre 2 en temps""",
+ ang = """1. : Euler explicit 0.5 : order 2 in time""",
+ ),
+# -----------------------------------
+ ZERO = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-10,
+ fr = """Non active pour l''instant.""",
+ ang = """Not yet implemented""",
+ ),
+# -----------------------------------
+ PROPAGATION_OPTION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 3,
+ fr = """Non active pour l''instant.""",
+ ang = """Not yet implemented.""",
+ ),
+# -----------------------------------
+ OPTION_OF_THE_HYDROSTATIC_RECONSTRUCTION = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """donne l option de la reconstruction hydrostatique
+(option utile uniquement pour les volumes finis):
+1: option d Audusse, 2: option de Noelle""",
+ ang = """gives the option for hydrostatic reconstruction
+(used only for finite volumes):
+1: option of Audusse, 2: option of Noelle""",
+ ),
+# -----------------------------------
+ CONVERGENCE_STUDY = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Active une etude de convergence par rapport a une
+solution analytique sur un maillage fin""",
+ ang = """Activates a convergence study compared
+to an analytical solution on a fine mesh""",
+ ),
+# -----------------------------------
+ REFINEMENT_LEVELS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Donne le nombre de raffinements que l''utilisateur
+veut utiliser pour l''etude de convergence
+(en activant CONVERGENCE). Chaque niveau multiplie par 4 le
+nombre d''elements.""",
+ ang = """Gives the number of refinement levels that the
+user wants to use in the convergence study (when activating
+CONVERGENCE). Each level multiplies the number of elements by
+4""",
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+TURBULENCE = PROC(nom= "TURBULENCE",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ VELOCITY_DIFFUSIVITY = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-6,
+ fr = """Fixe de facon uniforme pour l''ensemble du domaine;
+la valeur du coefficient de diffusion de viscosite globale (dynamique +
+turbulente). Cette valeur peut avoir une influence non negligeable sur
+la forme et la taille des recirculations.""",
+ ang = """Sets, in an even way for the whole domain, the value of the
+coefficient of global (dynamic+turbulent) viscosity. this value may
+have a significant effect both on the shapes and sizes of
+recirculation zones.""",
+ ),
+# -----------------------------------
+ TURBULENCE_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["CONSTANT VISCOSITY","ELDER","K-EPSILON MODEL","SMAGORINSKI","MIXING LENGTH","SPALART-ALLMARAS"],
+ defaut = "CONSTANT VISCOSITY",
+ fr = """3 choix sont possibles actuellement : viscosite constante (1)
+modele de Elder (2) ou modele k-epsilon (3).
+Attention : si on choisit l''option 1
+il ne faut pas oublier d''ajuster la valeur du mot-cle COEFFICIENT DE
+DIFFUSION DES VITESSES.
+si on choisit l''option 2
+il ne faut pas oublier d''ajuster les deux valeurs du mot-cle :
+COEFFICIENTS ADIMENSIONNELS DE DISPERSION
+Si on choisit l''option 3;
+ce meme parametre doit retrouver sa vraie valeur physique car elle est
+utilisee comme telle dans le modele de turbulence""",
+ ang = """The current alternatives are as follows: constant viscosity (1)
+elder''s model (2) or k-epsilon model (3).
+NOTE: when option 1 is chosen, it should be kept in mind that the
+value of the keyword VELOCITY DIFFUSIVITY has to be ajusted.
+When option 2 is chosen, the two values of key-word :
+NON-DIMENSIONAL DISPERSION COEFFICIENTS are used
+When option 3 is chosen, this parameter should recover its true
+physical value, since it is used as such in the turbulence model.""",
+ ),
+# -----------------------------------
+ b_TURBULENCE_MODELG = BLOC(condition="TURBULENCE_MODEL == 'CONSTANT VISCOSITY'",
+# -----------------------------------
+ ),
+# -----------------------------------
+ b_TURBULENCE_MODELH = BLOC(condition="TURBULENCE_MODEL == 'Elder'",
+# -----------------------------------
+# -----------------------------------
+ NON_DIMENSIONAL_DISPERSION_COEFFICIENTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min= 2, max= 2,
+ defaut = [6.,0.6],
+ fr = """Coefficients longitudinal et transversal dans la formule de
+Elder. Utilises uniquement avec le modele de turbulence 2""",
+ ang = """Longitudinal and transversal coefficients in elder s formula.
+ Used only with turbulence model number 2""",
+ ),
+ ),
+# -----------------------------------
+ ACCURACY_OF_SPALART_ALLMARAS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-9,
+ fr = """Fixe la precision demandee sur le modele spalart-allmaras pour
+le test d''arret dans l''etape de diffusion et termes sources de k et
+epsilon.""",
+ ang = """Sets the required accuracy for the model spalart-allmaras in
+the diffusion and source-terms step of the k-epsilon model.""",
+ ),
+# -----------------------------------
+ INFORMATION_ABOUT_SPALART_ALLMARAS_MODEL = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """si oui les informations du solveur du modele spalart-allmaras
+sont imprimees""",
+ ang = """if yes, informations about solver of spalart-allmaras model
+are printed to the listing""",
+ ),
+# -----------------------------------
+ SOLVER_INFO = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ SOLVER_FOR_K_EPSILON_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["conjugate gradient","conjugate residuals","conjugate gradient on normal equation","minimum error","conjugate gradient squared","conjugate gradient squared stabilised (cgstab)","gmres (see option for the solver for k-epsilon model)","direct"],
+ defaut = "conjugate gradient",
+ fr = """Permet de choisir le solveur utilise pour la resolution
+du systeme du modele k-epsilon :
+1 : gradient conjugue
+2 : residu conjugue
+3 : gradient conjugue sur equation normale
+4 : erreur minimale
+5 : gradient conjugue carre
+6 : gradient conjugue carre stabilise (cgstab)
+7 : gmres (voir aussi option du solveur pour le modele k-epsilon)
+8 : direct""",
+ ang = """Makes it possible to select the solver used for solving
+the system of the k-epsilon model.
+1: conjugate gradient
+2: conjugate residuals
+3: conjugate gradient on normal equation
+4: minimum error
+5: conjugate gradient squared
+6: conjugate gradient squared stabilised (cgstab)
+7: gmres (see option for the solver for k-epsilon model)
+8: direct""",
+ ),
+# -----------------------------------
+ OPTION_FOR_THE_SOLVER_FOR_K_EPSILON_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 2,
+ fr = """si le solveur est GMRES (7) le mot cle est la dimension de
+l''espace de KRILOV (valeurs conseillees entre 2 et 15)""",
+ ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE
+TRY VALUES BETWEEN 2 AND 15""",
+ ),
+# -----------------------------------
+ PRECONDITIONING_FOR_K_EPSILON_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["diagonal","no preconditioning","crout","diagonal and crout"],
+ defaut = "diagonal",
+ fr = """Permet de preconditionner le systeme relatif au
+modele k-epsilon
+0 : pas de preconditionnement;
+2 : preconditionnement diagonal.
+7 : preconditionnement de Crout par element.""",
+ ang = """Preconditioning of the linear system in the diffusion step of
+the k-epsilon model.
+0: no preconditioning
+2: diagonal preconditioning
+7: Crout''s preconditioning per element""",
+ ),
+ ),
+# -----------------------------------
+ ADVANCED = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ TURBULENCE_REGIME_FOR_SOLID_BOUNDARIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["smooth","rough"],
+ defaut = "rough",
+ fr = """ Permet de choisir le regime de turbulence aux parois 1 : regime
+turbulent lisse. 2 : regime turbulent rugueux.""",
+ ang = """ Provided for selecting the type of friction on the walls 1: smooth 2:
+rough""",
+ ),
+# -----------------------------------
+ INFORMATION_ABOUT_K_EPSILON_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Donne le nombre d''iterations du solveur de l''etape de
+diffusion et termes sources du modele k-epsilon.""",
+ ang = """Gives the number of iterations of the solver in the diffusion
+and source terms step of the k-epsilon model.""",
+ ),
+# -----------------------------------
+ ADVECTION_OF_K_AND_EPSILON = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la convection de k et epsilon.""",
+ ang = """The k and epsilon advection is taken into account or ignored.""",
+ ),
+# -----------------------------------
+ b_ADVECTION_OF_K_AND_EPSILONG = BLOC(condition="ADVECTION_OF_K_AND_EPSILON == True",
+# -----------------------------------
+# -----------------------------------
+ SCHEME_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME FOR TIDAL FLATS"],
+ defaut = "CHARACTERISTICS",
+ fr = """Choix du schema de convection pour k et epsilon,
+remplace FORME DE LA CONVECTION""",
+ ang = """Choice of the advection scheme for k and epsilon,
+replaces TYPE OF ADVECTION""",
+ ),
+ ),
+# -----------------------------------
+ SCHEME_OPTION_FOR_ADVECTION_OF_K_EPSILON = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Si present remplace et a priorite sur :
+OPTION POUR LES CARACTERISTIQUES
+OPTION DE SUPG
+Si schema PSI ou N : 1=explicite 2=predicteur-correcteur
+3=predicteur-correcteur deuxieme ordre en temps
+4=implicite""",
+ ang = """If present replaces and has priority over:
+OPTION FOR CHARACTERISTICS
+SUPG OPTION
+if N or PSI SCHEME: 1=explicit 2=predictor-corrector
+3= predictor-corrector second-order in time 4= implicit""",
+ ),
+# -----------------------------------
+ TIME_STEP_REDUCTION_FOR_K_EPSILON_MODEL = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Coefficient reducteur du pas de temps pour le modele k-epsilon (qui
+est normalement identique a celui du systeme hydrodynamique).
+Utilisation deconseillee""",
+ ang = """Time step reduction coefficient for k-epsilon model (which is normally
+same the same as that of the hydrodynamic system) Not recommended for
+use.""",
+ ),
+ ),
+# -----------------------------------
+ ACCURACY = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ACCURACY_OF_K = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-9,
+ fr = """Fixe la precision demandee sur k pour le test d''arret dans
+l''etape de diffusion et termes sources du modele k-epsilon.""",
+ ang = """Sets the required accuracy for computing k in the diffusion
+and source terms step of the k-epsilon model.""",
+ ),
+# -----------------------------------
+ ACCURACY_OF_EPSILON = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-9,
+ fr = """Fixe la precision demandee sur epsilon pour le test d''arret
+dans l''etape de diffusion et termes sources de k et epsilon.""",
+ ang = """Sets the required accuracy for computing epsilon in
+the diffusion and source-terms step of the k-epsilon model.""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_ITERATIONS_FOR_K_AND_EPSILON = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 50,
+ fr = """Fixe le nombre maximum d''iterations accepte lors de la
+resolution du systeme diffusion-termes sources du modele k-epsilon.""",
+ ang = """Sets the maximum number of iterations that are acceptable when
+solving the diffusion source-terms step of the k-epsilon model.""",
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+TIDAL_FLATS_INFO = PROC(nom= "TIDAL_FLATS_INFO",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ TIDAL_FLATS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """permet de supprimer les tests sur les bancs decouvrants, dans
+les cas ou l''on est certain qu''il n''y en aura pas.
+En cas de doute : oui""",
+ ang = """When no, the specific
+treatments for tidal flats are by-passed.
+This spares time, but of course you must be sure that you have no
+tidal flats""",
+ ),
+# -----------------------------------
+ b_TIDAL_FLATSG = BLOC(condition="TIDAL_FLATS == True",
+# -----------------------------------
+# -----------------------------------
+ OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS","DRY ELEMENTS FROZEN","LIKE 1 BUT WITH POROSITY (DEFINA METHOD)"],
+ defaut = "EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS",
+ fr = """Utilise si BANCS DECOUVRANTS est vrai
+1 : EQUATIONS RESOLUES PARTOUT AVEC
+CORRECTION SUR LES BANCS DECOUVRANTS
+2 : GEL DES ELEMENTS DECOUVRANTS
+3 : COMME 1 MAIS AVEC POROSITE (METHODE DEFINA)""",
+ ang = """Used if TIDAL FLATS is true
+1 : EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS
+2 : DRY ELEMENTS FROZEN
+3 : LIKE 1 BUT WITH POROSITY (DEFINA METHOD)""",
+ ),
+# -----------------------------------
+ b_OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATSG = BLOC(condition="OPTION_FOR_THE_TREATMENT_OF_TIDAL_FLATS == 'EQUATIONS SOLVED EVERYWHERE WITH CORRECTION ON TIDAL FLATS'",
+# -----------------------------------
+# -----------------------------------
+ TREATMENT_OF_NEGATIVE_DEPTHS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["SMOOTHING","FLUX CONTROL","FLUX CONTROL (ERIA)"],
+ defaut = "SMOOTHING",
+ fr = """Seulement avec OPTION DE TRAITEMENT DES BANCS DECOUVRANTS = 1
+ 0 : pas de traitement
+ 1 : lissage
+ 2 : limitation des flux, approche par segment
+ 3 : limitation des flux, approche par triangle""",
+ ang = """Only with OPTION FOR THE TREATMENT OF TIDAL FLATS=1
+ 0:no treatment
+ 1:smoothing
+ 2:flux control, by segment
+ 3:flux control, by element""",
+ ),
+ ),
+# -----------------------------------
+ THRESHOLD_FOR_NEGATIVE_DEPTHS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """En dessous du seuil, les hauteurs negatives sont lissees""",
+ ang = """Below the threshold the negative depths are smoothed""",
+ ),
+# -----------------------------------
+ THRESHOLD_DEPTH_FOR_RECEDING_PROCEDURE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Si > 0., declenche la procedure de ressuyage qui evite le
+franchissement parasite des digues mal discretisees""",
+ ang = """If > 0., will trigger the receding procedure that avoids overwhelming
+of dykes which are too loosely discretised""",
+ ),
+# -----------------------------------
+ H_CLIPPING = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Determine si l''on desire ou non limiter par valeur inferieure
+la hauteur d''eau H (dans le cas des bancs decouvrants par exemple).""",
+ ang = """Determines whether limiting the water depth H by a lower value
+desirable or not. (for instance in the case of tidal flats)
+This key-word may have an influence on mass conservation since
+the truncation of depth is equivalent to adding mass.""",
+ ),
+# -----------------------------------
+ b_H_CLIPPINGG = BLOC(condition="H_CLIPPING == True",
+# -----------------------------------
+# -----------------------------------
+ MINIMUM_VALUE_OF_DEPTH = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe la valeur minimale de a lorsque l''option CLIPPING DE H est
+activee.""",
+ ang = """Sets the minimum H value when option H CLIPPING is implemented. Not
+fully implemented.""",
+ ),
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+TRACERS = PROC(nom= "TRACERS",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ BOUNDARY_CONDITIONS_FOR_TRACERS = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ PRESCRIBED_TRACERS_VALUES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', max='**',
+ fr = """Valeurs du traceur imposees aux frontieres liquides entrantes.
+Lire la partie du mode d''emploi consacree aux conditions aux limites""",
+ ang = """Tracer values prescribed at the inflow boundaries.
+Read the usermanual section dealing with the boundary conditions""",
+ ),
+ ),
+# -----------------------------------
+ SETTING = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Definit le nombre de traceurs.""",
+ ang = """Defines the number of tracers""",
+ ),
+# -----------------------------------
+ NAMES_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ fr = """Noms des traceurs en 32 caracteres, 16 pour le nom 16 pour l''unite""",
+ ang = """Name of tracers in 32 characters, 16 for the name, 16 for the unit.""",
+ ),
+# -----------------------------------
+ INITIAL_VALUES_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ defaut = [0.,0.],
+ fr = """Fixe la valeur initiale du traceur.""",
+ ang = """Sets the initial value of the tracer.""",
+ ),
+# -----------------------------------
+ DENSITY_EFFECTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """PRISE EN COMPTE DU GRADIENT HORIZONTAL DE DENSITE
+ LE TRACEUR EST ALORS LA SALINITE""",
+ ang = """THE HORIZONTAL GRADIENT OF DENSITY IS TAKEN INTO ACCOUNT
+ THE TRACER IS THEN THE SALINITY""",
+ ),
+# -----------------------------------
+ b_DENSITY_EFFECTSG = BLOC(condition="DENSITY_EFFECTS == True",
+# -----------------------------------
+# -----------------------------------
+ MEAN_TEMPERATURE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 20.,
+ fr = """TEMPERATURE DE REFERENCE POUR LE CALCUL DES EFFETS DE DENSITE
+A UTILISER AVEC LE MOT-CLE \telkey{EFFETS DE DENSITE}""",
+ ang = """REFERENCE TEMPERATURE FOR DENSITY EFFECTS
+TO BE USED WITH THE KEY-WORD \telkey{DENSITY EFFECTS}""",
+ ),
+ ),
+# -----------------------------------
+ b_DENSITY_EFFECTSH = BLOC(condition="DENSITY_EFFECTS == True",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "The first tracer must be the salinity in kg/m3"),
+ ),
+ ),
+# -----------------------------------
+ SOLVER_TRA = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ SOLVER_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["conjugate gradient","conjugate residual","conjugate gradient on a normal equation","minimum error","squared conjugate gradient","cgstab","gmres (see option for the solver for tracer diffusion)","direct"],
+ defaut = ["conjugate gradient","conjugate gradient"],
+ fr = """ 1 : gradient conjugue 2 : residu conjugue 3 : gradient conjugue sur
+equation normale 4 : erreur minimale 5 : gradient conjugue carre""",
+ ang = """ 1 : conjugate gradient 2 : conjugate gradient 3 : conjugate gradient
+on a normal equation 4 : minimum error 5 : squared conjugate gradient 6
+: cgstab 7 : gmres (see option for the solver for tracer diffusion) 8 :
+direct""",
+ ),
+# -----------------------------------
+ SOLVER_OPTION_FOR_TRACERS_DIFFUSION = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ defaut = [2],
+ fr = """si le solveur est GMRES (7) le mot cle est la dimension de
+l''espace de KRILOV (valeurs conseillees entre 2 et 15)""",
+ ang = """WHEN GMRES (7) IS CHOSEN, DIMENSION OF THE KRYLOV SPACE
+TRY VALUES BETWEEN 2 AND 15""",
+ ),
+# -----------------------------------
+ PRECONDITIONING_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["no preconditioning ","diagonal","crout","diagonal and crout"],
+ defaut = ["diagonal"],
+ fr = """Permet de preconditionner le systeme relatif au traceur.
+Memes definition et possibilites que pour le mot-cle
+PRECONDITIONNEMENT.
+ 0 : pas de preconditionnement;
+ 2 : preconditionnement diagonal.
+ 7 : Crout par element""",
+ ang = """Preconditioning of the linear system in the tracer diffusion
+step.
+Same definition and possibilities as for the keyword PRECONDITIONING
+ 0: no preconditioning
+ 2: diagonal preconditioning
+ 7: Crout''s preconditioning per element.""",
+ ),
+ ),
+# -----------------------------------
+ ACCURACY_TRA = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ACCURACY_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.E-6,
+ fr = """Fixe la precision demandee pour le calcul de la diffusion
+du traceur.""",
+ ang = """Sets the required accuracy for computing the tracer
+diffusion.""",
+ ),
+# -----------------------------------
+ MAXIMUM_NUMBER_OF_ITERATIONS_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 60,
+ fr = """ Limite le nombre d''iterations du solveur a chaque pas de temps pour
+le calcul de la diffusion du traceur.""",
+ ang = """Limits the number of solver iterations at each time step for
+the diffusion of tracer.""",
+ ),
+ ),
+# -----------------------------------
+ SOURCES_TRA = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ VALUES_OF_THE_TRACERS_AT_THE_SOURCES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """Valeurs des traceurs a chacune des sources""",
+ ang = """Values of the tracers at the sources""",
+ ),
+ ),
+# -----------------------------------
+ METEOROLOGY_TRA = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ VALUES_OF_TRACERS_IN_THE_RAIN = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ fr = """generalement ce traceur est la temperature, dans ce cas
+cette valeur est a modifier, sinon la valeur 0 est raisonnable""",
+ ang = """most often, this tracer is temperature, in this case
+this value should be modified, otherwise, default value of 0 seems
+reasonable""",
+ ),
+ ),
+# -----------------------------------
+ NUMERICAL = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ ADVECTION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la convection du traceur passif.""",
+ ang = """The advection of the passive tracer is taken into account
+or ignored.""",
+ ),
+# -----------------------------------
+ b_ADVECTION_OF_TRACERSG = BLOC(condition="ADVECTION_OF_TRACERS == True",
+# -----------------------------------
+# -----------------------------------
+ SCHEME_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["NO ADVECTION","CHARACTERISTICS","EXPLICIT + SUPG","EXPLICIT LEO POSTMA","EXPLICIT + MURD SCHEME N","EXPLICIT + MURD SCHEME PSI","LEO POSTMA FOR TIDAL FLATS","N-SCHEME FOR TIDAL FLATS","ERIA SCHEME FOR TIDAL FLATS"],
+ defaut = ["CHARACTERISTICS"],
+ fr = """Choix du schema de convection pour les traceurs,
+remplace FORME DE LA CONVECTION""",
+ ang = """Choice of the advection scheme for the tracers,
+replaces TYPE OF ADVECTION""",
+ ),
+ ),
+# -----------------------------------
+ IMPLICITATION_COEFFICIENT_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.6,
+ fr = """Fixe la valeur du coefficient d''implicitation du traceur""",
+ ang = """Sets the value of the implicitation coefficient
+for the tracer""",
+ ),
+# -----------------------------------
+ DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = True,
+ fr = """Prise en compte ou non de la diffusion du traceur passif.""",
+ ang = """The diffusion of the passive tracer is taken into account
+or ignored.""",
+ ),
+# -----------------------------------
+ b_DIFFUSION_OF_TRACERSG = BLOC(condition="DIFFUSION_OF_TRACERS == True",
+# -----------------------------------
+# -----------------------------------
+ COEFFICIENT_FOR_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R', min=0, max='**',
+ defaut = [1.E-6],
+ fr = """Fixe la valeur du coefficient de diffusion du traceur.
+L''influence de ce parametre sur l''evolution du traceur dans
+le temps est importante.""",
+ ang = """Sets the value of the tracer diffusivity.""",
+ ),
+ ),
+# -----------------------------------
+ OPTION_FOR_THE_DIFFUSION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', min=0, max='**',
+ into = ["div( nu grad(T) )","1/h div ( h nu grad(T)"],
+ defaut = ["div( nu grad(T) )"],
+ fr = """1: Diffusion de la forme div( nu grad(T) )
+2: Diffusion de la forme 1/h div ( h nu grad(T) )""",
+ ang = """1: Diffusion in the form div( nu grad(T) )
+2: Diffusion in the form 1/h div ( h nu grad(T) )""",
+ ),
+# -----------------------------------
+ SCHEME_OPTION_FOR_ADVECTION_OF_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I', min=0, max='**',
+ defaut = [1],
+ fr = """Si present remplace et a priorite sur :
+OPTION POUR LES CARACTERISTIQUES
+OPTION DE SUPG
+Si schema PSI ou N : 1=explicite 2=predicteur-correcteur
+3=predicteur-correcteur deuxieme ordre en temps
+4=implicite""",
+ ang = """If present replaces and has priority over:
+OPTION FOR CHARACTERISTICS
+SUPG OPTION
+if N or PSI SCHEME: 1=explicit 2=predictor-corrector
+3= predictor-corrector second-order in time 4= implicit""",
+ ),
+# -----------------------------------
+ MASS_LUMPING_ON_TRACERS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Fixe le taux de mass-lumping effectue sur le traceur.""",
+ ang = """Sets the amount of mass-lumping that is performed on
+ the tracer.""",
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+PARTICLE_TRANSPORT = PROC(nom= "PARTICLE_TRANSPORT",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ DROGUES = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_DROGUES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Permet d''effectuer un suivi de flotteurs""",
+ ang = """Number of drogues in the computation.
+The user must then fill the subroutine FLOT specifying
+the coordinates of the starting points, their departure
+and arrival times.
+The trajectory of drogues is recorded in the BINARY RESULTS
+FILE that must be given in the steering file""",
+ ),
+# -----------------------------------
+ b_NUMBER_OF_DROGUESG = BLOC(condition="NUMBER_OF_DROGUES != 0",
+# -----------------------------------
+# -----------------------------------
+ DROGUES_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultat avec les positions des flotteurs""",
+ ang = """Results file with positions of drogues""",
+ ),
+# -----------------------------------
+ PRINTOUT_PERIOD_FOR_DROGUES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Nombre de pas de temps entre 2 sorties de positions de
+flotteurs dans le fichier des resultats binaire supplementaire
+N affecte pas la qualite du calcul de la trajectoire""",
+ ang = """Number of time steps between 2 outputs of drogues
+positions in the binary file""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ ALGAES = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ ALGAE_TRANSPORT_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Si oui, les flotteurs seront des algues""",
+ ang = """If yes, the floats or particles will be algae""",
+ ),
+# -----------------------------------
+ b_ALGAE_TRANSPORT_MODELG = BLOC(condition="ALGAE_TRANSPORT_MODEL == True",
+# -----------------------------------
+# -----------------------------------
+ ALGAE_TYPE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["SPHERE","IRIDAEA FLACCIDA (CLOSE TO ULVA)","PELVETIOPSIS LIMITATA","GIGARTINA LEPTORHYNCHOS"],
+ defaut = "SPHERE",
+ fr = """Type des algues. Pour le choix 1 les algues seront
+modelisees comme des spheres, pour les autres choix voir Gaylord
+et al. (1994).""",
+ ang = """Algae type. For choice 1 the algae particles will be
+modeled as spheres, and for the other choices see Gaylord et
+al. (1994)""",
+ ),
+# -----------------------------------
+ DIAMETER_OF_ALGAE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.1,
+ fr = """Diametre des algues en m""",
+ ang = """Diametre of algae in m""",
+ ),
+# -----------------------------------
+ DENSITY_OF_ALGAE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1050.,
+ fr = """Masse volumique des algues en kg/m3""",
+ ang = """Density of algae in kg/m3""",
+ ),
+# -----------------------------------
+ THICKNESS_OF_ALGAE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.01,
+ fr = """Epaisseur des algues en m""",
+ ang = """Thickness of algae in m""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ OIL_SPILL = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ OIL_SPILL_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """POUR DECLENCHER LE MODELE DE DERIVE DE NAPPES, DANS
+CE CAS LE FICHIER DE COMMANDES MIGRHYCAR EST NECESSAIRE""",
+ ang = """WILL TRIGGER THE OIL SPILL MODEL, IN THIS CASE
+THE MIGRHYCAR STEERING FILE IS NEEDED""",
+ ),
+# -----------------------------------
+ b_OIL_SPILL_MODELG = BLOC(condition="OIL_SPILL_MODEL == True",
+# -----------------------------------
+# -----------------------------------
+ OIL_SPILL_STEERING_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Contient les donnees pour le modele de derive de nappes""",
+ ang = """Contains data for the oil spill model""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ BROWNIAN_MOTION = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ STOCHASTIC_DIFFUSION_MODEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["No model","brownian movement"],
+ defaut = "No model",
+ fr = """Pour les particules : flotteurs, hydrocarbures""",
+ ang = """Meant for particles: drogues, oil spills""",
+ ),
+ ),
+# -----------------------------------
+ LAGRANGIAN_DRIFTS = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_LAGRANGIAN_DRIFTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Permet d''effectuer simultanement plusieurs calculs de derives
+lagrangiennes initiees a des pas differents""",
+ ang = """Provided for performing several computations of lagrangian
+drifts starting at different times.
+Add A and G in the VARIABLES FOR GRAPHIC PRINTOUTS key-word""",
+ ),
+# -----------------------------------
+ b_NUMBER_OF_LAGRANGIAN_DRIFTSG = BLOC(condition="NUMBER_OF_LAGRANGIAN_DRIFS != 0",
+# -----------------------------------
+# -----------------------------------
+ Consigne = SIMP(statut ="o", homo="information", typ="TXM",
+# -----------------------------------
+ defaut = "Add 'drift along x (m)' and 'drift along y (m)' in VARIABLES FOR GRAPHIC PRINTOUTS"),
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+HYDRAULIC_STRUCTURES = PROC(nom= "HYDRAULIC_STRUCTURES",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ WEIRS = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_WEIRS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Nombre de seuils qui seront traites par des conditions aux
+limites. Ces seuils doivent etre decrits comme des frontieres du
+domaine de calcul, et leurs caracteristiques sont donnees dans le
+fichier de donnees des seuils (voir la documentation ecrite)""",
+ ang = """Number of weirs that will be treated by boundary conditions.
+They must be described as boundaries of the domain and their features
+are given in the weir data file (see written documentation)""",
+ ),
+# -----------------------------------
+ b_NUMBER_OF_WEIRSG = BLOC(condition="NUMBER_OF_WEIRS != 0",
+# -----------------------------------
+# -----------------------------------
+ WEIRS_DATA_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de description des seuils presents dans le modele""",
+ ang = """Description of weirs existing in the model""",
+ ),
+# -----------------------------------
+ TYPE_OF_WEIRS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM","GENERAL"],
+ defaut = "HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM",
+ fr = """Methode de traitement des seuils. Deux Solutions:
+- HORIZONTAL AVEC MEME NOMBRE DE NOEUDS AMONT/AVAL (Solution historique
+ avec bord)
+- GENERALE (Nouvelle solution avec pts sources)""",
+ ang = """Method for treatment of weirs. Two options:
+- HORIZONTAL WITH SAME NUMBER OF NODES UPSTREAM/DOWNSTREAM (Historical
+ solution with bord)
+- GENERAL (New solution with sources points""",
+ ),
+ ),
+ ),
+# -----------------------------------
+ CULVERTS = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ NUMBER_OF_CULVERTS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Nombre de buses ou ponts traites comme des termes sources ou
+puits. Ces buses doivent etre decrits comme des sources dans le
+fichier cas. Leurs caracteristiques sont donnees dans le
+fichier de donnees des buses (voir la documentation ecrite)""",
+ ang = """Number of culverts, tubes or bridges treated as source terms.
+They must be described as sources in the domain and their features
+are given in the culverts data file (see written documentation)""",
+ ),
+# -----------------------------------
+ b_NUMBER_OF_CULVERTSG = BLOC(condition="NUMBER_OF_CULVERTS != 0",
+# -----------------------------------
+# -----------------------------------
+ CULVERTS_DATA_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de description des buses/ponts presents dans le modele""",
+ ang = """Description of culverts/tubes/bridges existing in the model""",
+ ),
+ ),
+# -----------------------------------
+ OPTION_FOR_CULVERTS = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Option pour le traitement des buses. Il existe deux formulations
+dans Telemac""",
+ ang = """Option for the treatment of culverts. There are two options in
+Telemac""",
+ ),
+ ),
+# -----------------------------------
+ BREACHES = FACT(statut='f',
+# -----------------------------------
+# -----------------------------------
+ BREACH = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Prise en compte de breches dans le calcul par
+modification altimetrique dans le maillage. La description
+des breches se fait avec le fichier de donnees des breches.""",
+ ang = """Take in account some breaches during the computation
+by modifying the bottom level of the mesh. Brech description
+is done with the breaches data file.""",
+ ),
+# -----------------------------------
+ b_BREACHG = BLOC(condition="BREACH == True",
+# -----------------------------------
+# -----------------------------------
+ BREACHES_DATA_FILE = SIMP(statut ='o',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de description des breches""",
+ ang = """Description of breaches""",
+ ),
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+TIDES = PROC(nom= "TIDES",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ BINARY_DATABASE_1_FOR_TIDE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Base de donnees binaire 1 tiree du fichier du modele de maree.
+ Dans le cas des donnees satellitaires de TPXO, ce fichier correspond
+ aux donnees de niveau d''eau, par exemple h\_tpxo7.2""",
+ ang = """Binary database 1 extracted from the tidal model file.
+ In the case of the TPXO satellite altimetry model, this file should
+ be for free surface level, for instance h\_tpxo7.2""",
+ ),
+# -----------------------------------
+ BINARY_DATABASE_2_FOR_TIDE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Base de donnees binaire 2 tiree du fichier du modele de maree.
+ Dans le cas des donnees satellitaires de TPXO, ce fichier correspond
+ aux donnees de vitesse de marrees, par exemple u\_tpxo7.2""",
+ ang = """Binary database 2 extracted from the tidal model file.
+ In the case of the TPXO satellite altimetry model, this file should
+ be for tidal velocities, for instance u\_tpxo7.2""",
+ ),
+# -----------------------------------
+ GEOGRAPHIC_SYSTEM = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO DEFAULT VALUE","DEFINED BY USER","WGS84 LONGITUDE/LATITUDE IN REAL DEGREES","WGS84 NORTHERN UTM","WGS84 SOUTHERN UTM","LAMBERT","MERCATOR FOR TELEMAC"],
+ defaut = "NO DEFAULT VALUE",
+ fr = """Systeme de coordonnees geographiques dans lequel est construit
+le modele numerique.
+Indiquer la zone correspondante avec le mot-cle.
+Indique le systeme de coordonnees geographiques dans lequel est
+construit le modele numerique. Les choix possibles sont :
+\begin{itemize}
+\item 0 : defini par l''utilisateur ;
+\item 1 : WGS84 longitude/latitude en degres reels ;
+\item 2 : WGS84 nord UTM ;
+\item 3 : WGS84 sud UTM ;
+\item 4 : Lambert ;
+\item 5 : projection Mercator.
+\end{itemize}""",
+ ang = """Geographic coordinates system in which the numerical model is
+built. Indicate the corresponding zone with the keyword.
+The possible choices are:
+\begin{itemize}
+\item 0: defined by the user,
+\item 1: WGS84 longitude/latitude in real degrees,
+\item 2: WGS84 Northern UTM,
+\item 3: WGS84 Southern UTM,
+\item 4: Lambert,
+\item 5: Mercator projection.
+\end{itemize}""",
+ ),
+# -----------------------------------
+ b_GEOGRAPHIC_SYSTEMG = BLOC(condition="GEOGRAPHIC_SYSTEM in ['WGS84 NOTHERN UTM','WGS84 SOUTHERN UTM','LAMBERT']",
+# -----------------------------------
+# -----------------------------------
+ ZONE_NUMBER_IN_GEOGRAPHIC_SYSTEM = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO DEFAULT VALUE","LAMBERT 1 NORTH","LAMBERT 2 CENTER","LAMBERT 3 SOUTH","LAMBERT 4 CORSICA","LAMBERT 2 EXTENDED","LAMBERT 93","UTM ZONE, E.G."],
+ defaut = "NO DEFAULT VALUE",
+ fr = """Numero de zone (fuseau ou type de projection) lors de
+l''utilisation d''une projection plane. Indiquer le systeme
+geographique dans lequel est construit le modele numerique avec le
+mot-cle \telkey{SYSTEME GEOGRAPHIQUE}.
+Les choix possibles sont :
+\begin{itemize}
+\item 1 : Lambert 1 nord ;
+\item 2 : Lambert 2 centre ;
+\item 3 : Lambert 3 sud ;
+\item 4 : Lambert 4 Corse ;
+\item 22 : Lambert 2 etendu ;
+\item 93 : Lambert 93 ;
+\item X : Valeur UTM de la zone WGS84 (X est le numero de la zone).
+\end{itemize}""",
+ ang = """Number of zone when using a plane projection.
+Indicate the geographic system in which the numerical model is built
+with the keyword \telkey{GEOGRAPHIC SYSTEM}.
+Possible choices are:
+\begin{itemize}
+\item 1: Lambert 1 north,
+\item 2: Lambert 2 center,
+\item 3: Lambert 3 south,
+\item 4: Lambert 4 Corsica,
+\item 22: Lambert 22 extended,
+\item 93: Lambert 93 extended,
+\item X: UTM zone with WGS84 (X is the number of the zone).
+\end{itemize}""",
+ ),
+ ),
+# -----------------------------------
+ LAMBERT_93_CONVERSION_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier GR3DF97A, grille de conversion pour Lambert 93.""",
+ ang = """Name of file GR3DF97A, conversion grid for Lambert 93.""",
+ ),
+# -----------------------------------
+ COEFFICIENT_TO_CALIBRATE_SEA_LEVEL = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 0.,
+ fr = """Coefficient pour ajuster le niveau de mer""",
+ ang = """Coefficient to calibrate the sea level""",
+ ),
+# -----------------------------------
+ GLOBAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Numero global du point par rapport auquel les ondes de maree sont
+dephasees pour debuter le calcul par une pleine mer (en marees
+schematiques seulement). Ne concerne que les bases de constantes
+harmoniques de type TPXO.""",
+ ang = """Global number of the point with respect to which the tidal
+constituents have their phase shifted to start the calculation with a
+high water (for schematic tides only). Only harmonic constants databases
+like TPXO are concerned.""",
+ ),
+# -----------------------------------
+ MINOR_CONSTITUENTS_INFERENCE = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Pour la base de donnees TPXO uniquement.
+Interpolation de composantes harmoniques mineures
+a partir de celles lues dans les fichiers d''entree
+lies aux mots-cles BASE BINAIRE 1 DE DONNEES DE MAREE
+et BASE BINAIRE 2 DE DONNEES DE MAREE""",
+ ang = """For TPXO tidal data base only.
+Inference of minor constituents from the one read in input files
+linked to keywords BINARY DATABASE 1 FOR TIDE
+and BINARY DATABASE 2 FOR TIDE""",
+ ),
+# -----------------------------------
+ BOUNDARY_CONDITIONS = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ OPTION_FOR_TIDAL_BOUNDARY_CONDITIONS = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM', max='**',
+ into = ["No tide","Real tide (recommended methodology)","Astronomical tide","Mean spring tide","Mean tide","Mean neap tide","Astronomical neap tide","Real tide (methodology before 2010)"],
+ fr = """Option pour les conditions aux limites de maree. Pour des marees
+reelles, l option 1 est recommandee. Depuis la version 7.1, ce mot-cle
+est un tableau avec une valeur donnee par frontiere liquide, separee par
+point-virgules. Ceci permet d''avoir des conditions de maree (ou pas)
+calculees sur des frontieres liquides avec vitesses ou hauteur d eau
+imposees. Ca evite un conflit lors de l utilisation de seuils dans le
+domaine. 0 est le code pour des conditions autres que des conditions de
+maree. ATTENTION depuis la version 7.1 ! Les anciens modeles doivent
+etre changes si la frontiere de maree n a pas le numero 1. Dans ce cas,
+le mot-cle doit etre change et plus de valeurs doivent etre donnees.
+Calage possible par les mots-cles COEFFICIENT POUR CALAGE EN MARNAGE et
+COEFFICIENT POUR CALAGE EN NIVEAU.""",
+ ang = """Option for tidal boundary conditions. For real tides, option 1 is
+recommended. This keyword has been an array with a value given per
+liquid boundary, separated by semicolons, since version 7.1. This
+enables to have tidal conditions (or not) computed on liquid boundaries
+with prescribed velocities or depths, avoiding a clash when using weirs
+in the domain. 0 codes for conditions other than tidal. BEWARE since
+version 7.1! Old models must be changed if their tidal boundary is not
+number 1. In that case this keyword must be changed and more values
+given. Possible calibration with the keywords COEFFICIENT TO ADJUST
+TIDAL RANGE, COEFFICENT TO CALIBRATE TIDAL VELOCITIES, and COEFFICIENT
+TO ADJUST SEA LEVEL.""",
+ ),
+# -----------------------------------
+ TIDAL_DATA_BASE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["NO DEFAULT VALUE","JMJ","TPXO","MISCELLANEOUS (LEGOS-NEA, FES20XX, PREVIMER...)"],
+ defaut = "NO DEFAULT VALUE",
+ fr = """Pour JMJ, renseigner la localisation du fichier bdd\_jmj et geofin
+dans les mots-cles BASE DE DONNEES DE MAREE et FICHIER DU MODELE DE
+MAREE. Pour TPXO, LEGOS-NEA, FES20XX et PREVIMER, l''utilisateur doit
+telecharger les fichiers de constantes harmoniques sur internet""",
+ ang = """For JMJ, indicate the location of the files bdd\_jmj and geofin with
+keywords TIDE DATA BASE and TIDAL MODEL FILE. For TPXO, LEGOS-NEA,
+FES20XX and PREVIMER, the user has to download files of harmonic
+constituents on the internet""",
+ ),
+# -----------------------------------
+ b_TIDAL_DATA_BASEG = BLOC(condition="TIDAL_DATA_BASE == 'TPXO'",
+# -----------------------------------
+ ),
+# -----------------------------------
+ HARMONIC_CONSTANTS_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Constantes harmoniques extraites du fichier du modele de maree""",
+ ang = """Harmonic constants extracted from the tidalmodel file""",
+ ),
+# -----------------------------------
+ TIDAL_MODEL_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Fichier de geometrie du modele dont sont extraites
+les constantes harmoniques""",
+ ang = """Geometry file of the model from which harmonic constituents
+are extracted""",
+ ),
+# -----------------------------------
+ TIDAL_MODEL_FILE_FORMAT = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SERAFIN?','SERAFIND','MED'],
+ defaut = 'SERAFIN?',
+ fr = """Format du \telkey{FICHIER DU MODELE DE MAREE}.
+Les valeurs possibles sont :
+\begin{itemize}
+\item SERAFIN : format standard simple precision pour \tel ;
+\item SERAFIND: format standard double precision pour \tel ;
+\item MED : format MED double precision base sur HDF5.
+\end{itemize}""",
+ ang = """Format of the \telkey{TIDAL MODEL FILE}.
+Possible choices are:
+\begin{itemize}
+\item SERAFIN : classical single precision format in \tel,
+\item SERAFIND: classical double precision format in \tel,
+\item MED : MED double precision format based on HDF5.
+\end{itemize}""",
+ ),
+# -----------------------------------
+ ASCII_DATABASE_FOR_TIDE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Base de donnees de constantes harmoniques
+tirees du fichier du modele de maree.
+Ancien nom en version 6.1 : BASE DE DONNEES DE MAREE""",
+ ang = """Tide data base of harmonic constituents
+extracted from the tidal model file.
+Old name in 6.1 version: TIDE DATA BASE""",
+ ),
+# -----------------------------------
+ COEFFICIENT_TO_CALIBRATE_TIDAL_RANGE = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 1.,
+ fr = """Coefficient pour ajuster le marnage de l''onde de maree
+aux frontieres maritimes""",
+ ang = """Coefficient to calibrate the tidal range of tidal wave
+at tidal open boundary conditions""",
+ ),
+# -----------------------------------
+ COEFFICIENT_TO_CALIBRATE_TIDAL_VELOCITIES = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'R',
+ defaut = 999999.,
+ fr = """Coefficient pour ajuster les composantes de vitesse
+de l''onde de maree aux frontieres maritimes.
+La valeur par defaut 999999. signifie que c''est la racine carree
+du COEFFICIENT DE CALAGE DU MARNAGE qui est prise""",
+ ang = """Coefficient to calibrate the tidal velocities of tidal wave
+at tidal open boundary conditions.
+Default value 999999. means that the square root of
+COEFFICIENT TO CALIBRATE TIDAL RANGE is taken""",
+ ),
+# -----------------------------------
+ LOCAL_NUMBER_OF_THE_POINT_TO_CALIBRATE_HIGH_WATER = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 0,
+ fr = """Numero local du point entre 1 et le nombre de points de frontiere
+maritime (du FICHIER DES CONSTANTES HARMONIQUES) ou les conditions aux
+limites de maree sont calculees avec les bases de donnees JMJ, NEA, FES,
+PREVIMER (sauf les bases de type TPXO). Les ondes de maree sont
+dephasees par rapport a ce point pour debuter le calcul par une pleine
+mer (en marees schematiques seulement).""",
+ ang = """Local number between 1 and the number of tidal boundary points (of the
+HARMONIC CONSTANTS FILE) where the tidal boundary conditions are
+computed with JMJ, NEA, FES, PREVIMER databases (except TPXO-type
+databases). The tidal constituents have their phase shifted with respect
+to this point to start the simulation with a high water (for schematic
+tides only).""",
+ ),
+ ),
+# -----------------------------------
+ PHYSICAL_PARAMETERS = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ TIDE_GENERATING_FORCE = SIMP(statut ='o',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Active la prise en compte de la force generatrice de la maree""",
+ ang = """The tide generating force is taken into account.""",
+ ),
+# -----------------------------------
+ b_TIDE_GENERATING_FORCEG = BLOC(condition="TIDE_GENERATING_FORCE == True",
+# -----------------------------------
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+COUPLING = PROC(nom= "COUPLING",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ COUPLING_WITH = SIMP(statut ='o',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['SISYPHE','TOMAWAC','DELWAQ'],
+ defaut = '',
+ fr = """Liste des codes avec lesquels on couple Telemac-2D
+ SISYPHE : couplage interne avec Sisyphe
+ TOMAWAC : couplage interne avec Tomawac
+ DELWAQ : sortie de fichiers de resultats pour Delwaq""",
+ ang = """List of codes to be coupled with Telemac-2D
+ SISYPHE : internal coupling with Sisyphe
+ TOMAWAC : internal coupling with Tomawac
+ DELWAQ: will yield results file for Delwaq""",
+ ),
+# -----------------------------------
+ NAMES_OF_CLANDESTINE_VARIABLES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min= 2, max= 2,
+ fr = """Noms de variables qui ne sont pas utilisees par TELEMAC;
+mais qui doivent etre conservees lors de son execution.
+Ceci peut etre utilise entre autres lors du couplage de TELEMAC
+avec un autre code.
+Les variables clandestines sont alors des variables propres a l''autre
+code et sont rendues dans le fichier de resultats.""",
+ ang = """Names of variables that are not used by TELEMAC, but should be
+preserved when it is being run. This keyword may be used, for instance
+when it if TELEMAC is coupled with another code. Thus, the clandestine
+variables belong to the other code and are given back in the results
+file.""",
+ ),
+# -----------------------------------
+ COUPLING_DIRECTORY = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """Nom complet du dossier d echange des fichiers
+ pour couplage de codes""",
+ ang = """Name with full path of the directory where the files will
+ be exchanged for coupling""",
+ ),
+# -----------------------------------
+ DELWAQ = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ DELWAQ_STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ DELWAQ_PRINTOUT_PERIOD = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """Periode de sortie des resultats pour Delwaq""",
+ ang = """Printout period for Delwaq file""",
+ ),
+# -----------------------------------
+ EXCHANGES_BETWEEN_NODES_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ NODES_DISTANCES_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ BOTTOM_SURFACES_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ VOLUMES_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ EXCHANGE_AREAS_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ VERTICAL_FLUXES_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ VELOCITY_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ DIFFUSIVITY_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ TEMPERATURE_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ SALINITY_DELWAQ_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)','Sauvegarde'),
+ defaut = '',
+ fr = """Fichier de resultats pour le couplage avec Delwaq""",
+ ang = """Results file for coupling with Delwaq""",
+ ),
+# -----------------------------------
+ VELOCITY_FOR_DELWAQ = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Decide de la sortie de la vitesse pour Delwaq""",
+ ang = """Triggers output of velocity for Delwaq""",
+ ),
+# -----------------------------------
+ DIFFUSIVITY_FOR_DELWAQ = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Decide de la sortie du coefficient de diffusion pour Delwaq""",
+ ang = """Triggers output of diffusion for Delwaq""",
+ ),
+# -----------------------------------
+ TEMPERATURE_FOR_DELWAQ = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Decide de la sortie de la temperature pour Delwaq""",
+ ang = """Triggers output of temperature for Delwaq""",
+ ),
+# -----------------------------------
+ SALINITY_FOR_DELWAQ = SIMP(statut ='f',
+# -----------------------------------
+ typ = bool,
+ defaut = False,
+ fr = """Decide de la sortie de la salinite pour Delwaq""",
+ ang = """Triggers output of salinity for Delwaq""",
+ ),
+ ),
+# -----------------------------------
+ SISYPHE = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ SISYPHE_STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """Fichier des parametres de Sisyphe en cas de couplage interne""",
+ ang = """Sisyphe parameter file in case of internal coupling""",
+ ),
+# -----------------------------------
+ COUPLING_PERIOD_FOR_SISYPHE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """pour eviter de faire le couplage a chaque pas de temps""",
+ ang = """to avoid coupling at every time-step""",
+ ),
+ ),
+# -----------------------------------
+ TOMAWAC = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ TOMAWAC_STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """Fichier des parametres de Tomawac en cas de couplage interne""",
+ ang = """Tomawac parameter file in case of internal coupling""",
+ ),
+# -----------------------------------
+ COUPLING_PERIOD_FOR_TOMAWAC = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'I',
+ defaut = 1,
+ fr = """pour eviter de faire le couplage a chaque pas de temps""",
+ ang = """to avoid coupling at every time-step""",
+ ),
+ ),
+# -----------------------------------
+ WAQTEL = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ WAQTEL_STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """fichier des parametres physiques pour les processus de qualite d eau
+(internes non ceux de DELWAQ)""",
+ ang = """file for physical parameters of waq processes (local ones of
+Telemac-tracer not those of DELWAQ)""",
+ ),
+ ),
+# -----------------------------------
+ KHIONE = FACT(statut='o',
+# -----------------------------------
+# -----------------------------------
+ KHIONE_STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = '',
+ fr = """Fichier des parametres physiques pour les processus liees aux glaces""",
+ ang = """Steering file for physical parameters of ice processes""",
+ ),
+ ),
+)
+# -----------------------------------------------------------------------
+INTERNAL = PROC(nom= "INTERNAL",op = None,
+# -----------------------------------------------------------------------
+# -----------------------------------
+ LANGUAGE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ["FRANCAIS","ANGLAIS"],
+ defaut = "ANGLAIS",
+ fr = """1 : FRANCAIS 2 : ANGLAIS""",
+ ang = """1: FRENCH 2: ENGLISH""",
+ ),
+# -----------------------------------
+ STEERING_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = '',
+ fr = """Nom du fichier contenant les parametres du calcul a realiser.""",
+ ang = """Name of the file containing the parameters of the computation
+Written by the user.""",
+ ),
+# -----------------------------------
+ DICTIONARY = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'),
+ defaut = 'telemac2d.dico',
+ fr = """Dictionnaire des mots cles.""",
+ ang = """Key word dictionary.""",
+ ),
+# -----------------------------------
+ PARTITIONING_TOOL = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ into = ['METIS','SCOTCH','PARMETIS','PTSCOTCH'],
+ defaut = 'METIS',
+ fr = """CHOIX DU PARTITIONNEUR
+1 : METIS
+2 : SCOTCH
+3 : PARMETIS
+4 : PTSCOTCH
+etc...""",
+ ang = """PARTITIONING TOOL SELECTION
+1 : METIS
+2 : SCOTCH
+3 : PARMETIS
+4 : PTSCOTCH
+etc...""",
+ ),
+# -----------------------------------
+ RELEASE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = 'TRUNK',
+ fr = """Numero de version des bibliotheques utilisees par TELEMAC.
+SUR UNE STATION DE TRAVAIL
+5 versions sont donnees correspondant a :
+TELEMAC,DAMO,UTILE,BIEF,HP""",
+ ang = """version number of the libraries used by TELEMAC.
+ON A WORKSTATION
+5 numbers are given, corresponding to the libraries called:
+TELEMAC,DAMO,UTILE,BIEF,HP""",
+ ),
+# -----------------------------------
+ LIST_OF_FILES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=46, max=46,
+ defaut = 'STEERING FILE;DICTIONARY;FORTRAN FILE;GEOMETRY FILE;BOUNDARY CONDITIONS FILE;RESULTS FILE;PREVIOUS COMPUTATION FILE;BOTTOM TOPOGRAPHY FILE;BINARY DATA FILE 1;BINARY DATA FILE 2;FORMATTED DATA FILE 1;FORMATTED DATA FILE 2;BINARY RESULTS FILE;FORMATTED RESULTS FILE;REFERENCE FILE;LIQUID BOUNDARIES FILE;FRICTION DATA FILE;VOLUMES DELWAQ FILE;EXCHANGE AREAS DELWAQ FILE;VERTICAL FLUXES DELWAQ FILE;SALINITY DELWAQ FILE;VELOCITY DELWAQ FILE;DIFFUSIVITY DELWAQ FILE;BOTTOM SURFACES DELWAQ FILE;EXCHANGES BETWEEN NODES DELWAQ FILE;NODES DISTANCES DELWAQ FILE;TEMPERATURE DELWAQ FILE;DELWAQ STEERING FILE;STAGE-DISCHARGE CURVES FILE;SOURCES FILE;SECTIONS INPUT FILE;SECTIONS OUTPUT FILE;OIL SPILL STEERING FILE;HARMONIC CONSTANTS FILE;TIDAL MODEL FILE;ASCII DATABASE FOR TIDE;BINARY DATABASE 1 FOR TIDE;BINARY DATABASE 2 FOR TIDE;WEIRS DATA FILE;CULVERTS DATA FILE;BREACHES DATA FILE;DROGUES FILE;ZONES FILE;FLUXLINE INPUT FILE;ASCII ATMOSPHERIC DATA FILE;BINARY ATMOSPHERIC DATA FILE',
+ fr = """Noms des fichiers exploites par le code""",
+ ang = """File names of the used files""",
+ ),
+# -----------------------------------
+ DESCRIPTION_OF_LIBRARIES = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM', min=11, max=11,
+ defaut = 'builds|PPP|lib|telemac2dMMMVVV.LLL;builds|PPP|lib|sisypheMMMVVV.LLL;builds|PPP|lib|tomawacMMMVVV.LLL;builds|PPP|lib|nestorMMMVVV.LLL;builds|PPP|lib|waqtelMMMVVV.LLL;builds|PPP|lib|stbtelMMMVVV.LLL;builds|PPP|lib|biefMMMVVV.LLL;builds|PPP|lib|hermesMMMVVV.LLL;builds|PPP|lib|damoMMMVVV.LLL;builds|PPP|lib|parallelMMMVVV.LLL;builds|PPP|lib|specialMMMVVV.LLL',
+ fr = """Description des librairies de T2D""",
+ ang = """LIBRARIES description""",
+ ),
+# -----------------------------------
+ DEFAULT_EXECUTABLE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = 'builds|PPP|bin|telemac2dMMMVVV.exe',
+ fr = """Executable par defaut de T2D""",
+ ang = """Default executable for T2D""",
+ ),
+# -----------------------------------
+ DEFAULT_PARALLEL_EXECUTABLE = SIMP(statut ='f',
+# -----------------------------------
+ typ = 'TXM',
+ defaut = 'builds|PPP|bin|telemac2dMMMVVV.exe',
+ fr = """Executable parallele par defaut de T2D""",
+ ang = """Default parallel executable for T2D""",
+ ),
+)
+# -----------------------------------------------------------------------
+MISCELLANEOUS = PROC(nom= "MISCELLANEOUS",op = None,
+# -----------------------------------------------------------------------
+ UIinfo = {"groupes": ("CACHE")},
+# -----------------------------------
+ NESTOR_ACTION_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'), max='**',
+ defaut = '',
+ fr = """Nom du fichier de commandes de nestor""",
+ ang = """Name of the Nestor steering file""",
+ ),
+# -----------------------------------
+ NESTOR_POLYGON_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'), max='**',
+ defaut = '',
+ fr = """Nom du fichier de polygons de Nestor""",
+ ang = """Name of the Nestor polygon file""",
+ ),
+# -----------------------------------
+ NESTOR_SURFACE_REFERENCE_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'), max='**',
+ defaut = '',
+ fr = """Nom du fichier de reference surface de Nestor""",
+ ang = """Name of the Nestor file which contains the reference
+ water surface""",
+ ),
+# -----------------------------------
+ NESTOR_RESTART_FILE = SIMP(statut ='f',
+# -----------------------------------
+ typ = ('Fichier','All Files (*)'), max='**',
+ defaut = '',
+ fr = """Nom du fichier de Nestor restart""",
+ ang = """Name of the Nestor restart file""",
+ ),
+)
+TEXTE_NEW_JDC = "\
+COMPUTATION_ENVIRONMENT();\
+HYDRO();\
+GENERAL_PARAMETERS();\
+NUMERICAL_PARAMETERS();\
+TURBULENCE();\
+MISCELLANEOUS();\
+"
+Ordre_Des_Commandes = (
+'COMPUTATION_ENVIRONMENT',
+'HYDRO',
+'GENERAL_PARAMETERS',
+'NUMERICAL_PARAMETERS',
+'TURBULENCE',
+'TIDAL_FLATS_INFO',
+'TRACERS',
+'PARTICLE_TRANSPORT',
+'HYDRAULIC_STRUCTURES',
+'TIDES',
+'COUPLING',
+'INTERNAL',
+'MISCELLANEOUS')
+try:
+ import TelApy
+ source = "eficas"
+except Exception as excpt:
+ source = "Telemac"
+enum = source+'.telemac2d_enum_auto'
+dicoCasEn = source+'.telemac2d_dicoCasEnToCata'
+dicoCasFr = source+'.telemac2d_dicoCasFrToCata'