]> SALOME platform Git repositories - modules/smesh.git/blob - src/Tools/blocFissure/ihm/fissureCoude_ihm.py
Salome HOME
Install tests.set
[modules/smesh.git] / src / Tools / blocFissure / ihm / fissureCoude_ihm.py
1 # -*- coding: utf-8 -*-
2
3 from blocFissure.gmu.fissureCoude  import fissureCoude
4
5 class fissureCoude_ihm(fissureCoude):
6   """
7   problème de fissure du Coude :
8   pour version IHM graphique
9   """
10
11 # ---------------------------------------------------------------------------
12   def setDicoParams(self,dico):
13     self.dico = dico
14
15 # ---------------------------------------------------------------------------
16   def setParamGeometrieSaine(self):
17     """
18     Paramètres géométriques du tuyau coudé sain:
19     angleCoude
20     r_cintr
21     l_tube_p1
22     l_tube_p2
23     epais
24     de
25     """
26     self.geomParams = dict(angleCoude = self.dico['angle'],
27                            r_cintr    = self.dico['rCintr'],
28                            l_tube_p1  = self.dico['lTubeP1'],
29                            l_tube_p2  = self.dico['lTubeP2'],
30                            epais      = self.dico['epais'],
31                            de         = self.dico['dext'])
32
33   # ---------------------------------------------------------------------------
34   def setParamMaillageSain(self):
35     self.meshParams = dict(n_long_p1    = self.dico['nbAxeTubeP1'],
36                            n_ep         = self.dico['nbEpaisseur'],
37                            n_long_coude = self.dico['nbAxeCoude'],
38                            n_circ_g     = self.dico['nbCirconf'],
39                            n_circ_d     = self.dico['nbCirconf'],
40                            n_long_p2    = self.dico['nbAxeTubeP2'])
41
42 # ---------------------------------------------------------------------------
43   def setParamShapeFissure(self):
44     """
45     paramètres de la fissure pour le tuyau coude
46     profondeur  : 0 < profondeur <= épaisseur
47     rayonPipe   : rayon du pipe correspondant au maillage rayonnant
48     lenSegPipe  : longueur des mailles rayonnantes le long du fond de fissure (= rayonPipe par défaut)
49     azimut      : entre 0 et 360°
50     alpha       : 0 < alpha < angleCoude
51     longueur    : <=2*profondeur ==> force une fissure elliptique (longueur/profondeur = grand axe/petit axe).
52     orientation : 0° : longitudinale, 90° : circonférentielle, autre : uniquement fissures elliptiques
53     lgInfluence : distance autour de la shape de fissure a remailler (si 0, pris égal à profondeur. A ajuster selon le maillage)
54     elliptique  : True : fissure elliptique (longueur/profondeur = grand axe/petit axe); False : fissure longue (fond de fissure de profondeur constante, demi-cercles aux extrémites)
55     pointIn_x   : optionnel coordonnées x d'un point dans le solide, pas trop loin du centre du fond de fissure (idem y,z)
56     externe     : True : fissure face externe, False : fissure face interne
57     """
58     print "setParamShapeFissure", self.nomCas
59     self.shapeFissureParams = dict(profondeur  = self.dico['profondeur'],
60                                    rayonPipe   = self.dico['rayonTore'],
61                                    lenSegPipe  = self.dico['lenSegPipe'],
62                                    azimut      = self.dico['azimut'],
63                                    alpha       = self.dico['posiAngul'],
64                                    longueur    = self.dico['longueur'],
65                                    orientation = self.dico['orientation'],
66                                    lgInfluence = self.dico['influence'],
67                                    elliptique  = self.dico['cbForceEllipse'],
68                                    externe     = self.dico['rbFissExt'])
69
70 # ---------------------------------------------------------------------------
71   def setParamMaillageFissure(self):
72     """
73     Paramètres du maillage de la fissure pour le tuyau coudé
74     Voir également setParamShapeFissure, paramètres rayonPipe et lenSegPipe.
75     nbSegRad = nombre de couronnes
76     nbSegCercle = nombre de secteurs
77     areteFaceFissure = taille cible de l'arête des triangles en face de fissure.
78     """
79     self.maillageFissureParams = dict(nomRep        = '.',
80                                       nomFicSain    = self.nomCas,
81                                       nomFicFissure = 'fissure_' + self.nomCas,
82                                       nbsegRad      = self.dico['nbCouronnes'],
83                                       nbsegCercle   = self.dico['nbSecteurs'],
84                                       areteFaceFissure = self.dico['aretesFaceFissure'])
85
86   # ---------------------------------------------------------------------------
87   def setReferencesMaillageFissure(self):
88     self.referencesMaillageFissure = dict(Entity_Node            = 0,
89                                           Entity_Quad_Edge       = 0,
90                                           Entity_Quad_Triangle   = 0,
91                                           Entity_Quad_Quadrangle = 0,
92                                           Entity_Quad_Tetra      = 0,
93                                           Entity_Quad_Hexa       = 0,
94                                           Entity_Quad_Penta      = 0,
95                                           Entity_Quad_Pyramid    = 0)
96