2 Copyright (C) 2015-2016 EDF
4 This file is part of SALOME HYDRO module.
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.
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.
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/>.
19 #########################################
21 #########################################
23 .. |axeDigue| image:: /_static/axeDigue.png
26 .. |creationDigue_1| image:: /_static/creationDigue_1.png
29 .. |modifModeProfile| image:: /_static/modifModeProfile.png
32 .. |creationDigue_2| image:: /_static/creationDigue_2.png
35 .. |creationDigue_3| image:: /_static/creationDigue_3.png
38 .. |altitudeDigue| image:: /_static/altitudeDigue.png
41 .. |polyline3D| image:: /_static/polyline3D.png
44 .. |artificialDigue| image:: /_static/artificialDigue.png
47 .. |zoomDigue| image:: /_static/zoomDigue.png
50 Les objets artificiels regroupent les digues et les canaux. Ces deux types d'objets
51 sont construits sur le même principe :
53 * une section verticale constante,
55 * un axe 3D, c'est à dire une polyligne 3D selon laquelle la section est extrudée.
57 L'axe 3D est construit à partir d'une polyligne dans le plan horizontal, à laquelle
58 on associe une ligne d'altitude définie dans un plan vertical, qui donne la cote Z
59 en fonction de l'abscisse curviligne de la polyligne horizontale.
61 La ligne d'altitude est soit construite explicitement, soit obtenue en projetant
62 la polyligne horizontale sur un champ de bathymétrie.
64 Lors du calcul de l'altitude aux noeuds du maillage (interpolation en Z), les noeuds situés sur la digue
65 sont traités spécifiquement : l'altitude du noeud est prise sur la forme géométrique 3D de
66 la digue telle qu'elle a été définie ci-dessus.
71 Pour définir l'axe horizontal de la digue, nous créons une polyligne non fermée, de type spline,
72 avec l'éditeur de polyligne (menu contextuel de la rubrique *POLYLIGNES* dans l'arbre de
75 Nous nommons cette polyligne *axeDigue*.
79 La section de la digue se crée avec le menu contextuel *Create profile* de la rubrique *PROFILES*
80 dans l'arbre de l'étude SALOME.
82 Nous nommons cette section *sectionDigue*.
84 Il faut dessiner à main levée la forme approximative de la section, nous l'éditerons ensuite
85 pour mettre des cotes précises.
89 Pour corriger les coordonnées des noeuds, il faut se placer en mode Modification :
93 Les noeuds peuvent être sélectionnés en bloc en les englobant dans un rectangle, dans la vue graphique.
95 Ils s'affichent dans un tableau au dessus de la vue graphique.
97 En cliquant sur le titre de la colonne *index*, on réordonne les noeuds.
101 Pour le choix des valeurs Z, il faut savoir que l'altitude finale d'un point de la digue s'obtient
102 à partir de la section en ce point, en additionnant la cote du point sur la section à la
103 cote de la section le long du profil d'altitude.
104 Plus précisément, le calcul est le suivant :
106 * le point **A** (x,y,0) dont on veut l'altitude est projeté sur la courbe *axeDigue*
107 en un point *P* (x',y',0) tel que la droite *AP* est normale à la tangente en **P**
108 à l'axe de la digue. Le point **P** est à une distance horizontale
109 *d* = distance(A,P) de la courbe *axeDigue*.
111 * A partir de la coordonnée curviligne de **P** sur *axeDigue*, on récupère une valeur de Z0
112 sur la ligne d'altitude. Cette valeur Z0 correspond à la cote 0 de la section.
114 * Pour obtenir l'altitude finale en **P**, on calcule la cote Z1 sur la section au point d'abscisse *d*.
115 L'altitude finale est Z = Z0 +Z1.
117 * **remarque** : ce mode de calcul suppose une section symétrique par rapport à x=0.
119 Ici, la ligne d'altitude que nous allons définir correspond au sommet de la section.
120 Nous créons donc une section symétrique de 20 mètres de largeur, à flancs assez raides.
124 Il reste à créer la ligne d'altitude de la digue. Nous allons la définir explicitement
125 avec l'altitude des deux extrémités.
127 Si l'altitude de la digue est variable, il faut avoir une idée approximative de sa longueur,
128 pour construire un profil d'altitude précis (il manque une fonction d'affichage de la longueur des polylignes).
130 Si l'on définit plus de deux points, l'altitude est interpolée linéairement entre deux points,
131 et, si la courbe est plus longue que la ligne d'altitude, les valeurs de Z au delà du dernier
132 point sont prises à la cote de ce dernier point.
136 Il faut ensuite créer l'axe 3D de la dique à l'aide du menu contextuel *Create polyline 3D*
137 de la rubrique *POLYLINES 3D*.
141 Enfin, on utilise le menu contextuel *Create digue* (in french in the text!)
142 de la rubrique *ARTIFICIAL OBJECTS*.
146 Le paramètre equidistance sert lors de l'extrusion précise de la section le long de l'axe.
148 * Si la valeur est trop grande par rapport au rayon de courbure de l'axe, la section est décentrée
149 lors de son extrusion.
151 * Si la valeur est trop faible, le temps de calcul devient long.
153 On peut prendre une valeur de l'ordre de deux ou trois fois la largeur de la digue, en première
156 Pour contrôler le résultat, il faut superposer la vue de la digue et son axe.
160 Lors de la constitution du cas de calcul avec la digue, il faut isoler la digue dans une région spécifique,
161 parce que l'on va la mailler de préférence en quadrangles avec l'algorithme *Quadrangle (Medial Axis projection)*.
163 Pour le calcul d'altitude, comme la digue se superpose à un terrain naturel, l'option ZMAX est la plus logique dans le cas général.
169 Le canal se construit exactement comme la digue, avec simplement un menu spécifique *Create channel*
170 dans la rubrique *ARTIFICIAL OBJECTS*.
172 La section a une forme de cuvette, et le calcul d'altitude se fait
173 selon la même logique que pour la digue.
175 Lors de la constitution du cas de calcul avec le canal, il faut isoler le canal dans une région spécifique,
176 car il sera maillé de préférence en quadrangles avec l'algorithme *Quadrangle (Medial Axis projection)*.
178 Pour le calcul d'altitude, le canal s'inscrivant dans un terrain naturel,
179 l'option ZMIN est la plus logique dans le cas général.
183 :ref:`ref_casParticuliers`