1 # -*- coding: utf-8 -*-
2 # Copyright (C) 2014-2023 EDF
4 # This library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Lesser General Public
6 # License as published by the Free Software Foundation; either
7 # version 2.1 of the License, or (at your option) any later version.
9 # This library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 # Lesser General Public License for more details.
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with this library; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 """Fissure dans un coude - ASCOU09A"""
24 from .fissure_Coude import fissure_Coude
26 class fissure_Coude_4(fissure_Coude):
27 """probleme de fissure du Coude : ASCOU09A
32 nomProbleme = "fissure_Coude_4"
35 shapeFissureParams = dict()
36 maillageFissureParams = dict()
37 referencesMaillageFissure = dict()
39 # ---------------------------------------------------------------------------
40 def setParamGeometrieSaine(self):
42 Paramètres géométriques du tuyau coudé sain:
50 self.geomParams = dict(angleCoude = 40,
57 # ---------------------------------------------------------------------------
58 def setParamMaillageSain(self):
59 self.meshParams = dict(n_long_p1 = 16,
66 # ---------------------------------------------------------------------------
67 def setParamShapeFissure(self):
69 paramètres de la fissure
70 profondeur : 0 < profondeur <= épaisseur
71 azimut : entre 0 et 360°
72 alpha : 0 < alpha < angleCoude
73 longueur : <=2*profondeur ==> ellipse, >2*profondeur = fissure longue
74 orientation : 0° : longitudinale, 90° : circonférentielle, autre : uniquement fissures elliptiques
75 externe : True : fissure face externe, False : fissure face interne
77 self.shapeFissureParams = dict(nomRep = os.curdir,
78 nomFicSain = self.nomCas,
79 nomFicFissure = self.nomProbleme + "_fissure",
90 # ---------------------------------------------------------------------------
91 def setReferencesMaillageFissure(self):
92 from salome.smesh import smeshBuilder
93 if smeshBuilder.NETGEN_VERSION_MAJOR < 6:
94 self.referencesMaillageFissure = dict( \
95 Entity_Quad_Quadrangle = 11852, \
96 Entity_Quad_Hexa = 22208, \
97 Entity_Node = 124711, \
98 Entity_Quad_Edge = 1192, \
99 Entity_Quad_Triangle = 1534, \
100 Entity_Quad_Tetra = 12204, \
101 Entity_Quad_Pyramid = 948, \
102 Entity_Quad_Penta = 732 \
105 self.referencesMaillageFissure = dict( \
106 Entity_Quad_Quadrangle = 11852, \
107 Entity_Quad_Hexa = 22208, \
108 Entity_Node = 124493, \
109 Entity_Quad_Edge = 1192, \
110 Entity_Quad_Triangle = 1616, \
111 Entity_Quad_Tetra = 11977, \
112 Entity_Quad_Pyramid = 948, \
113 Entity_Quad_Penta = 732 \