Salome HOME
Merge branch 'BR_H2018_DRAFT' into BR_2018_V8_5
[modules/hydro.git] / doc / salome / tutorial / miseEnDonneesTelemac.rst
1 ..
2    Copyright (C) 2015-2016 EDF
3
4    This file is part of SALOME HYDRO module.
5
6    SALOME HYDRO module is free software: you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation, either version 3 of the License, or
9    (at your option) any later version.
10
11    SALOME HYDRO module is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15
16    You should have received a copy of the GNU General Public License
17    along with SALOME HYDRO module.  If not, see <http://www.gnu.org/licenses/>.
18
19 #########################################
20 Mise en données TELEMAC
21 #########################################
22
23 .. |HYDROSolver| image:: /_static/HYDROSolver.png
24    :align: middle
25    :width: 16pt
26    :height: 16pt
27
28 .. |eficas_04| image:: /_static/eficas_04.png
29    :align: middle
30    :width: 16pt
31    :height: 16pt
32
33 .. |genereCondlim| image:: /_static/genereCondlim.png
34    :align: middle
35    
36 .. |eficas_01| image:: /_static/eficas_01.png
37    :align: middle
38    
39 .. |eficas_02| image:: /_static/eficas_02.png
40    :align: middle
41    
42 .. |eficas_03| image:: /_static/eficas_03.png
43    :align: middle
44    
45 .. |eficas_20| image:: /_static/eficas_20.png
46    :align: middle
47    
48 .. |eficas_21| image:: /_static/eficas_21.png
49    :align: middle
50    
51 .. |eficas_22| image:: /_static/eficas_22.png
52    :align: middle
53    
54 .. |eficas_23| image:: /_static/eficas_23.png
55    :align: middle
56
57 .. |salomeShell| image:: /_static/salomeShell.png
58    :align: middle
59
60 .. |initialisationHauteurEau| image:: /_static/initialisationHauteurEau.png
61    :align: middle
62
63 .. |choixCodeEficas| image:: /_static/choixCodeEficas.png
64    :align: middle
65
66 .. |rechercheEficas| image:: /_static/rechercheEficas.png
67    :align: middle
68
69 Une fois le maillage généré avec l'altimétrie, il reste à définir la nature des zones de conditions limites,
70 les valeurs des conditions limites de débit et de hauteur d'eau au cours du temps, et l'ensemble des
71 paramètres physiques et numériques du calcul.
72 Il faut se reporter au manuel de Telemac pour la définition de ces différents paramètres.
73
74 Ces informations sont regroupées dans plusieurs fichiers de texte (ASCII) à générer ou éditer manuellement.
75
76 **Ces différents fichiers seront rangés dans le même répertoire que le maillage.**
77
78 Il faut activer le module HYDROSOLVER, via la liste défilante des modules, ou son icône dans le bandeau : |HYDROSolver|.
79 Le module HYDROSOLVER prend en charge la mise en donnée physico-numérique et les calculs pour les codes
80 Telemac et Mascaret ainsi que leur couplages.
81
82 Caractérisation des zones de conditions limites
83 ===============================================
84
85 Les zones de conditions limites ont été définies dans les étapes précédentes,
86 et sont concrétisées par des groupes nommés d'éléments dans le maillage.
87
88 Le fichier *condlim.bcd* associe à chaque groupe ses caractéristiques :
89 entrée, sortie, paroi... Quatre valeurs entières définissent un type de condition limite.
90
91 La première ligne indique le nombre de conditions limites définies, il y a ensuite une ligne par condition limite.
92 Chaque ligne comprend 4 entiers (le type) et le nom du groupe.
93
94 Nous pouvons générer le fichier à partir de la commande *Edit boundary conditions file* du module *HYDROSOLVER*.
95
96 Il faut définir en entrée le chemin du fichier MED utilisé, et en sortie, le chemin du fichier des zones de conditions limites.
97 L'entrée *Boundary condition file* ne sert que pour lire un fichier existant.
98
99 Il faut sélectionner le type de condition limite sur les zones amont, aval, bord gauche et droit, et ne rien mettre sur les autres groupes.
100
101   |genereCondlim|
102   
103 Le fichier résultat ressemble à ceci :
104
105 .. literalinclude:: condlim.bcd
106     :lines: 1-
107
108 * **Remarque** : Il n'est plus nécessaire de créer le fichier *.cli* prévu dans le manuel de Telemac, 
109   qui liste l'ensemble des noeuds de conditions limites avec les types associés. Ce fichier est généré
110   automatiquement.
111
112 Valeurs des conditions limites de débit et hauteur d'eau
113 ========================================================
114
115 Le fichier *init.lqd* donne les valeurs des conditions limites de débit et de hauteur d'eau au cours du temps.
116 Il faut se reporter au manuel de Telemac pour sa définition précise.
117
118 .. literalinclude:: init.lqd
119     :lines: 1-
120
121 Ajout d'un champ initial dans le fichier MED
122 ============================================
123
124 Afin d'initialiser le calcul, on peut utiliser le script suivant pour imposer une hauteur
125 d'eau initiale ou une cote initiale dans les groupes de faces qui nous intéressent,
126 en l'occurence, ici, dans le lit mineur.
127
128 .. literalinclude:: add_field_h_on_group.py
129     :lines: 1-
130
131 Il suffit de remplir :
132
133  * le nom du fichier MED,
134  * le nom du maillage (dans le module SMESH) à partir duquel il a été construit,
135  * les groupes de faces auxquels on souhaite ajouter une cote ou une hauteur d'eau initiale,
136  * le nom du champ ajouté (*WATER_DEPTH* ou *WATER ELEVATION*).
137
138 Pour lancer le script :
139
140  * ouvrir un SALOME shell.
141
142   |salomeShell|
143
144  * se placer dans le répertoire où l'on a rangé le script *add_field_h_on_group.py*,
145
146  * exécuter le script : *python add_field_h_on_group.py*.
147
148 Le champ *hauteur d'eau* est ajouté au fichier MED. Penser à enregistrer le fichier précédent
149 (comprenant Z et Ks) sous un autre nom pour le conserver pour réutilisation en cas de besoin.
150
151   |initialisationHauteurEau|
152
153 Paramètres physiques et numériques du calcul
154 ============================================
155
156 Le fichier *CasGaronne.cas* liste les autres fichiers, qui doivent être dans le même répertoire.
157 Il donne ensuite les différents paramètres physico-numériques nécessaires au calcul.
158 De même que précédemment, il faut se reporter au manuel de Telemac pour la définition de ces paramètres.
159
160 Voici la version générée avec EFICAS (voir ci-dessous l'utilisation d'EFICAS)
161
162 .. literalinclude:: CasGaronne.cas
163     :lines: 1-
164
165 Et la version plus légère, ou seuls figurent les mots clefs différents de leur valeur par défaut.
166
167 .. literalinclude:: CasGaronne.Lcas
168     :lines: 1-
169
170 Edition du fichier cas avec EFICAS
171 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
172
173 Il existe 2 méthodes pour réaliser cette action, avec le module *HYDROSOLVER* : 
174
175 * **avec les menus :** dans le menu HYDRO, cliquer sur *Edit cas file*
176
177   |eficas_01|
178
179 * **avec les icônes :** quand on active le module Hydrosolver, de nouveaux boutons apparaissent dans la barre d'outils.
180   Cliquer à droite sur Edit cas file
181   
182   |eficas_02|
183   
184 Cliquer sur New pour créer un fichier cas. 
185
186 Sélectionner le code souhaité : dans notre cas, *telemac2d*.
187
188   |choixCodeEficas|
189   
190   |eficas_03|
191   
192 Renseigner ce qui est rouge. Quand une sous-rubrique ou rubrique est complète elle passe au vert.
193 Ce qui est en vert est rempli par défaut mais l'utilisateur a la main dessus.
194 Penser à enregistrer régulièrement le cas créé. Pour cela, aller dans *File / Save* ou *Save as*, 
195 ou cliquer sur l'icône |eficas_04| le fichier sera enregistré en *.comm* ou *.jdc*.
196
197 Les puces vertes sont de deux couleurs :
198
199  * Quand la valeur renseignée est la valeur par défaut, la puce est vert foncé.
200  * Quand la valeur renseignée est différente de la valeur par défaut, la puce est vert clair.
201
202 Comment fonctionne EFICAS ?
203 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
204
205 **remarque** : Pour chercher où est rangé un mot clé, aller dans le menu *Edit / Find Keyword*.
206
207 La fenêtre suivante donne l'emplacement du mot clé ainsi que la documentation associée.
208
209   |rechercheEficas|
210
211 Quand on se place dans l'interface centrale, au niveau de la rubrique, dans la partie de droite intitulée Settings *NOM DE RUBRIQUE*,
212 apparaissent des mots clés facultatifs que l'on peut rajouter dans la sous-rubrique correspondante,
213 en double cliquant sur le carré devant le mot clé.
214
215 **Exemple :** je souhaite rajouter le mot clé *Control_section* dans *Output_Files*. Je double-clique dessus à droite :
216   
217   |eficas_20|
218
219 Il apparaît alors dans la sous-rubrique *Output_Files*. Si je me place dessus dans l'écran central, 
220 j'ai d'autres mots clés qui se présentent à moi dans la partie de droite sous le titre 
221 *Control_Section* que je peux rajouter de la même manière.
222
223   |eficas_21|
224   
225 Il est également possible d'avoir l'aide du mot clé en direct. Pour cela, il suffit de se placer sur le mot clé et l'aide apparaît :  
226
227   |eficas_22|
228
229 Si on clique sur le mot clé avec la souris l'aide apparaît en bas à gauche :
230
231   |eficas_23|
232
233 **Rangement des paramètres par rubriques et sous-rubriques**
234
235 Dans *Computation_Environment*, on retrouve par défaut :
236
237  * *Initialization* : concerne les fichiers de données d'entrée comme le fichier de géométrie et le fichier des conditions limites.
238    Pour prendre en compte le titre, taper le nom souhaité et faites entrer.
239    
240  * *Restart* : pour repartir d'un calcul précédent
241  
242  * *Output_files* : concerne les fichiers résultats, le listing et leurs caractéristiques.
243
244 Dans *Hydro*, on retrouve par défaut :
245
246  * *Boundary_Conditions* : concerne les fichiers de condition limites
247    (fichier des frontières liquides, fichier des courbes de tarage, cote ou débit imposé...)
248    
249  * *Physical_Parameters_Hydro* : concerne le frottement. L'utilisateur peut rajouter ce qui concerne les vagues,
250    la météorologie, les sources, la qualité d'eau...
251    
252  * *Numerical_Parameters_Hydro* : concerne les équations utilisées, le traitement du système linéaire.
253
254 Dans General_Parameters, on retrouve par défaut :
255
256  * *Debugger* : en mode debugger ou non
257
258  * *Time* : concerne le pas de temps, durée de la simulation...
259  
260  * *Location* : concerne l'origine des coordonnées...
261
262 Dans Numerical_Parameters, on retrouve par défaut :
263
264  * *Solver_Info* : concerne le solveur
265
266  * *Discretizations_Implicitation* : concerne l'implicitation de la hauteur, de la vitesse, la discrétisation en espace...
267
268  * *Propagation_Info*
269
270  * *Advection_Info* : concerne le mass lumping, la compatibilité du gradient de surface libre...
271
272  * *Diffusion* : concerne la diffusion des vitesses, l'option pour la diffusion des vitesses...
273
274  * *Automatic_Differentiation*
275
276  * *Advanced* : concerne le stockage de matrice, le produit vecteur-matrice...
277
278 **Développement à venir**
279
280 A terme, l'utilisateur pourra choisir parmi des "fichiers cas modèles" pré-remplis. On trouvera parmi ceux-ci : 
281
282  * un fichier cas modèle inondation,
283
284  * un fichier cas modèle maritime,
285
286  * un fichier cas modèle thermique.
287
288 .. only:: html
289
290    :ref:`ref_exempleInondation`