Salome HOME
bug
[tools/eficas.git] / MT / MT_Cata_V2016.py
1 ## -*- coding: utf-8 -*-\r
2 #\r
3 ## --------------------------------------------------\r
4 ## debut entete\r
5 ## --------------------------------------------------\r
6 #\r
7 # 20120510 : suppression de la valeur par defaut de MATERIAU->PARAMETRES_MAT->NU\r
8 #            changement du nom MATERIAU->PARAMETRES_MAT->MASS_VOL en MATERIAU->PARAMETRES_MAT->RHO\r
9 #\r
10 # 20120619 : changement ordre d'affichage des macros -> ordre de création\r
11 # 20120725 : modification definition (matrices A,K,M) palier et support\r
12 # 20130411 : ajout elements dans palier generalise (mail tdg + comm tdg)\r
13 #\r
14 # todo : supprimer les noeuds -> definir les elements par leur longueur\r
15 #\r
16 #\r
17 #\r
18 #\r
19 #\r
20 \r
21 \r
22 \r
23 \r
24 from Accas import *\r
25 #\r
26 \r
27 import types\r
28 class Tuple:\r
29   def __init__(self,ntuple):\r
30     self.ntuple=ntuple\r
31 \r
32   def __convert__(self,valeur):\r
33     if type(valeur) == types.StringType:\r
34       return None\r
35     if len(valeur) != self.ntuple:\r
36       return None\r
37     return valeur\r
38 \r
39   def info(self):\r
40     return "Tuple de %s elements" % self.ntuple\r
41 \r
42   __repr__=info\r
43   __str__=info\r
44 \r
45 \r
46 #CONTEXT.debug = 1\r
47 VERSION_CATALOGUE="2016.0.0";\r
48 JdC = JDC_CATA(code = 'MT',\r
49                execmodul = None,\r
50                regles = (AU_MOINS_UN ( 'LIGNE_ARBRE',),\r
51                          AU_PLUS_UN ( 'LIGNE_ARBRE',)),\r
52                ) # Fin JDC_CATA\r
53 \r
54 class Direction(ASSD): pass\r
55 class Materiau(ASSD): pass\r
56 #class Masse(ASSD): pass\r
57 class Zone(ASSD): pass\r
58 class Palier(ASSD): pass\r
59 #class Masse(ASSD): pass\r
60 #class ConditionsAuxLimites(ASSD): pass\r
61 class LigneArbre(ASSD): pass\r
62 class Support(ASSD): pass\r
63 class Butee(ASSD): pass\r
64 class PalTor(ASSD):pass\r
65 #class Noeud(ASSD): pass\r
66 \r
67 ## def macro_noeuds(self, NOEUD, **args):\r
68 ##     """\r
69 ##     """\r
70 ##     if NOEUD is not None:\r
71 ##         self.type_sdprod(NOEUD, Noeud)\r
72 ##         pass\r
73 ##     else:\r
74 ##         raise AsException("Impossible de typer les concepts resultats")\r
75     \r
76 ##     return Noeuds\r
77 \r
78 ############################# DIRECTION ########################################\r
79 DIRECTION = MACRO(nom = "DIRECTION",\r
80                   op = None,\r
81                   sd_prod = Direction,\r
82                   reentrant = 'n',\r
83                   UIinfo = {"groupes": ("Machine tournante",)},\r
84                   fr = "Renseignement de la direction de la ligne d'arbres",\r
85                   AXE = SIMP(statut = 'o',\r
86                              typ = 'TXM',\r
87                              fr = "Direction de l'axe de la ligne d'arbres",\r
88                              min=1,\r
89                              max=1,\r
90                              into = ('HORIZONTAL','VERTICAL'),\r
91                              defaut = 'HORIZONTAL',\r
92                              ), # end AXE\r
93                  ) # end DIRECTION\r
94 \r
95 \r
96 ############################# MATERIAUX ########################################\r
97 # @todo\r
98 # introduction manuelle => dans ce cas l'utilisateur definit le\r
99 # materiau comme ci-dessous\r
100 # recuperation depuis une bibliothèque de materiau => sera specife\r
101 # plus tard\r
102 MATERIAUX = MACRO(nom = 'MATERIAUX',\r
103                  op = None,\r
104                  sd_prod = Materiau,\r
105                  reentrant = 'n',\r
106                  UIinfo = {"groupes": ("Machine tournante",)},\r
107                  fr = "Renseignement des caracteristiques des materiaux",\r
108                  TYPE_INTRO = SIMP(statut='o', \r
109                                    fr = "Mode de description des caracteristiques des materiaux",\r
110                                    typ='TXM',\r
111                                    into=('MANUELLE','FICHIER'),\r
112                                    min=1,\r
113                                    max=1,\r
114                                    defaut='MANUELLE',\r
115                                    ), # end TYPE_INTRO\r
116                  PARAMETRES_MAT = BLOC(condition = "((TYPE_INTRO == 'MANUELLE') )",\r
117                                        #MASS_VOL  = SIMP(statut='o', typ='R', min=1, max=1, fr='masse volumique'),\r
118                                        fr = "Saisie manuelle des caracteristiques du materiau",\r
119                                        RHO = SIMP(statut='o',\r
120                                                   typ='R',\r
121                                                   min=1,\r
122                                                   fr='Masse volumique (kg/m**3)',\r
123                                                   ), # end RHO\r
124                                        E = SIMP(statut='o',\r
125                                                 typ='R',\r
126                                                 min=1,\r
127                                                 max=1,\r
128                                                 fr="Module d'Young (Pa)",\r
129                                                 ), # end E\r
130                                        NU = SIMP(statut='o', \r
131                                                  typ='R',\r
132                                                  min=1,\r
133                                                  max=1,\r
134                                                  val_min=-1.0,\r
135                                                  val_max=0.5,\r
136                                                  fr='Coefficient de cisaillement (-1.0 <= NU <= 0.5)',\r
137                                                  ), # end NU\r
138                                        ALPHA = SIMP(statut='f', \r
139                                                     typ='R',\r
140                                                     min=1,\r
141                                                     max=1,\r
142                                                     fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la rigidite",\r
143                                                     ), # end ALPHA\r
144                                        BETA = SIMP(statut='f',\r
145                                                    typ='R', \r
146                                                    min=1, \r
147                                                    max=1, \r
148                                                    fr = "Coefficient permettant de construire une matrice d'amortissement visqueux proportionnel a la masse",\r
149                                                    ), # end BETA\r
150                                        GAMA = SIMP(statut='f',\r
151                                                    typ='R',\r
152                                                    min=1,\r
153                                                    max=1,\r
154                                                    fr = "Coefficient d'amortissement hysteretique permettant de definir le module d'Young complexe",\r
155                                                    ), # end GAMA\r
156                                        ), # end PARAMETRES_MAT\r
157                    FICHIER_MAT = BLOC(condition = "((TYPE_INTRO == 'FICHIER') )",\r
158                                       MATERIAU_CATALOGUE = SIMP(statut='o',\r
159                                                               fr="Fichier decrivant les caracteristiques materiaux (format decrit dans le Manuel Utilisateur)",\r
160                                                               min=1, \r
161                                                               max=1, \r
162                                                               typ=('Fichier','Fichier materiau (*.*)'), \r
163                                                               ), # end MATERIAU_CATALOGUE\r
164                                      ), # end FICHIER_MAT\r
165                                      #SIMP(typ=('Fichier','JDC Files (*.comm)'),docu='',min=1,max=1,statut='o',defaut=None)\r
166                  ) # end MATERIAU\r
167 \r
168 \r
169 \r
170 ############################# ZONES ########################################\r
171 ZONE = MACRO(nom = 'ZONE',\r
172              op = None,\r
173              sd_prod = Zone,\r
174              reentrant = 'n',\r
175              UIinfo = {"groupes":("Machine tournante",)},\r
176              fr = "Description d'une zone (comportant noeuds et elements, et en option masses ponctuelles et fissures)",\r
177              regles = (AU_MOINS_UN("ELEMENTS")),\r
178              MASSE = FACT(statut='f',\r
179                           min=0,\r
180                           max='**',\r
181                           fr = "Description des masses ponctuelles",\r
182                           #POSITION = SIMP(statut='o',\r
183                           NOEUD = SIMP(statut='o', \r
184                                           typ='TXM', \r
185                                           defaut=None, \r
186                                           fr = "Definition de la position axiale de la masse (label du noeud de la ligne d'arbres en vis-a-vis)",\r
187                                           ), # end POSITION\r
188                           TYPE_MASSE = SIMP(statut='o', \r
189                                             typ='TXM', \r
190                                             fr = "Renseignement du type de masse consideree",\r
191                                             into=('DISQUE','AILETTE','QUELCONQUE'),\r
192                                             ), # end TYPE_MASSE\r
193                           DISQUE = BLOC(condition = "((TYPE_MASSE == 'DISQUE') )",\r
194                                         TYPE_SAISIE = SIMP(statut='o',\r
195                                                            typ='TXM',\r
196                                                            fr = "Type de saisie des parametres du DISQUE",\r
197                                                            into = ('MECANIQUE','GEOMETRIQUE'),\r
198                                                            defaut = 'MECANIQUE'\r
199                                                            ), # end TYPE_SAISIE\r
200                                         PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'",\r
201                                                                     PARAMETRES = FACT(statut = 'o',\r
202                                                                                       fr = "Parametres mecaniques pour un DISQUE",\r
203                                                                                       MASSE = SIMP(statut='o',\r
204                                                                                                    typ='R',\r
205                                                                                                    val_min=0,\r
206                                                                                                    fr = "Masse du DISQUE (kg)",\r
207                                                                                                    ), # end MASSE_DISQUE\r
208                                                                                       INERTIEX = SIMP(statut='o', \r
209                                                                                                       typ='R',\r
210                                                                                                       fr = "Inertie du DISQUE en X (kg.m**2)",\r
211                                                                                                       ), # end INERTIEX\r
212                                                                                       INERTIEY = SIMP(statut='o', \r
213                                                                                                       typ='R',\r
214                                                                                                       fr = "Inertie du DISQUE en Y (kg.m**2)",\r
215                                                                                                       ), # end INERTIEY\r
216                                                                                       INERTIEZ = SIMP(statut='o', \r
217                                                                                                       typ='R',\r
218                                                                                                       fr = "Inertie du DISQUE en Z (axe de rotation de la ligne d'arbres)(kg.m**2)",\r
219                                                                                                       ), # end INERTIEZ\r
220                                                                                       ) # end PARAMETRES_DISQUE_M\r
221                                                                     ), # end PARAMETRES_MECANIQUE\r
222                                         PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'",\r
223                                                                     PARAMETRES = FACT(statut = 'o',\r
224                                                                                       fr = "Parametres geometriques pour un DISQUE",\r
225                                                                                       DIAMETRE_EXT = SIMP(statut='o',\r
226                                                                                                           typ='R',\r
227                                                                                                           val_min=0,\r
228                                                                                                           fr = "Diametre exterieur du DISQUE (m)",\r
229                                                                                                           ), # end MASSE_DISQUE\r
230                                                                                       DIAMETRE_INT = SIMP(statut='o', \r
231                                                                                                           typ='R',\r
232                                                                                                           fr = "Diametre interieur du DISQUE (m). Verifier le diametre exterieur du rotor avant saisie",\r
233                                                                                                           ), # end INERTIEX\r
234                                                                                       EPAISSEUR = SIMP(statut='o', \r
235                                                                                                        typ='R',\r
236                                                                                                        val_min=0,\r
237                                                                                                        fr = "Epaisseur (dans la direction axiale) du DISQUE (m)",\r
238                                                                                                        ), # end INERTIEY\r
239                                                                                       MATERIAU = SIMP(statut='o', \r
240                                                                                                       typ=Materiau,\r
241                                                                                                       fr = "Materiau constituant le DISQUE (doit avoir ete defini via une entree MATERIAUX)",\r
242                                                                                                       ), # end INERTIEZ\r
243                                                                                       ) # nd PARAMETRES_DISQUE_G\r
244                                                                     ), # end PARAMETRES_MECANIQUE\r
245                                         ), # end DISQUE\r
246                           AILETTE = BLOC(condition = "((TYPE_MASSE == 'AILETTE') )",\r
247                                          TYPE_SAISIE = SIMP(statut='o',\r
248                                                             typ='TXM',\r
249                                                             fr = "Type de saisie des parametres de la rangee d'AILETTES",\r
250                                                             into = ('MECANIQUE','GEOMETRIQUE'),\r
251                                                             defaut = 'MECANIQUE'\r
252                                                             ), # end TYPE_SAISIE\r
253                                          PARAMETRES_MECANIQUE = BLOC(condition = "TYPE_SAISIE == 'MECANIQUE'",\r
254                                                                      PARAMETRES = FACT(statut = 'o',\r
255                                                                                        fr = "Parametres mecaniques de la rangee d'AILETTES",\r
256                                                                                        MASSE = SIMP(statut='o',\r
257                                                                                                     typ='R',\r
258                                                                                                     val_min=0,\r
259                                                                                                     fr = "Masse de la rangee d'AILETTES (kg)",\r
260                                                                                                     ), # end MASSE_AILETTE\r
261                                                                                        INERTIEX = SIMP(statut='o', \r
262                                                                                                        typ='R',\r
263                                                                                                        fr = "Inertie de la rangee d'AILETTES en X (kg.m**2)",\r
264                                                                                                        ), # end INERTIEX\r
265                                                                                        INERTIEY = SIMP(statut='o', \r
266                                                                                                        typ='R',\r
267                                                                                                        fr = "Inertie de la rangee d'AILETTES en Y (kg.m**2)",\r
268                                                                                                        ), # end INERTIEY\r
269                                                                                        INERTIEZ = SIMP(statut='o', \r
270                                                                                                        typ='R',\r
271                                                                                                        fr = "Inertie de la rangee d'AILETTES en Z (axe de rotation de la ligne d'arbres) (kg.m**2)",\r
272                                                                                                        ), # end INERTIEZ\r
273                                                                                        ) # nd PARAMETRES_AILETTE_M\r
274                                                                       ), # end PARAMETRES_MECANIQUE\r
275                                            PARAMETRES_GEOMETRIQUE = BLOC(condition = "TYPE_SAISIE == 'GEOMETRIQUE'",\r
276                                                                          PARAMETRES = FACT(statut = 'o',\r
277                                                                                            fr = "Parametres geometriques d'une AILETTE",\r
278                                                                                            MASSE_AILETTE = SIMP(statut='o',\r
279                                                                                                                 typ='R',\r
280                                                                                                                 val_min=0,\r
281                                                                                                                 fr = "Masse d'une AILETTE (kg)",\r
282                                                                                                                 ), # end MASSE_AILETTE\r
283                                                                                            RAYON = SIMP(statut='o', \r
284                                                                                                         typ='R',\r
285                                                                                                         val_min=0,\r
286                                                                                                         fr = "Distance entre le pied de l'AILETTE et le centre de rotation (m). Verifier le diametre exterieur du rotor avant saisie",\r
287                                                                                                         ), # end RAYON\r
288                                                                                            HAUTEUR = SIMP(statut='o',\r
289                                                                                                           typ='R',\r
290                                                                                                           val_min=0,\r
291                                                                                                           fr = "Distance entre les deux extremites de l'AILETTE (m)",\r
292                                                                                                           ), # end HAUTEUR\r
293                                                                                            BASE = SIMP(statut='o', \r
294                                                                                                        typ='R',\r
295                                                                                                        val_min=0,\r
296                                                                                                        fr = "Largeur du pied de l'AILETTE (m)",\r
297                                                                                                        ), # end BASE\r
298                                                                                            NOMBRE = SIMP(statut='o',\r
299                                                                                                          typ='I',\r
300                                                                                                          val_min=1,\r
301                                                                                                          fr = "Nombre d'AILETTES dans la rangee",\r
302                                                                                                          ),\r
303                                                                                            ) # end PARAMETRES_DISQUE\r
304                                                                          ), # end PARAMETRES_MECANIQUE\r
305                                            ), # end AILETTE\r
306                             QUELCONQUE = BLOC(condition = "((TYPE_MASSE == 'QUELCONQUE') )",\r
307                                               #TYPE_SAISIE = SIMP(statut='c',typ='TXM',defaut="MECANIQUE"), # cf 20120622 test : mot-clé caché\r
308                                               PARAMETRES = FACT(statut = 'o',\r
309                                                                 fr = "Parametres pour masse de type QUELCONQUE",\r
310                                                                 MASSE = SIMP(statut='o', \r
311                                                                              typ='R',\r
312                                                                              val_min=0,\r
313                                                                              fr = "Masse (m)",\r
314                                                                              ), # end MASSE\r
315                                                                 INERTIEX = SIMP(statut='o', \r
316                                                                                 typ='R',\r
317                                                                                 fr = "Inertie en X (kg.m**2)",\r
318                                                                                ), # end INERTIEX\r
319                                                                 INERTIEY = SIMP(statut='o', \r
320                                                                                 typ='R',\r
321                                                                                 fr = "Inertie en Y (kg.m**2)",\r
322                                                                                ), # end INERTIEY\r
323                                                                 INERTIEZ = SIMP(statut='o', \r
324                                                                                 typ='R',\r
325                                                                                 fr = "Inertie en Z (axe de rotation de la ligne d'arbres) (kg.m**2)",\r
326                                                                                ), # end INERTIEZ\r
327                                                                 ), # end PARAMETRES_QUELCONQUE\r
328                                               ), # end QUELCONQUE\r
329              ),  # end MASSE\r
330              ESSAI=SIMP(typ = Tuple(2),\r
331                        max = '**',\r
332                        validators=VerifTypeTuple(('TXM','R')),),\r
333 \r
334              NOEUDS = FACT(fr = "Definition des noeuds de la zone (2 noeuds minimum)",\r
335                            statut='o',\r
336                            min=2, \r
337                            max='**',\r
338                            NOM = SIMP(statut='o',\r
339                                       typ='TXM',\r
340                                       fr="Label du noeud",\r
341                                       ), # end NOM\r
342                            POSITION_AXIALE = SIMP(statut='o',\r
343                                     typ='R',\r
344                                     defaut=0.0,\r
345                                     val_min=0.0,\r
346                                     fr = "Position axiale du noeud (relative par rapport au debut de la zone (1er noeud a 0m)) (m)",\r
347                                     ), # end X\r
348                            ), # end NOEUDS\r
349              ELEMENTS = FACT(fr = "Definition des elements poutre de la zone",\r
350                              statut='o',\r
351                              min=1,\r
352                              max='**',\r
353                              NOM = SIMP(statut='o',\r
354                                         typ='TXM',\r
355                                         fr="Label de l'element"\r
356                                         ), # end NOM\r
357                              NOEUD_DEBUT = SIMP(statut='o',\r
358                                           typ='TXM',\r
359                                           fr= "Noeud de debut de l'element poutre (label d'un noeud)"\r
360                                           ), # end DEBUT\r
361                              NOEUD_FIN = SIMP(statut='o',\r
362                                         typ='TXM',\r
363                                         fr= "Noeud de fin de l'element poutre (label d'un noeud)"\r
364                                         ), # end FIN\r
365                              RAFFINEMENT = SIMP(fr = "Choix de raffiner l'element poutre",\r
366                                               statut='o',\r
367                                               typ='TXM',\r
368                                               into=('OUI','NON'),\r
369                                               defaut='NON'\r
370                                               ), # end RAFFINEMENT\r
371                              PARAM_RAFFINEMENT = BLOC(fr = "Nombre de points supplementaires a ajouter pour le raffinement (nombre elements : 1 -> nb points + 1)",\r
372                                                     condition = "((RAFFINEMENT == 'OUI') )",\r
373                                                     NB_POINTS_SUPPL = SIMP(statut='o', \r
374                                                                            typ='I'\r
375                                                                            ), # end NB_POINTS_SUPPL\r
376                                                     ), # end PARAM_RAFFINEMENT\r
377                              MATERIAU = SIMP(statut='o',\r
378                                              typ=Materiau,\r
379                                              fr= "Materiau constituant l'element poutre (doit avoir ete defini via une entree MATERIAUX)"\r
380                                              ), # end MATERIAU\r
381                              SECTION_MASSE = FACT(statut='o',\r
382                                                   fr = "Section a partir de laquelle est determinee la masse de l'element poutre",\r
383                                                   TYPE_SECTION = SIMP(statut='o',\r
384                                                                       fr = "Choix d'une section de dimensions constantes ou variables",\r
385                                                                       typ='TXM',\r
386                                                                       into=('CONSTANTE','VARIABLE'),\r
387                                                                       defaut='CONSTANTE',\r
388                                                                       ), # end TYPE_SECTION\r
389                                                   DIAM_EXTERN_DEBUT = SIMP(statut='o',\r
390                                                                            typ='R',\r
391                                                                            fr = "Diametre exterieur en debut d'element poutre (m)",\r
392                                                                            ), # end DIAM_EXTERN_DEBUT\r
393                                                   DIAM_INTERN_DEBUT = SIMP(statut='o',\r
394                                                                            typ='R',\r
395                                                                            fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)",\r
396                                                                            ), # end DIAM_INTERN_DEBUT\r
397                                                   PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )",\r
398                                                                             fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)",\r
399                                                                             DIAM_EXTERN_SORTIE = SIMP(statut='o',\r
400                                                                                                       typ='R',\r
401                                                                                                       fr = "Diametre exterieur en fin d'element (m)",\r
402                                                                                                       ), # end DIAM_EXTERN_SORTIE\r
403                                                                             DIAM_INTERN_SORTIE = SIMP(statut='o',\r
404                                                                                                       typ='R',\r
405                                                                                                       fr = "Diametre interieur en fin d'element (m)",\r
406                                                                                                       ), # DIAM_INTERN_SORTIE\r
407                                                                             ),\r
408                                                   ), # end SECTION_MASSE\r
409                              SECTION_RIGIDITE = FACT(statut='f',\r
410                                                      fr = "Section a partir de laquelle est determinee la rigidite de l'element poutre",\r
411                                                      TYPE_SECTION = SIMP(statut='o', \r
412                                                                          fr = "Choix d'une section de dimensions constantes ou variables",\r
413                                                                          typ='TXM', \r
414                                                                          into=('CONSTANTE','VARIABLE'), \r
415                                                                          defaut='CONSTANTE',\r
416                                                                          ), # end TYPE_SECTION\r
417                                                      DIAM_EXTERN_DEBUT = SIMP(statut='o',\r
418                                                                               typ='R',\r
419                                                                               fr = "Diametre exterieur en debut d'element poutre (m)",\r
420                                                                               ), # end DIAM_EXTERN_DEBUT\r
421                                                      DIAM_INTERN_DEBUT = SIMP(statut='o',\r
422                                                                               typ='R',\r
423                                                                               fr = "Diametre interieur en debut d'element poutre (m) (different de 0 si element creux)",\r
424                                                                               ), # end DIAM_INTERN_DEBUT\r
425                                                      PARAMETRE_SECT_VAR = BLOC(condition = "((TYPE_SECTION == 'VARIABLE') )",\r
426                                                                                fr = "Renseignement des dimensions de fin d'element (variation lineaire entre le debut et la fin)",\r
427                                                                                DIAM_EXTERN_SORTIE = SIMP(statut='o',\r
428                                                                                                          typ='R',\r
429                                                                                                          fr = "Diametre exterieur en fin d'element (m)",\r
430                                                                                                          ), # end DIAM_EXTERN_SORTIE\r
431                                                                                DIAM_INTERN_SORTIE = SIMP(statut='o',\r
432                                                                                                          typ='R',\r
433                                                                                                          fr = "Diametre interieur en fin d'element (m)",\r
434                                                                                                          ), # end DIAM_INTERN_SORTIE\r
435                                                                                ), # end PARAMETRE_SECT_VAR\r
436                                                      ), # end SECTION_RIGIDITE\r
437                              ),  # end ELEMENTS\r
438                              FISSURE = FACT(statut='f',\r
439                                             fr="Description d'une fissure sur un noeud de l'arbre (licite uniquement si les elements poutres a gauche et a droite du noeud ont des sections masse et rigidite constantes)",\r
440                                             MATERIAU = SIMP(statut='o',\r
441                                                             typ=Materiau,\r
442                                                             fr="Materiau a la position de la fissure (doit avoir ete defini via une entree MATERIAUX)"\r
443                                                            ), # end MATERIAU\r
444                                             NOEUD_FISSURE = SIMP(statut='o',\r
445                                                                  typ='TXM',\r
446                                                                  fr="Label du noeud ou est positionnee la fissure",\r
447                                                                  ), # end POSITION_FISSURE\r
448                                             ORIENTATION_FISSURE = SIMP(statut='o',\r
449                                                                        typ='R',\r
450                                                                        fr="Angle initial du fond de fissure par rapport Ã  sa définition dans la loi de comportement de fissure (0. par defaut)(degres)",\r
451                                                                        ), # end ORIENTATION_FISSURE\r
452                                             FICHIER_RAIDEUR = SIMP(statut='o',\r
453                                                                    typ=('Fichier','Fichier loi de raideur (*.*)'),\r
454                                                                    fr="Fichier contenant la loi de comportement en raideur de la fissure",\r
455                                                                    ), # end FICHIER_RAIDEUR\r
456                                             DIAMETRE = SIMP(statut='o',\r
457                                                             typ='R',\r
458                                                             fr="Diametre du rotor a l'emplacement de la fissure (m)",\r
459                                                             ), # end DIAMETRE\r
460                                             ), # end FISSURE\r
461 \r
462                         )  # end ZONE\r
463                                 \r
464 ############################# PALIERS ########################################\r
465 PALIER = MACRO(nom = 'PALIER',\r
466                op = None,\r
467                sd_prod = Palier,\r
468                reentrant = 'n',\r
469                UIinfo = {"groupes":("Machine tournante",)},\r
470                fr = "Description d'un palier radial",\r
471                POSITION = SIMP(statut='o', \r
472                                typ='R', \r
473                                defaut=0.0, \r
474                                fr = "Position axiale (absolue) du palier radial (m)",\r
475                                ), # end POSITION\r
476                TYPE_PALIER = SIMP(statut='o', \r
477                                   fr = "Type de palier radial",\r
478                                   typ='TXM', \r
479                                   into=('PALIER LINEAIRE','PALIER NON-LINEAIRE','LAME FLUIDE'),\r
480                                   ), # end TYPE_PALIER\r
481                PALIER_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER LINEAIRE') )", \r
482                                       fr = "Description d'un palier radial lineaire",\r
483                                       TYPE_SAISIE = SIMP(statut='o', \r
484                                                         fr = "Mode de description des caracteristiques du palier radial lineaire",\r
485                                                         typ='TXM', \r
486                                                         into=('MANUELLE', 'CATALOGUE'),\r
487                                                         ), # end TYPE_SAISIE\r
488                                       MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )",\r
489                                                       fr = "Saisie manuelle des caracteristiques du palier radial lineaire",\r
490                                                       CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques du palier par vitesse de rotation de la ligne d'arbres",\r
491                                                               VITESSE_ROTATION = SIMP(statut='o',\r
492                                                                                       typ='R',\r
493                                                                                       fr= "Vitesse de rotation (tr/min)",\r
494                                                                                       ), # end VITESSE_ROTATION\r
495                                                               SYME = SIMP(statut = 'o',\r
496                                                                           typ = 'TXM',\r
497                                                                           max = 1,\r
498                                                                           fr = "Symetrie des matrices du palier radial lineaire (KXY=KYX et AXY=AYX)",\r
499                                                                           into = ('OUI','NON'),\r
500                                                                           defaut = 'OUI',\r
501                                                                           ), # end SYME\r
502                                                               RIGIDITE_NS = BLOC(condition="(SYME=='NON')",\r
503                                                                       RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite du palier radial lineaire",\r
504                                                                               KXX = SIMP(statut = 'o',\r
505                                                                                         typ = 'R',\r
506                                                                                         max = 1,\r
507                                                                                         fr = "Valeur de KXX dans la matrice de rigidite (N/m)",\r
508                                                                                         ),# end KXX\r
509                                                                               KXY = SIMP(statut = 'o',\r
510                                                                                         typ = 'R',\r
511                                                                                         max = 1,\r
512                                                                                         fr = "Valeur de KXY dans la matrice de rigidite (N/m)",\r
513                                                                                         ),# end KXY\r
514                                                                               KYX = SIMP(statut = 'o',\r
515                                                                                         typ = 'R',\r
516                                                                                         max = 1,\r
517                                                                                         fr = "Valeur de KYX dans la matrice de rigidite (N/m)",\r
518                                                                                         ),# end KYX\r
519                                                                               KYY = SIMP(statut = 'o',\r
520                                                                                         typ = 'R',\r
521                                                                                         max = 1,\r
522                                                                                         fr = "Valeur de KYY dans la matrice de rigidite (N/m)",\r
523                                                                                         ),# end KYY\r
524                                                                                       ), # end RIGIDITE\r
525                                                                               ), # end RIGIDITE_S\r
526                                                               RIGIDITE_S = BLOC(condition="(SYME=='OUI')",\r
527                                                                       RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite du palier radial lineaire",\r
528                                                                               KXX = SIMP(statut = 'o',\r
529                                                                                         typ = 'R',\r
530                                                                                         max = 1,\r
531                                                                                         fr = "Valeur de KXX dans la matrice de rigidite (N/m)",\r
532                                                                                         ),# end KXX\r
533                                                                               KXY = SIMP(statut = 'o',\r
534                                                                                         typ = 'R',\r
535                                                                                         max = 1,\r
536                                                                                         fr = "Valeur de KXY dans la matrice de rigidite (N/m)",\r
537                                                                                         ),# end KXY\r
538                                                                               KYY = SIMP(statut = 'o',\r
539                                                                                         typ = 'R',\r
540                                                                                         max = 1,\r
541                                                                                         fr = "Valeur de KYY dans la matrice de rigidite (N/m)",\r
542                                                                                         ),# end KYY\r
543                                                                                       ), # end RIGIDITE\r
544                                                                               ), # end RIGIDITE_NS\r
545                                                               AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')",\r
546                                                                       AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement du palier radial lineaire",\r
547                                                                                   AXX = SIMP(statut = 'o',\r
548                                                                                               typ = 'R',\r
549                                                                                               max = 1,\r
550                                                                                               fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)",\r
551                                                                                             ),# end AXX\r
552                                                                                   AXY = SIMP(statut = 'o',\r
553                                                                                               typ = 'R',\r
554                                                                                               max = 1,\r
555                                                                                               fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)",\r
556                                                                                             ),# end AXY\r
557                                                                                   AYX = SIMP(statut = 'o',\r
558                                                                                               typ = 'R',\r
559                                                                                               max = 1,\r
560                                                                                               fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)",\r
561                                                                                             ),# end AYX\r
562                                                                                   AYY = SIMP(statut = 'o',\r
563                                                                                               typ = 'R',\r
564                                                                                               max = 1,\r
565                                                                                               fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)",\r
566                                                                                             ),# end AYY\r
567                                                                                           ), # end AMORTISSEMENT\r
568                                                                                         ), # end AMORTISSEMENT_NS\r
569                                                               AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')",\r
570                                                                       AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement du palier radial lineaire",\r
571                                                                                   AXX = SIMP(statut = 'o',\r
572                                                                                               typ = 'R',\r
573                                                                                               max = 1,\r
574                                                                                               fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)",\r
575                                                                                             ),# end AXX\r
576                                                                                   AXY = SIMP(statut = 'o',\r
577                                                                                               typ = 'R',\r
578                                                                                               max = 1,\r
579                                                                                               fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)",\r
580                                                                                             ),# end AXY\r
581                                                                                   AYY = SIMP(statut = 'o',\r
582                                                                                               typ = 'R',\r
583                                                                                               max = 1,\r
584                                                                                               fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)",\r
585                                                                                             ),# end AYY\r
586                                                                                           ), # end AMORTISSEMENT\r
587                                                                                         ), # end AMORTISSEMENT_S\r
588                                                               ), # end CARAC_PALIER\r
589                                                       ),#  end MANUELLE\r
590                                                       CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )",\r
591                                                                       fr = "Renseignement des fichiers contenant les caracteristiques du palier radial lineaire",\r
592                                                                       CATALOGUE_AMORTISSEMENT = SIMP(statut='o',\r
593                                                                                               min=1, \r
594                                                                                               max=1, \r
595                                                                                               typ='Fichier', \r
596                                                                                               fr="Fichier decrivant les caracteristiques d'amortissement (N.s/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)",\r
597                                                                                               ), # end CATALOGUE_AMORTISSEMENT\r
598                                                                       CATALOGUE_RIGIDITE = SIMP(statut='o',\r
599                                                                                               min=1, \r
600                                                                                               max=1, \r
601                                                                                               typ='Fichier', \r
602                                                                                               fr="Fichier decrivant les caracteristiques de rigidite (N/m) du palier radial lineaire (format decrit dans le Manuel Utilisateur)",\r
603                                                                                               ), # end CATALOGUE_RIGIDITE\r
604                                                                       ), # end CATALOGUE\r
605                                      ), # end PALIER_LINEAIRE\r
606                               LAME_FLUIDE = BLOC(condition = "((TYPE_PALIER == 'LAME FLUIDE') )",\r
607                                                   fr = "Description d'une lame fluide",\r
608                                                   TYPE_SAISIE = SIMP(statut='o', \r
609                                                         fr = "Mode de description des caracteristiques de la lame fluide",\r
610                                                         typ='TXM', \r
611                                                         defaut = 'MANUELLE',\r
612                                                         #into=('MANUELLE', 'CATALOGUE'), #Fonctionnalite catalogue non encore implementee\r
613                                                         into=('MANUELLE',),\r
614                                                         ), # end TYPE_SAISIE\r
615                                                   MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )",\r
616                                                                 fr = "Saisie manuelle des caracteristiques de la lame fluide",\r
617                                                                 CARAC_PALIER = FACT(statut = 'o',max='**',fr = "Caracteristiques de la lame fluide par vitesse de rotation de la ligne d'arbres",\r
618                                                                       SYME = SIMP(statut = 'o',\r
619                                                                                 typ = 'TXM',\r
620                                                                                 max = 1,\r
621                                                                                 fr = "Symetrie des matrices de la lame fluide  (KXY=KYX et AXY=AYX)",\r
622                                                                                 into = ('OUI','NON'),\r
623                                                                                 defaut = 'OUI',\r
624                                                                                 ), # end SYME\r
625                                                                     RIGIDITE_NS = BLOC(condition="(SYME=='NON')",\r
626                                                                             RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques de rigidite de la lame fluide",\r
627                                                                               KXX = SIMP(statut = 'o',\r
628                                                                                         typ = 'R',\r
629                                                                                         max = 1,\r
630                                                                                         fr = "Valeur de KXX dans la matrice de rigidite (N/m)",\r
631                                                                                         ),# end KXX\r
632                                                                               KXY = SIMP(statut = 'o',\r
633                                                                                         typ = 'R',\r
634                                                                                         max = 1,\r
635                                                                                         fr = "Valeur de KXY dans la matrice de rigidite (N/m)",\r
636                                                                                         ),# end KXY\r
637                                                                               KYX = SIMP(statut = 'o',\r
638                                                                                         typ = 'R',\r
639                                                                                         max = 1,\r
640                                                                                         fr = "Valeur de KYX dans la matrice de rigidite (N/m)",\r
641                                                                                         ),# end KYX\r
642                                                                               KYY = SIMP(statut = 'o',\r
643                                                                                         typ = 'R',\r
644                                                                                         max = 1,\r
645                                                                                         fr = "Valeur de KYY dans la matrice de rigidite (N/m)",\r
646                                                                                         ),# end KYY\r
647                                                                                     ), # end RIGIDITE_NS\r
648                                                                     RIGIDITE_S = BLOC(condition="(SYME=='OUI')",\r
649                                                                             RIGIDITE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de rigidite de la lame fluide",\r
650                                                                               KXX = SIMP(statut = 'o',\r
651                                                                                         typ = 'R',\r
652                                                                                         max = 1,\r
653                                                                                         fr = "Valeur de KXX dans la matrice de rigidite (N/m)",\r
654                                                                                         ),# end KXX\r
655                                                                               KXY = SIMP(statut = 'o',\r
656                                                                                         typ = 'R',\r
657                                                                                         max = 1,\r
658                                                                                         fr = "Valeur de KXY dans la matrice de rigidite (N/m)",\r
659                                                                                         ),# end KXY\r
660                                                                               KYY = SIMP(statut = 'o',\r
661                                                                                         typ = 'R',\r
662                                                                                         max = 1,\r
663                                                                                         fr = "Valeur de KYY dans la matrice de rigidite (N/m)",\r
664                                                                                         ),# end KYY\r
665                                                                                       ), # end RIGIDITE\r
666                                                                                     ), # end RIGIDITE_S\r
667                                                                     AMORTISSEMENT_NS = BLOC(condition="(SYME=='NON')",\r
668                                                                             AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques non-symetriques d'amortissement de la lame fluide",\r
669                                                                                   AXX = SIMP(statut = 'o',\r
670                                                                                               typ = 'R',\r
671                                                                                               max = 1,\r
672                                                                                               fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)",\r
673                                                                                             ),# end AXX\r
674                                                                                   AXY = SIMP(statut = 'o',\r
675                                                                                               typ = 'R',\r
676                                                                                               max = 1,\r
677                                                                                               fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)",\r
678                                                                                             ),# end AXY\r
679                                                                                   AYX = SIMP(statut = 'o',\r
680                                                                                               typ = 'R',\r
681                                                                                               max = 1,\r
682                                                                                               fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)",\r
683                                                                                             ),# end AYX\r
684                                                                                   AYY = SIMP(statut = 'o',\r
685                                                                                               typ = 'R',\r
686                                                                                               max = 1,\r
687                                                                                               fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)",\r
688                                                                                             ),# end AYY\r
689                                                                                           ), # end AMORTISSEMENT\r
690                                                                                                 ), # end AMORTISSEMENT\r
691                                                                                         ), # end AMORTISSEMENT_NS\r
692                                                                     AMORTISSEMENT_S = BLOC(condition="(SYME=='OUI')",\r
693                                                                             AMORTISSEMENT=FACT(statut='o',fr="Renseignement des caracteristiques symetriques d'amortissement de la lame fluide",\r
694                                                                                   AXX = SIMP(statut = 'o',\r
695                                                                                               typ = 'R',\r
696                                                                                               max = 1,\r
697                                                                                               fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)",\r
698                                                                                             ),# end AXX\r
699                                                                                   AXY = SIMP(statut = 'o',\r
700                                                                                               typ = 'R',\r
701                                                                                               max = 1,\r
702                                                                                               fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)",\r
703                                                                                             ),# end AXY\r
704                                                                                   AYY = SIMP(statut = 'o',\r
705                                                                                               typ = 'R',\r
706                                                                                               max = 1,\r
707                                                                                               fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)",\r
708                                                                                             ),# end AYY\r
709                                                                                           ), # end AMORTISSEMENT\r
710                                                                                         ), # end AMORTISSEMENT_S\r
711                                                                     MASSE_NS = BLOC(condition="(SYME=='NON')",\r
712                                                                             MASSE=FACT(statut='o',fr="Renseignement des caracteristiques non symetriques de masse de la lame fluide",\r
713                                                                                           MXX = SIMP(statut = 'o',\r
714                                                                                                     typ = 'R',\r
715                                                                                                     max = 1,\r
716                                                                                                     fr = "Valeur de MXX dans la matrice de masse (kg)",\r
717                                                                                                     ),# end MXX\r
718                                                                                           MXY = SIMP(statut = 'o',\r
719                                                                                                     typ = 'R',\r
720                                                                                                     max = 1,\r
721                                                                                                     fr = "Valeur de MXY dans la matrice de masse (kg)",\r
722                                                                                                     ),# end MXY\r
723                                                                                           MYX = SIMP(statut = 'o',\r
724                                                                                                     typ = 'R',\r
725                                                                                                     max = 1,\r
726                                                                                                     fr = "Valeur de MYX dans la matrice de masse (kg)",\r
727                                                                                                     ),# end MYX\r
728                                                                                           MYY = SIMP(statut = 'o',\r
729                                                                                                     typ = 'R',\r
730                                                                                                     max = 1,\r
731                                                                                                     fr = "Valeur de MYY dans la matrice de masse (kg)",\r
732                                                                                                     ),# end MYY\r
733                                                                                                 ), # end MASSE\r
734                                                                                         ), # end MASSE_NS\r
735                                                                     MASSE_S = BLOC(condition="(SYME=='OUI')",\r
736                                                                         MASSE=FACT(statut='o',fr="Renseignement des caracteristiques symetriques de masse de la lame fluide",\r
737                                                                                           MXX = SIMP(statut = 'o',\r
738                                                                                                     typ = 'R',\r
739                                                                                                     max = 1,\r
740                                                                                                     fr = "Valeur de MXX dans la matrice de masse (kg)",\r
741                                                                                                     ),# end MXX\r
742                                                                                           MXY = SIMP(statut = 'o',\r
743                                                                                                     typ = 'R',\r
744                                                                                                     max = 1,\r
745                                                                                                     fr = "Valeur de MXY dans la matrice de masse (kg)",\r
746                                                                                                     ),# end MXY\r
747                                                                                           MYY = SIMP(statut = 'o',\r
748                                                                                                     typ = 'R',\r
749                                                                                                     max = 1,\r
750                                                                                                     fr = "Valeur de MYY dans la matrice de masse (kg)",\r
751                                                                                                     ),# end MYY\r
752                                                                                                 ), # end MASSE\r
753                                                                                         ), # end MASSE_S\r
754                                                                     VITESSE_ROTATION = SIMP(statut='o',\r
755                                                                                             typ='R',\r
756                                                                                             fr= "Vitesse de rotation (tr/min)",\r
757                                                                                             ), # end VITESSE_ROTATION\r
758                                                                ), # end CARAC_PALIER\r
759                                                       ), # end MANUELLE\r
760                                                       #Fonctionnalite non encore implementee\r
761                                                       CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )",\r
762                                                                         PALIERS_CATALOGUE = SIMP(statut='o',\r
763                                                                                                 min=1, \r
764                                                                                                 max=1, \r
765                                                                                                 typ='Fichier', \r
766                                                                                                 fr="Format du fichier : CSV.",\r
767                                                                                                 ), # end PALIERS_CATALOGUE\r
768                                                                         ), # end CATALOGUE\r
769                                                       \r
770                                         ), # end LAME_FLUIDE\r
771                                         PALIER_NON_LINEAIRE = BLOC(condition = "((TYPE_PALIER == 'PALIER NON-LINEAIRE') )",\r
772                                                                   fr = "Description d'un palier non-lineaire (licite uniquement en cas d'analyse de type 'TRANSITOIRE ACCIDENTEL'",\r
773                                                                   TYPE = SIMP(statut='o',\r
774                                                                               typ='TXM',\r
775                                                                               into=('PAPANL','PAFINL','PAHYNL','PACONL'),\r
776                                                                               defaut=None,\r
777                                                                               fr="Type de palier non-lineaire parmi ceux proposes dans Edyos",\r
778                                                                               ), # end TYPE\r
779                                                                   REPERTOIRE_EDYOS = SIMP(statut='o',\r
780                                                                                           typ=('Repertoire'),\r
781                                                                                           defaut=None,\r
782                                                                                           fr="Repertoire 'CDC' du palier non-lineaire utilise (les fichiers Geometrie et Donnees doivent exister dans les repertoires parents respectivement de niveau 2 et 1 de CDC)",\r
783                                                                                           ), # end REPERTOIRE_EDYOS\r
784                                                                   ), # end PALIER_NON_LINEAIRE\r
785                )  # end PALIER\r
786 \r
787 PALIER_TORSION=MACRO(nom="PALIER_TORSION",\r
788                          op=None,\r
789                          sd_prod=PalTor,\r
790                          reentrant='n',\r
791                          UIinfo={"groupes":("Machine tournante",)},\r
792                          fr="Description d'un palier de torsion",\r
793                          POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) du palier de torsion (m)",), # end POSITION\r
794                          TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques du palier de torsion",), # end TYPE_SAISIE\r
795                                                    MANUELLE = BLOC(condition = "((TYPE_SAISIE == 'MANUELLE') )", \r
796                                                           fr = "Saisie manuelle des caracteristiques du palier de torsion",\r
797                                                           CARAC_PALIER = FACT(statut = 'o',max=1,fr = "Caracteristiques du palier par vitesse de rotation de l'arbre",\r
798                                                                                                 VITESSE_ROTATION = SIMP(statut='o',typ='R',min=1,max='**',fr= "Liste des vitesses de rotation (tr/min)",), # end VITESSE_ROTATION          \r
799                                                                                                 KRZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de rigidite (N/m) du palier de torsion en fonction de la vitesse de rotation",),# end KRZ\r
800                                                                                                 ARZ = SIMP(statut = 'o',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques d'amortissement (N.s/m) du palier de torsion  en fonction de la vitesse de rotation",),# end ARZ\r
801                                                                                                 MRZ = SIMP(statut = 'f',typ = 'R',min=1,max = '**',fr = "Liste des caracteristiques de masse ajoutee (kg) du palier de torsion  en fonction de la vitesse de rotation",),# end MRZ                    \r
802                                                                                               ),#end CARAC_PALIER\r
803                                                                                     ), # end MANUELLE\r
804                                                            #Fonctionnalite pas encore implementee\r
805                                                            CATALOGUE = BLOC(condition = "((TYPE_SAISIE == 'CATALOGUE') )",\r
806                                                                             fr = "Renseignement des fichiers contenant les caracteristiques du palier de torsion",\r
807                                                                                         CATA_PALIER = SIMP(statut='o',min=1,max=1,typ='Fichier',fr="Format du fichier : CSV.",), # end CATA_PALIER\r
808                                                                                        ), # end CATALOGUE\r
809                      )#end PALIER TORSION\r
810                 \r
811 BUTEE=MACRO(nom="BUTEE",\r
812             op=None,\r
813             sd_prod=Butee,\r
814             reentrant='n',\r
815             UIinfo={"groupes":("Machine tournante",)},\r
816             fr="Description d'une butee",\r
817             POSITION = SIMP(statut='o',typ='R',defaut=0.0,fr = "Position axiale (absolue) de la butee (m)",), # end POSITION\r
818             TYPE_BUTEE = SIMP(statut='o',typ='TXM',into=('BUTEE LINEAIRE',),fr = "Type de butee",), # end TYPE_BUTEE, BUTEE NON LINEAIRE reintegrable\r
819             BUTEE_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE LINEAIRE'",\r
820                                 fr = "Description d'une butee lineaire",\r
821                                 TYPE_SAISIE = SIMP(statut='o',typ='TXM',into=('MANUELLE',),fr = "Mode de description des caracteristiques de la butee lineaire",), # end TYPE_SAISIE; 'CATALOGUE' reintegrable\r
822                                 MANUELLE=BLOC(condition="TYPE_SAISIE=='MANUELLE'",\r
823                                               fr = "Saisie manuelle des caracteristiques de la butee lineaire",\r
824                                               CARAC_BUTEE=FACT(statut='o',max=1,fr="Caracteristiques de la butee en fonction de la vitesse de rotation",\r
825                                                                         VITESSE_ROTATION=SIMP(statut='o',typ='R',min=1,max='**',fr="Liste des vitesses de rotation (tr/min)",),\r
826                                                                         SYMETRIQUE=SIMP(statut='o',typ='TXM',min=1,max=1,into=("OUI","NON"),defaut="OUI",fr="Symetrie des matrices de la butee (KRXRY=KRYRX , ARXRY=ARYRX et MRXRY=MRYRX)",),\r
827 \r
828                                                                         RIGIDITE_NS = BLOC(condition="(SYMETRIQUE=='NON')",\r
829                                                                             RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation",\r
830                                                                               KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
831                                                                               KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
832                                                                               KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
833                                                                               KRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
834                                                                               KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
835                                                                              ), #END RIGIDITE\r
836                                                                         ),#END RIGIDITE_NS\r
837                                                                         RIGIDITE_S = BLOC(condition="(SYMETRIQUE=='OUI')",\r
838                                                                             RIGIDITE=FACT(statut='o',max=1,fr="Caracteristiques symetriques de rigidite de la butee lineaire en fonction de la vitesse de rotation",\r
839                                                                               KZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Rigidite axiale (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
840                                                                               KRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
841                                                                               KRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite croisee de rotation autour de l'axe X (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
842                                                                               KRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Rigidite directe de rotation autour de l'axe Y (N/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
843                                                                              ), #END RIGIDITE\r
844                                                                         ),#END RIGIDITE_S\r
845 \r
846                                                                         AMORTISSEMENT_NS = BLOC(condition="(SYMETRIQUE=='NON')",\r
847                                                                             AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques non-symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation",\r
848                                                                               AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
849                                                                               ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
850                                                                               ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
851                                                                               ARYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
852                                                                               ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),                                       \r
853                                                                               ),#END AMORTISSEMENT\r
854                                                                         ),#END AMORTISSEMENT_NS\r
855                                                                         AMORTISSEMENT_S = BLOC(condition="(SYMETRIQUE=='OUI')",\r
856                                                                             AMORTISSEMENT=FACT(statut='o',max=1,fr="Caracteristiques symetriques d'amortissement de la butee lineaire en fonction de la vitesse de rotation",\r
857                                                                               AZZ=SIMP(statut='o',typ='R',min=1,max='**',fr="Amortissement axial (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
858                                                                               ARXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement direct de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
859                                                                               ARXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe X (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),\r
860                                                                               ARYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Amortissement croise de rotation autour de l'axe Y (N.s/m) de la butee lineaire en fonction de la vitesse de rotation"),                                       \r
861                                                                               ),#END AMORTISSEMENT\r
862                                                                         ),#END AMORTISSEMENT_S\r
863 \r
864                                                                         INERTIE_NS = BLOC(condition="(SYMETRIQUE=='NON')",\r
865                                                                             INERTIE=FACT(statut='f',max=1,fr="Caracteristiques non-symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation",\r
866                                                                               MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
867                                                                               MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
868                                                                               MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
869                                                                               MRYRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
870                                                                               MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"),                                       \r
871                                                                              ),#END INERTIE\r
872                                                                         ),#END INERTIE_NS                                   \r
873                                                                         INERTIE_S = BLOC(condition="(SYMETRIQUE=='OUI')",\r
874                                                                             INERTIE=FACT(statut='f',max=1,fr="Caracteristiques symetriques de masse ajoutee de la butee lineaire en fonction de la vitesse de rotation",\r
875                                                                               MZZ=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee axiale (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
876                                                                               MRXRX=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee directe de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
877                                                                               MRXRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe X (kg) de la butee lineaire en fonction de la vitesse de rotation"),\r
878                                                                               MRYRY=SIMP(statut='f',typ='R',min=1,max='**',fr="Masse ajoutee croisee de rotation autour de l'axe Y (kg) de la butee lineaire en fonction de la vitesse de rotation"),                                       \r
879                                                                              ),#END INERTIE\r
880                                                                         ),#END INERTIE_S\r
881                                                                         \r
882                                                           ),#END CARA_BUTEE\r
883                                                   ),#end MANUELLE\r
884                                 CATALOGUE=BLOC(condition="TYPE_SAISIE=='CATALOGUE'",\r
885                                                fr = "Renseignement des fichiers contenant les caracteristiques de la butee lineaire",\r
886                                                    ),#END CATALOGUE\r
887                                ),#END BUTEE LINEAIRE\r
888 \r
889             BUTEE_NON_LINEAIRE=BLOC(condition="TYPE_BUTEE=='BUTEE NON LINEAIRE'",\r
890                                     fr = "Description d'une butee non-lineaire",\r
891                                     ),#END BUTEE NON LINEAIRE\r
892 \r
893         );#END BUTEE\r
894 \r
895 ############################# SUPPORT ########################################\r
896 SUPPORT = MACRO(nom = "SUPPORT",\r
897                 op = None,\r
898                 sd_prod = Support,\r
899                 reentrant = 'n',\r
900                 UIinfo = {"groupes":("Machine tournante",)},\r
901                 fr = "Description d'un support ",\r
902                 TYPE_SUPPORT = SIMP(statut='o', \r
903                                     fr = "Type de support",\r
904                                     typ='TXM', \r
905                                     defaut="RIGIDE", \r
906                                     into=("RIGIDE", "SIMPLIFIE", "GENERALISE", ),\r
907                                     ), # end TYPE_SUPPORT\r
908                 SIMPLIFIE = BLOC(condition = "((TYPE_SUPPORT == 'SIMPLIFIE') )",\r
909                                 fr = "Description d'un support simplifie",\r
910                                 RIGIDITE = FACT(statut='o', fr = "Renseignement des caracteristiques de rigidite du support simplifie",\r
911                                                 KXX = SIMP(statut = 'o',\r
912                                                           typ = 'R',\r
913                                                           max = 1,\r
914                                                           fr = "Valeur de KXX dans la matrice de rigidite (N/m)",\r
915                                                           ),# end KXX\r
916                                                 KXY = SIMP(statut = 'o',\r
917                                                           typ = 'R',\r
918                                                           max = 1,\r
919                                                           fr = "Valeur de KXY dans la matrice de rigidite (N/m)",\r
920                                                           ),# end KXY\r
921                                                 KYX = SIMP(statut = 'o',\r
922                                                           typ = 'R',\r
923                                                           max = 1,\r
924                                                           fr = "Valeur de KYX dans la matrice de rigidite (N/m)",\r
925                                                           ),# end KYX\r
926                                                 KYY = SIMP(statut = 'o',\r
927                                                           typ = 'R',\r
928                                                           max = 1,\r
929                                                           fr = "Valeur de KYY dans la matrice de rigidite (N/m)",\r
930                                                           ),# end KYY\r
931                                                 ), # end RIGIDITE\r
932                                 AMORTISSEMENT = FACT(statut='o', fr= "Renseignement des caracteristiques d'amortissement du support simplifie",\r
933                                                     AXX = SIMP(statut = 'o',\r
934                                                                 typ = 'R',\r
935                                                                 max = 1,\r
936                                                                 fr = "Valeur de AXX dans la matrice d'amortissement (N.s/m)",\r
937                                                               ),# end AXX\r
938                                                     AXY = SIMP(statut = 'o',\r
939                                                                 typ = 'R',\r
940                                                                 max = 1,\r
941                                                                 fr = "Valeur de AXY dans la matrice d'amortissement (N.s/m)",\r
942                                                               ),# end AXY\r
943                                                     AYX = SIMP(statut = 'o',\r
944                                                                 typ = 'R',\r
945                                                                 max = 1,\r
946                                                                 fr = "Valeur de AYX dans la matrice d'amortissement (N.s/m)",\r
947                                                               ),# end AYX\r
948                                                     AYY = SIMP(statut = 'o',\r
949                                                                 typ = 'R',\r
950                                                                 max = 1,\r
951                                                                 fr = "Valeur de AYY dans la matrice d'amortissement (N.s/m)",\r
952                                                               ),# end AYY\r
953                                                           ), # end AMORTISSEMENT\r
954                                 MASSE = FACT(statut='o', fr= "Renseignement des caracteristiques de masse du support simplifie",\r
955                                             MXX = SIMP(statut = 'o',\r
956                                                         typ = 'R',\r
957                                                         max = 1,\r
958                                                         fr = "Valeur de MXX dans la matrice de masse (kg)",\r
959                                                       ),# end MXX\r
960                                             MXY = SIMP(statut = 'o',\r
961                                                         typ = 'R',\r
962                                                         max = 1,\r
963                                                         fr = "Valeur de MXY dans la matrice de masse (kg)",\r
964                                                       ),# end MXY\r
965                                             MYX = SIMP(statut = 'o',\r
966                                                         typ = 'R',\r
967                                                         max = 1,\r
968                                                         fr = "Valeur de MYX dans la matrice de masse (kg)",\r
969                                                       ),# end MYX\r
970                                             MYY = SIMP(statut = 'o',\r
971                                                         typ = 'R',\r
972                                                         max = 1,\r
973                                                         fr = "Valeur de MYY dans la matrice de masse (kg)",\r
974                                                       ),# end MYY\r
975                                             ), # end MASSE\r
976                                  ), # end SIMPLIFIE\r
977                 GENERALISE = BLOC(condition = "((TYPE_SUPPORT == 'GENERALISE') )",\r
978                                   fr = "Description d'un support generalise",\r
979                                   ANGL_NAUT = SIMP(statut='f',\r
980                                                   fr="Rotation du modele du support generalise a effectuer pour coincider avec le repere de la ligne d'arbres (rotation autour de X, puis Y, puis Z (degres))",\r
981                                                   typ='R',\r
982                                                   min=3,max=3,\r
983                                                   ), # end ANGL_NAUT\r
984                                   TRANS = SIMP(statut='f',\r
985                                               fr="Translation du modele du support generalise a effectuer pour que ses noeuds de connexion soient confondus avec ceux de la ligne d'arbres (translation suivant X, Y et Z (m))",\r
986                                               typ='R',\r
987                                               min=3,max=3,\r
988                                               ), # end TRANS\r
989                                   MAIL_TDG = SIMP(statut='o',\r
990                                                  fr="Fichier du maillage du support generalise",\r
991                                                  typ=("Fichier","Fichier maillage TdG (*.*)"),\r
992                                                  min=1,max=1,\r
993                                                 ), # end MAIL_TDG\r
994                                   COMM_TDG = SIMP(statut='o',\r
995                                                  fr="Fichier de la mise en donnees du support generalise",\r
996                                                  typ=("Fichier","Fichier commande TdG (*.*)"),\r
997                                                  min=1,max=1,\r
998                                                 ), # end COMM_TDG\r
999                                   NOM_MACRO_ELEMENT_DYNAMIQUE = SIMP(statut='o',\r
1000                                                                      fr="Nom du macro element dynamique cree pour le support generalise",\r
1001                                                                      typ='TXM',\r
1002                                                                      min=1,max=1,\r
1003                                                                     ), # end NOM_MACRO_ELEMENT_DYNAMIQUE\r
1004                                   NOM_INTERFACE = SIMP(statut='o',\r
1005                                                        fr="Nom de l'interface cree pour le support generalise",\r
1006                                                        typ='TXM',\r
1007                                                        min=1,max=1,\r
1008                                                       ), # end NOM_INTERFACE\r
1009                                   NOM_GROUP_MA_MASSIF = SIMP(statut='o',\r
1010                                                              fr="Nom du groupe de maille representant le support generalise",\r
1011                                                              typ='TXM',\r
1012                                                              min=1,max=1,\r
1013                                                             ), # end NOM_GROUP_MA_MASSIF\r
1014                                   REDUIT = SIMP(statut='f',\r
1015                                                 fr="Introduction du mot-cle REDUIT pour le cas ou le nombre d'interfaces n'est pas identique entre le support generalise et la ligne d'arbres",\r
1016                                                 typ='TXM',\r
1017                                                 into=("OUI",),\r
1018                                                 defaut="OUI",\r
1019                                                ), # end REDUIT \r
1020                                   ), # end GENERALISE\r
1021                 ) # end SUPPORT\r
1022 \r
1023 ############################# LIGNE_ARBRE ########################################\r
1024 LIGNE_ARBRE = MACRO(nom = 'LIGNE_ARBRE',\r
1025                     op = None,\r
1026                     sd_prod = LigneArbre,\r
1027                     reentrant = 'n',\r
1028                     UIinfo = {"groupes":("Machine tournante",)},\r
1029                     fr = "Description de la ligne d'arbres",\r
1030                     DIRECTION = SIMP(statut='o',\r
1031                                      fr = "Direction de la ligne d'arbres consideree (choisir une des entrees DIRECTION creees)",\r
1032                                      typ=Direction,\r
1033                                      min=1,\r
1034                                      max=1,\r
1035                                      ), # end DIRECTION\r
1036                     ZONES = SIMP(statut='o', \r
1037                                  fr = "Zone(s) composant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees ZONE creees)",\r
1038                                  typ=Zone, \r
1039                                  min=1, \r
1040                                  max='**',\r
1041                                  ), # end ZONES\r
1042                     PALIERS = SIMP(statut='o',\r
1043                                    fr = "Paliers supportant la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIER creees)",\r
1044                                    typ=Palier,\r
1045                                    min=2,\r
1046                                    max='**',\r
1047                                    ), # end PALIERS\r
1048 \r
1049                     BUTEES  = SIMP(statut='f',\r
1050                                    fr = "Butee(s) guidant axialement la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees BUTEES creees)",\r
1051                                    typ=Butee,\r
1052                                    max='**'\r
1053                                    ),#end BUTEE\r
1054                     PALIERS_TORSION=SIMP(statut='f',\r
1055                                          fr = "Palier(s) de torsion de la ligne d'arbres (choisir, en faisant attention a l'ordre, parmi les entrees PALIERS_TORSION creees)",\r
1056                                          typ=PalTor,\r
1057                                          max='**'\r
1058                                          ),#end PALIERS_TORSION\r
1059                     SUPPORTS = SIMP(statut='o', \r
1060                                     fr = "Supports sous les paliers (choisir, en faisant attention a l'ordre, parmi les entrees SUPPORTS creees)",\r
1061                                     typ=Support, \r
1062                                     min=1, \r
1063                                     max='**',\r
1064                                     ), # end SUPPORTS\r
1065                     ) # end LIGNE_ARBRE\r
1066 \r