From: Pascale Noyret Date: Wed, 20 Feb 2008 08:50:13 +0000 (+0000) Subject: *** empty log message *** X-Git-Tag: V1_14_OT_1_2~5 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=82f80e8633cbbfea7a167a562d7151ad07d18758;p=modules%2Feficas.git *** empty log message *** --- diff --git a/Aster/sdist.py b/Aster/sdist.py index 32354938..baaa3e21 100644 --- a/Aster/sdist.py +++ b/Aster/sdist.py @@ -22,7 +22,7 @@ import os,shutil,glob,sys import types -version="$Name: BR_dev_V1_14 $"[7:-2] or 'Test1_4' +version="$Name: $"[7:-2] or 'Test1_4' # ==========Path du noyau fourni par Aster==================== path_Noyau="../../AccasAster" # ============================================================ @@ -91,6 +91,7 @@ def main(): copyfiles('../generator',os.path.join(path_distrib,'generator'),['*.py']) copyfiles('../Editeur/icons',os.path.join(path_distrib,'Editeur','icons'),['*.gif']) copyfiles('../Editeur/Patrons',os.path.join(path_distrib,'Editeur','Patrons'),['*.com*']) + copyfiles('../Editeur/Patrons/ASTER',os.path.join(path_distrib,'Editeur','Patrons','ASTER'),['*.com*']) copyfiles(os.path.join(path_Noyau,'Noyau'),os.path.join(path_distrib,'Noyau'),['*.py']) copyfiles(os.path.join(path_Noyau,'Validation'),os.path.join(path_distrib,'Validation'),['*.py']) diff --git a/Editeur/Patrons/ASTER/AnalyseModale.salome.comm b/Editeur/Patrons/ASTER/AnalyseModale.salome.comm new file mode 100644 index 00000000..898d5715 --- /dev/null +++ b/Editeur/Patrons/ASTER/AnalyseModale.salome.comm @@ -0,0 +1,64 @@ +DEBUT(); + +# 1 - MISE EN DONNEES : +# LECTURE DU MAILLAGE MED + +MAIL=LIRE_MAILLAGE(UNITE=21, + FORMAT='MED',); +# +# DEFINITION DES ELEMENTS FINIS UTILISES + +MODELE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); +# +# DEFINITION DU MATERIAU UTILISE + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, + NU=0.3, + RHO=7800.0,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + MATER=ACIER,),); + +# +# DEFINITION DES CONDITIONS AUX LIMITES + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, + DDL_IMPO=_F(GROUP_MA='ABB1A1', + DX=0.0, + DY=0.0, + DZ=0.0,),); + +# 2 - CALCUL DES CINQ PREMIERS MODES PROPRES +# +# CALCUL DES MATRICES ASSEMBLEES K ET M + +MACRO_MATR_ASSE(MODELE=MODELE, + CHAM_MATER=CHMAT, + CHARGE=BLOQUAGE, + NUME_DDL=CO('NUMEDDL'), + MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), + OPTION='RIGI_MECA',), + _F(MATRICE=CO('MASSE'), + OPTION='MASS_MECA',),),); +# + +MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, + MATR_B=MASSE, + CALC_FREQ=_F( + OPTION='PLUS_PETITE', + NMAX_FREQ=5,),); +# +# ECRITURE DES MODES AU FORMAT MED + +IMPR_RESU(MODELE=MODELE, + FORMAT='MED', + RESU=_F(MAILLAGE=MAIL, + RESULTAT=MODES, + NOM_CHAM='DEPL',),); + +FIN(); +# diff --git a/Editeur/Patrons/ASTER/elasticite.salome.comm b/Editeur/Patrons/ASTER/elasticite.salome.comm new file mode 100644 index 00000000..454762be --- /dev/null +++ b/Editeur/Patrons/ASTER/elasticite.salome.comm @@ -0,0 +1,55 @@ +DEBUT(); + +MA=DEFI_MATERIAU(ELAS=_F(E=210000000000, + NU=0.3,),); + + + +MAIL=LIRE_MAILLAGE(UNITE=21, + FORMAT='MED', + INFO_MED=2,); + +MODE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + PHENOMENE='MECANIQUE', + MODELISATION= '3D',),); + + + +MATE=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + MATER=MA,),); + +CHAR=AFFE_CHAR_MECA(MODELE=MODE, + FACE_IMPO=( + _F(GROUP_MA='ABB1A1', + DX=0, + DY=0, + DZ=0,),), + PRES_REP=( + _F(GROUP_MA='CDD1C1', + PRES=10000,),),); + +RESU=MECA_STATIQUE(MODELE=MODE, + CHAM_MATER=MATE, + EXCIT=_F(CHARGE=CHAR,),); + +RESU=CALC_ELEM(reuse =RESU, + MODELE=MODE, + CHAM_MATER=MATE, + RESULTAT=RESU, + OPTION=('SIGM_ELNO_DEPL','EQUI_ELNO_SIGM',), + EXCIT=_F( + CHARGE=CHAR,),); + +RESU=CALC_NO(reuse =RESU, + RESULTAT=RESU, + OPTION=('SIGM_NOEU_DEPL', 'EQUI_NOEU_SIGM', ),); + +IMPR_RESU(FORMAT='MED', + UNITE=80, + RESU=_F(MAILLAGE=MAIL, + RESULTAT=RESU, + NOM_CHAM=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM','DEPL',),),); + +FIN(); \ No newline at end of file diff --git a/Editeur/Patrons/ASTER/limaillage.comm b/Editeur/Patrons/ASTER/limaillage.comm new file mode 100644 index 00000000..bb12c443 --- /dev/null +++ b/Editeur/Patrons/ASTER/limaillage.comm @@ -0,0 +1,11 @@ + + +DEBUT(CODE=_F(NOM='VIDE', + NIV_PUB_WEB='INTERNET',),); +# + +MA=LIRE_MAILLAGE(); + + +FIN(); +# diff --git a/Editeur/Patrons/ASTER/modes_3D.comm b/Editeur/Patrons/ASTER/modes_3D.comm new file mode 100644 index 00000000..aafe1f2a --- /dev/null +++ b/Editeur/Patrons/ASTER/modes_3D.comm @@ -0,0 +1,57 @@ + +# PATRON +# ANALYSE MODALE +# 3D + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MODELE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); +# MATERIAU + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, + NU=0.3, + RHO=7800.0,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + MATER=ACIER,),); + +# CONDITIONS AUX LIMITES ET CHARGEMENT +# CONDITIONS AUX LIMITES + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, + DDL_IMPO=_F(GROUP_MA='ENCAST', + LIAISON='ENCASTRE',),); +# CALCUL DES MATRICES ASSEMBLEES K ET M + +MACRO_MATR_ASSE(MODELE=MODELE, + CHAM_MATER=CHMAT, + CHARGE=BLOQUAGE, + NUME_DDL=CO('NUMEDDL'), + MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), + OPTION='RIGI_MECA',), + _F(MATRICE=CO('MASSE'), + OPTION='MASS_MECA',),),); +# CALCUL DES CINQ PREMIERS MODES + +MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, + MATR_B=MASSE, + CALC_FREQ=_F( + OPTION='PLUS_PETITE', + NMAX_FREQ=5,),); +# ECRITURE DES MODES AU FORMAT GMSH + +IMPR_RESU(MODELE=MODELE, + FORMAT='GMSH', + UNITE=19, + RESU=_F(MAILLAGE=MAIL, + RESULTAT=MODES, + NOM_CHAM='DEPL',),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/modes_pou.comm b/Editeur/Patrons/ASTER/modes_pou.comm new file mode 100644 index 00000000..fc72e239 --- /dev/null +++ b/Editeur/Patrons/ASTER/modes_pou.comm @@ -0,0 +1,63 @@ + +# PATRON +# ANALYSE MODALE +# POUTRE + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MODELE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); +# MATERIAU + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, + NU=0.3, + RHO=7800.0,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + MATER=ACIER,),); + +CARELEM=AFFE_CARA_ELEM(MODELE=MODELE, + POUTRE=_F(GROUP_MA='OBJET', + SECTION='CERCLE', + CARA=('R','EP',), + VALE=(1.0,0.01,),),); +# CONDITIONS AUX LIMITES + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, + DDL_IMPO=_F(GROUP_MA='ENCAST', + LIAISON='ENCASTRE',),); +#MATRICES ASSEMBLEES K, M +# + +MACRO_MATR_ASSE(MODELE=MODELE, + CHAM_MATER=CHMAT, + CARA_ELEM=CARELEM, + CHARGE=BLOQUAGE, + NUME_DDL=CO('NUMEDDL'), + MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), + OPTION='RIGI_MECA',), + _F(MATRICE=CO('MASSE'), + OPTION='MASS_MECA',),),); +#5 PREMIERS MODES + +MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, + MATR_B=MASSE, + CALC_FREQ=_F( + OPTION='PLUS_PETITE', + NMAX_FREQ=5,),); +# MODES AU FORMAT GMSH + +IMPR_RESU(MODELE=MODELE, + FORMAT='GMSH', + UNITE=19, + RESU=_F(MAILLAGE=MAIL, + RESULTAT=MODES, + NOM_CHAM='DEPL',),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/statlin_3D.comm b/Editeur/Patrons/ASTER/statlin_3D.comm new file mode 100644 index 00000000..39f7057f --- /dev/null +++ b/Editeur/Patrons/ASTER/statlin_3D.comm @@ -0,0 +1,57 @@ + +# PATRON +# ANALYSE STATIQUE +# 3D + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MAIL=DEFI_GROUP(reuse =MAIL, + MAILLAGE=MAIL, + CREA_GROUP_MA=_F(NOM='TOUT', + TOUT='OUI',),); + +MODMECA=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='TOUT', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.E11, + NU=0.3,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + MATER=ACIER,),); +# CONDITIONS AUX LIMITES ET CHARGEMENT +#POINT A : ENCASTREMENT + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODMECA, + DDL_IMPO=_F(GROUP_MA='ENCAST', + LIAISON='ENCASTRE',),); +#POINT B : FORCE IMPOSEE + +CHARGT=AFFE_CHAR_MECA(MODELE=MODMECA, + FORCE_NODALE=_F(GROUP_NO='PB', + FY=1000.0,),); +# RESOLUTION DU PROBLEME ELASTIQUE + +RESU1=MECA_STATIQUE(MODELE=MODMECA, + CHAM_MATER=CHMAT, + EXCIT=(_F(CHARGE=BLOQUAGE,), + _F(CHARGE=CHARGT,),),); +# CALCUL DES EFFORTS + +RESU1=CALC_ELEM(reuse =RESU1, + RESULTAT=RESU1, + OPTION='EFGE_ELNO_DEPL',); +# RESULTATS FORMAT GMSH + +IMPR_RESU(MODELE=MODMECA, + FORMAT='GMSH', + RESU=_F(MAILLAGE=MAIL, + RESULTAT=RESU1, + NOM_CHAM=('DEPL','EFGE_ELNO_DEPL',),),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/statlin_pou.comm b/Editeur/Patrons/ASTER/statlin_pou.comm new file mode 100644 index 00000000..0dd06eb4 --- /dev/null +++ b/Editeur/Patrons/ASTER/statlin_pou.comm @@ -0,0 +1,70 @@ + +# PATRON +# ANALYSE STATIQUE +# POUTRE + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MAIL=DEFI_GROUP(reuse =MAIL, + MAILLAGE=MAIL, + CREA_GROUP_MA=_F(NOM='TOUT', + TOUT='OUI',),); + +MODMECA=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='TOUT', + PHENOMENE='MECANIQUE', + MODELISATION='POU_D_T',),); + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.E10, + NU=0.3,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(TOUT='OUI', + MATER=ACIER,),); +R1 = 1.0; + +EP1 = 0.001; + + +CARA_POU=AFFE_CARA_ELEM(MODELE=MODMECA, + POUTRE=_F(GROUP_MA='TOUT', + SECTION='CERCLE', + CARA=('R','EP',), + VALE=(R1,EP1,),),); + +# CONDITIONS AUX LIMITES ET CHARGEMENT + +#POINT A : ENCASTREMENT + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODMECA, + DDL_IMPO=_F(GROUP_NO='PA', + LIAISON='ENCASTRE',),); +#POINT B : FORCE IMPOSEE + +CHARGT=AFFE_CHAR_MECA(MODELE=MODMECA, + FORCE_NODALE=_F(GROUP_NO='PB', + FY=1000.0,),); +# RESOLUTION DU PROBLEME ELASTIQUE + +RESU1=MECA_STATIQUE(MODELE=MODMECA, + CHAM_MATER=CHMAT, + CARA_ELEM=CARA_POU, + EXCIT=(_F(CHARGE=BLOQUAGE,), + _F(CHARGE=CHARGT,),),); +# CALCUL DES EFFORTS + +RESU1=CALC_ELEM(reuse =RESU1, + RESULTAT=RESU1, + OPTION='EFGE_ELNO_DEPL',); +# RESULTATS FORMAT GMSH + +IMPR_RESU(MODELE=MODMECA, + FORMAT='GMSH', + RESU=_F(MAILLAGE=MAIL, + RESULTAT=RESU1, + NOM_CHAM=('DEPL','EFGE_ELNO_DEPL',),),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/thermique.salome.comm b/Editeur/Patrons/ASTER/thermique.salome.comm new file mode 100644 index 00000000..61c6fa16 --- /dev/null +++ b/Editeur/Patrons/ASTER/thermique.salome.comm @@ -0,0 +1,34 @@ + + +DEBUT(); + +MESH=LIRE_MAILLAGE(UNITE=21, + FORMAT='MED',); + +MATER=DEFI_MATERIAU(THER=_F(LAMBDA=1.2,),); + +MODEL=AFFE_MODELE(MAILLAGE=MESH, + AFFE=_F(TOUT='OUI', + PHENOMENE='THERMIQUE', + MODELISATION='3D',),); + +MATFIELD=AFFE_MATERIAU(MAILLAGE=MESH, + AFFE=_F(TOUT='OUI', + MATER=MATER,),); + +LOADING=AFFE_CHAR_THER(MODELE=MODEL, + TEMP_IMPO=_F(GROUP_MA='Bloq', + TEMP=23.,), + FLUX_REP=_F(GROUP_MA='Press', + FLUN=2.,), + SOURCE=_F(GROUP_MA='Source', + SOUR=2.,),); + +TEMP=THER_LINEAIRE(MODELE=MODEL, + CHAM_MATER=MATFIELD, + EXCIT=_F(CHARGE=LOADING,),); + +IMPR_RESU(FORMAT='MED', + RESU=_F(RESULTAT=TEMP,),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/tradir_3D.comm b/Editeur/Patrons/ASTER/tradir_3D.comm new file mode 100644 index 00000000..41d17e57 --- /dev/null +++ b/Editeur/Patrons/ASTER/tradir_3D.comm @@ -0,0 +1,72 @@ + +# PATRON +# ANALYSE MODALE +# 3D + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MODELE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); +# MATERIAU + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, + NU=0.3, + RHO=7800.0,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + MATER=ACIER,),); +# CONDITIONS AUX LIMITES ET CHARGEMENT +# CONDITIONS AUX LIMITES + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, + DDL_IMPO=_F(GROUP_MA='ENCAST', + LIAISON='ENCASTRE',),); +# CALCUL DES MATRICES ASSEMBLEES K ET M + +MACRO_MATR_ASSE(MODELE=MODELE, + CHAM_MATER=CHMAT, + CHARGE=BLOQUAGE, + NUME_DDL=CO('NUMEDDL'), + MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), + OPTION='RIGI_MECA',), + _F(MATRICE=CO('MASSE'), + OPTION='MASS_MECA',),),); +# CALCUL DES CINQ PREMIERS MODES + +MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, + MATR_B=MASSE, + CALC_FREQ=_F( + OPTION='PLUS_PETITE', + NMAX_FREQ=5,),); +#CHARGEMENT + +EXCIT=AFFE_CHAR_MECA(MODELE=MODELE, + PRES_REP=_F(GROUP_MA='PRESSE', + PRES=100.e5,),); + +EXCEL=CALC_VECT_ELEM(OPTION='CHAR_MECA', + CHARGE=EXCIT,); + +EXCASS=ASSE_VECTEUR(VECT_ELEM=EXCEL, + NUME_DDL=NUMEDDL,); +OMEGA = 10.0; + + +SINU = FORMULE(VALE='sin(OMEGA*INST)', + NOM_PARA='INST',); +#CALCUL TRANSITOIRE + +TRADIR=DYNA_LINE_TRAN(MATR_MASS=MASSE, + MATR_RIGI=RIGIDITE, + NEWMARK=_F(), + EXCIT=_F(VECT_ASSE=EXCASS,), + INCREMENT=_F(PAS=.01, + INST_FIN=10.,),); + +FIN(); diff --git a/Editeur/Patrons/ASTER/tramod_3D.comm b/Editeur/Patrons/ASTER/tramod_3D.comm new file mode 100644 index 00000000..9a68bc5d --- /dev/null +++ b/Editeur/Patrons/ASTER/tramod_3D.comm @@ -0,0 +1,86 @@ + +# PATRON +# ANALYSE MODALE +# 3D + +DEBUT(); +# MISE EN DONNEES + +MAIL=LIRE_MAILLAGE(); + +MODELE=AFFE_MODELE(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + PHENOMENE='MECANIQUE', + MODELISATION='3D',),); +# MATERIAU + +ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, + NU=0.3, + RHO=7800.0,),); + +CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, + AFFE=_F(GROUP_MA='OBJET', + MATER=ACIER,),); +# CONDITIONS AUX LIMITES ET CHARGEMENT +# CONDITIONS AUX LIMITES + +BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, + DDL_IMPO=_F(GROUP_MA='ENCAST', + LIAISON='ENCASTRE',),); +# CALCUL DES MATRICES ASSEMBLEES K ET M + +MACRO_MATR_ASSE(MODELE=MODELE, + CHAM_MATER=CHMAT, + CHARGE=BLOQUAGE, + NUME_DDL=CO('NUMEDDL'), + MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), + OPTION='RIGI_MECA',), + _F(MATRICE=CO('MASSE'), + OPTION='MASS_MECA',),),); + +P=POST_ELEM(MASS_INER=_F(TOUT='OUI', + GROUP_MA='M',),); +# CALCUL DES CINQ PREMIERS MODES + +MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, + MATR_B=MASSE, + CALC_FREQ=_F( + OPTION='PLUS_PETITE', + NMAX_FREQ=5,),); +#CHARGEMENT + +EXCIT=AFFE_CHAR_MECA(MODELE=MODELE, + PRES_REP=_F(GROUP_MA='PRESSE', + PRES=100.e5,),); + +EXCEL=CALC_VECT_ELEM(OPTION='CHAR_MECA', + CHARGE=EXCIT,); + +EXCASS=ASSE_VECTEUR(VECT_ELEM=EXCEL, + NUME_DDL=NUMEDDL,); +OMEGA = 10.0; + + +SINU = FORMULE(VALE='sin(OMEGA*INST)', + NOM_PARA='INST',); +#PROJECTION + +MACRO_PROJ_BASE(BASE=MODES, + MATR_ASSE_GENE=(_F(MATRICE=CO('MASSPROJ'), + MATR_ASSE=MASSE,), + _F(MATRICE=CO('RIGIPROJ'), + MATR_ASSE=RIGIDITE,),), + VECT_ASSE_GENE=_F(VECTEUR=CO('EXCPROJ'), + VECT_ASSE=EXCASS,),); +#CALCUL TRANSITOIRE + +TRAMOD=DYNA_TRAN_MODAL(MASS_GENE=MASSPROJ, + RIGI_GENE=RIGIPROJ, + AMOR_REDUIT=(.02,.01,), + INCREMENT=_F(INST_INIT=0.0, + INST_FIN=10.0, + PAS=.001,), + EXCIT=_F(VECT_GENE=EXCPROJ, + FONC_MULT=SINU,),); + +FIN(); diff --git a/Editeur/Patrons/AnalyseModale.salome.comm b/Editeur/Patrons/AnalyseModale.salome.comm deleted file mode 100644 index 898d5715..00000000 --- a/Editeur/Patrons/AnalyseModale.salome.comm +++ /dev/null @@ -1,64 +0,0 @@ -DEBUT(); - -# 1 - MISE EN DONNEES : -# LECTURE DU MAILLAGE MED - -MAIL=LIRE_MAILLAGE(UNITE=21, - FORMAT='MED',); -# -# DEFINITION DES ELEMENTS FINIS UTILISES - -MODELE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); -# -# DEFINITION DU MATERIAU UTILISE - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, - NU=0.3, - RHO=7800.0,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=ACIER,),); - -# -# DEFINITION DES CONDITIONS AUX LIMITES - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=_F(GROUP_MA='ABB1A1', - DX=0.0, - DY=0.0, - DZ=0.0,),); - -# 2 - CALCUL DES CINQ PREMIERS MODES PROPRES -# -# CALCUL DES MATRICES ASSEMBLEES K ET M - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMAT, - CHARGE=BLOQUAGE, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),); -# - -MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE, - CALC_FREQ=_F( - OPTION='PLUS_PETITE', - NMAX_FREQ=5,),); -# -# ECRITURE DES MODES AU FORMAT MED - -IMPR_RESU(MODELE=MODELE, - FORMAT='MED', - RESU=_F(MAILLAGE=MAIL, - RESULTAT=MODES, - NOM_CHAM='DEPL',),); - -FIN(); -# diff --git a/Editeur/Patrons/OPENTURNS/Anne.comm b/Editeur/Patrons/OPENTURNS/Anne.comm new file mode 100644 index 00000000..f958af00 --- /dev/null +++ b/Editeur/Patrons/OPENTURNS/Anne.comm @@ -0,0 +1,38 @@ + +L_E=DISTRIBUTION(Kind='Normal', + Mu=1.0, + Sigma=0.5,); + +L_L=DISTRIBUTION(Kind='LogNormal', + Settings='MuSigmaOverMu', + Gamma=0.0,); + +STUDY(Analysis='Reliability', + Algorithm='FORM', + Method='Cobyla', + Threshold=5.0, + ComparisonOperator='Less', + SeedToBeSet='no', + Variables=(_F(Name='E', + Type='in', + MarginalDistribution=L_E,), + _F(Name='L', + Type='in', + MarginalDistribution=L_L,), + _F(Name='O', + Type='out',),), + Solver='aaa', + WrapperPath='aster.so', + FunctionName='aster', + WrapCouplingMode='fork', + Command='/usr/bin/runaster', + InDataTransfer='files', + OutDataTransfer='files', + Files=(_F(Id='fich1', + Type='in', + Path='../fich_entree', + Subst='E,L',), + _F(Id='fich2', + Type='out', + Path='fich_sortie', + Subst='O',),),); diff --git a/Editeur/Patrons/elasticite.salome.comm b/Editeur/Patrons/elasticite.salome.comm deleted file mode 100644 index 454762be..00000000 --- a/Editeur/Patrons/elasticite.salome.comm +++ /dev/null @@ -1,55 +0,0 @@ -DEBUT(); - -MA=DEFI_MATERIAU(ELAS=_F(E=210000000000, - NU=0.3,),); - - - -MAIL=LIRE_MAILLAGE(UNITE=21, - FORMAT='MED', - INFO_MED=2,); - -MODE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - PHENOMENE='MECANIQUE', - MODELISATION= '3D',),); - - - -MATE=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=MA,),); - -CHAR=AFFE_CHAR_MECA(MODELE=MODE, - FACE_IMPO=( - _F(GROUP_MA='ABB1A1', - DX=0, - DY=0, - DZ=0,),), - PRES_REP=( - _F(GROUP_MA='CDD1C1', - PRES=10000,),),); - -RESU=MECA_STATIQUE(MODELE=MODE, - CHAM_MATER=MATE, - EXCIT=_F(CHARGE=CHAR,),); - -RESU=CALC_ELEM(reuse =RESU, - MODELE=MODE, - CHAM_MATER=MATE, - RESULTAT=RESU, - OPTION=('SIGM_ELNO_DEPL','EQUI_ELNO_SIGM',), - EXCIT=_F( - CHARGE=CHAR,),); - -RESU=CALC_NO(reuse =RESU, - RESULTAT=RESU, - OPTION=('SIGM_NOEU_DEPL', 'EQUI_NOEU_SIGM', ),); - -IMPR_RESU(FORMAT='MED', - UNITE=80, - RESU=_F(MAILLAGE=MAIL, - RESULTAT=RESU, - NOM_CHAM=('SIGM_NOEU_DEPL','EQUI_NOEU_SIGM','DEPL',),),); - -FIN(); \ No newline at end of file diff --git a/Editeur/Patrons/limaillage.comm b/Editeur/Patrons/limaillage.comm deleted file mode 100644 index bb12c443..00000000 --- a/Editeur/Patrons/limaillage.comm +++ /dev/null @@ -1,11 +0,0 @@ - - -DEBUT(CODE=_F(NOM='VIDE', - NIV_PUB_WEB='INTERNET',),); -# - -MA=LIRE_MAILLAGE(); - - -FIN(); -# diff --git a/Editeur/Patrons/modes_3D.comm b/Editeur/Patrons/modes_3D.comm deleted file mode 100644 index aafe1f2a..00000000 --- a/Editeur/Patrons/modes_3D.comm +++ /dev/null @@ -1,57 +0,0 @@ - -# PATRON -# ANALYSE MODALE -# 3D - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MODELE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); -# MATERIAU - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, - NU=0.3, - RHO=7800.0,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - MATER=ACIER,),); - -# CONDITIONS AUX LIMITES ET CHARGEMENT -# CONDITIONS AUX LIMITES - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=_F(GROUP_MA='ENCAST', - LIAISON='ENCASTRE',),); -# CALCUL DES MATRICES ASSEMBLEES K ET M - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMAT, - CHARGE=BLOQUAGE, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),); -# CALCUL DES CINQ PREMIERS MODES - -MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE, - CALC_FREQ=_F( - OPTION='PLUS_PETITE', - NMAX_FREQ=5,),); -# ECRITURE DES MODES AU FORMAT GMSH - -IMPR_RESU(MODELE=MODELE, - FORMAT='GMSH', - UNITE=19, - RESU=_F(MAILLAGE=MAIL, - RESULTAT=MODES, - NOM_CHAM='DEPL',),); - -FIN(); diff --git a/Editeur/Patrons/modes_pou.comm b/Editeur/Patrons/modes_pou.comm deleted file mode 100644 index fc72e239..00000000 --- a/Editeur/Patrons/modes_pou.comm +++ /dev/null @@ -1,63 +0,0 @@ - -# PATRON -# ANALYSE MODALE -# POUTRE - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MODELE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); -# MATERIAU - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, - NU=0.3, - RHO=7800.0,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - MATER=ACIER,),); - -CARELEM=AFFE_CARA_ELEM(MODELE=MODELE, - POUTRE=_F(GROUP_MA='OBJET', - SECTION='CERCLE', - CARA=('R','EP',), - VALE=(1.0,0.01,),),); -# CONDITIONS AUX LIMITES - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=_F(GROUP_MA='ENCAST', - LIAISON='ENCASTRE',),); -#MATRICES ASSEMBLEES K, M -# - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMAT, - CARA_ELEM=CARELEM, - CHARGE=BLOQUAGE, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),); -#5 PREMIERS MODES - -MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE, - CALC_FREQ=_F( - OPTION='PLUS_PETITE', - NMAX_FREQ=5,),); -# MODES AU FORMAT GMSH - -IMPR_RESU(MODELE=MODELE, - FORMAT='GMSH', - UNITE=19, - RESU=_F(MAILLAGE=MAIL, - RESULTAT=MODES, - NOM_CHAM='DEPL',),); - -FIN(); diff --git a/Editeur/Patrons/statlin_3D.comm b/Editeur/Patrons/statlin_3D.comm deleted file mode 100644 index 39f7057f..00000000 --- a/Editeur/Patrons/statlin_3D.comm +++ /dev/null @@ -1,57 +0,0 @@ - -# PATRON -# ANALYSE STATIQUE -# 3D - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MAIL=DEFI_GROUP(reuse =MAIL, - MAILLAGE=MAIL, - CREA_GROUP_MA=_F(NOM='TOUT', - TOUT='OUI',),); - -MODMECA=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='TOUT', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.E11, - NU=0.3,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=ACIER,),); -# CONDITIONS AUX LIMITES ET CHARGEMENT -#POINT A : ENCASTREMENT - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODMECA, - DDL_IMPO=_F(GROUP_MA='ENCAST', - LIAISON='ENCASTRE',),); -#POINT B : FORCE IMPOSEE - -CHARGT=AFFE_CHAR_MECA(MODELE=MODMECA, - FORCE_NODALE=_F(GROUP_NO='PB', - FY=1000.0,),); -# RESOLUTION DU PROBLEME ELASTIQUE - -RESU1=MECA_STATIQUE(MODELE=MODMECA, - CHAM_MATER=CHMAT, - EXCIT=(_F(CHARGE=BLOQUAGE,), - _F(CHARGE=CHARGT,),),); -# CALCUL DES EFFORTS - -RESU1=CALC_ELEM(reuse =RESU1, - RESULTAT=RESU1, - OPTION='EFGE_ELNO_DEPL',); -# RESULTATS FORMAT GMSH - -IMPR_RESU(MODELE=MODMECA, - FORMAT='GMSH', - RESU=_F(MAILLAGE=MAIL, - RESULTAT=RESU1, - NOM_CHAM=('DEPL','EFGE_ELNO_DEPL',),),); - -FIN(); diff --git a/Editeur/Patrons/statlin_pou.comm b/Editeur/Patrons/statlin_pou.comm deleted file mode 100644 index 0dd06eb4..00000000 --- a/Editeur/Patrons/statlin_pou.comm +++ /dev/null @@ -1,70 +0,0 @@ - -# PATRON -# ANALYSE STATIQUE -# POUTRE - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MAIL=DEFI_GROUP(reuse =MAIL, - MAILLAGE=MAIL, - CREA_GROUP_MA=_F(NOM='TOUT', - TOUT='OUI',),); - -MODMECA=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='TOUT', - PHENOMENE='MECANIQUE', - MODELISATION='POU_D_T',),); - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.E10, - NU=0.3,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(TOUT='OUI', - MATER=ACIER,),); -R1 = 1.0; - -EP1 = 0.001; - - -CARA_POU=AFFE_CARA_ELEM(MODELE=MODMECA, - POUTRE=_F(GROUP_MA='TOUT', - SECTION='CERCLE', - CARA=('R','EP',), - VALE=(R1,EP1,),),); - -# CONDITIONS AUX LIMITES ET CHARGEMENT - -#POINT A : ENCASTREMENT - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODMECA, - DDL_IMPO=_F(GROUP_NO='PA', - LIAISON='ENCASTRE',),); -#POINT B : FORCE IMPOSEE - -CHARGT=AFFE_CHAR_MECA(MODELE=MODMECA, - FORCE_NODALE=_F(GROUP_NO='PB', - FY=1000.0,),); -# RESOLUTION DU PROBLEME ELASTIQUE - -RESU1=MECA_STATIQUE(MODELE=MODMECA, - CHAM_MATER=CHMAT, - CARA_ELEM=CARA_POU, - EXCIT=(_F(CHARGE=BLOQUAGE,), - _F(CHARGE=CHARGT,),),); -# CALCUL DES EFFORTS - -RESU1=CALC_ELEM(reuse =RESU1, - RESULTAT=RESU1, - OPTION='EFGE_ELNO_DEPL',); -# RESULTATS FORMAT GMSH - -IMPR_RESU(MODELE=MODMECA, - FORMAT='GMSH', - RESU=_F(MAILLAGE=MAIL, - RESULTAT=RESU1, - NOM_CHAM=('DEPL','EFGE_ELNO_DEPL',),),); - -FIN(); diff --git a/Editeur/Patrons/thermique.salome.comm b/Editeur/Patrons/thermique.salome.comm deleted file mode 100644 index 61c6fa16..00000000 --- a/Editeur/Patrons/thermique.salome.comm +++ /dev/null @@ -1,34 +0,0 @@ - - -DEBUT(); - -MESH=LIRE_MAILLAGE(UNITE=21, - FORMAT='MED',); - -MATER=DEFI_MATERIAU(THER=_F(LAMBDA=1.2,),); - -MODEL=AFFE_MODELE(MAILLAGE=MESH, - AFFE=_F(TOUT='OUI', - PHENOMENE='THERMIQUE', - MODELISATION='3D',),); - -MATFIELD=AFFE_MATERIAU(MAILLAGE=MESH, - AFFE=_F(TOUT='OUI', - MATER=MATER,),); - -LOADING=AFFE_CHAR_THER(MODELE=MODEL, - TEMP_IMPO=_F(GROUP_MA='Bloq', - TEMP=23.,), - FLUX_REP=_F(GROUP_MA='Press', - FLUN=2.,), - SOURCE=_F(GROUP_MA='Source', - SOUR=2.,),); - -TEMP=THER_LINEAIRE(MODELE=MODEL, - CHAM_MATER=MATFIELD, - EXCIT=_F(CHARGE=LOADING,),); - -IMPR_RESU(FORMAT='MED', - RESU=_F(RESULTAT=TEMP,),); - -FIN(); diff --git a/Editeur/Patrons/tradir_3D.comm b/Editeur/Patrons/tradir_3D.comm deleted file mode 100644 index 41d17e57..00000000 --- a/Editeur/Patrons/tradir_3D.comm +++ /dev/null @@ -1,72 +0,0 @@ - -# PATRON -# ANALYSE MODALE -# 3D - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MODELE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); -# MATERIAU - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, - NU=0.3, - RHO=7800.0,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - MATER=ACIER,),); -# CONDITIONS AUX LIMITES ET CHARGEMENT -# CONDITIONS AUX LIMITES - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=_F(GROUP_MA='ENCAST', - LIAISON='ENCASTRE',),); -# CALCUL DES MATRICES ASSEMBLEES K ET M - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMAT, - CHARGE=BLOQUAGE, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),); -# CALCUL DES CINQ PREMIERS MODES - -MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE, - CALC_FREQ=_F( - OPTION='PLUS_PETITE', - NMAX_FREQ=5,),); -#CHARGEMENT - -EXCIT=AFFE_CHAR_MECA(MODELE=MODELE, - PRES_REP=_F(GROUP_MA='PRESSE', - PRES=100.e5,),); - -EXCEL=CALC_VECT_ELEM(OPTION='CHAR_MECA', - CHARGE=EXCIT,); - -EXCASS=ASSE_VECTEUR(VECT_ELEM=EXCEL, - NUME_DDL=NUMEDDL,); -OMEGA = 10.0; - - -SINU = FORMULE(VALE='sin(OMEGA*INST)', - NOM_PARA='INST',); -#CALCUL TRANSITOIRE - -TRADIR=DYNA_LINE_TRAN(MATR_MASS=MASSE, - MATR_RIGI=RIGIDITE, - NEWMARK=_F(), - EXCIT=_F(VECT_ASSE=EXCASS,), - INCREMENT=_F(PAS=.01, - INST_FIN=10.,),); - -FIN(); diff --git a/Editeur/Patrons/tramod_3D.comm b/Editeur/Patrons/tramod_3D.comm deleted file mode 100644 index 9a68bc5d..00000000 --- a/Editeur/Patrons/tramod_3D.comm +++ /dev/null @@ -1,86 +0,0 @@ - -# PATRON -# ANALYSE MODALE -# 3D - -DEBUT(); -# MISE EN DONNEES - -MAIL=LIRE_MAILLAGE(); - -MODELE=AFFE_MODELE(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - PHENOMENE='MECANIQUE', - MODELISATION='3D',),); -# MATERIAU - -ACIER=DEFI_MATERIAU(ELAS=_F(E=2.1E11, - NU=0.3, - RHO=7800.0,),); - -CHMAT=AFFE_MATERIAU(MAILLAGE=MAIL, - AFFE=_F(GROUP_MA='OBJET', - MATER=ACIER,),); -# CONDITIONS AUX LIMITES ET CHARGEMENT -# CONDITIONS AUX LIMITES - -BLOQUAGE=AFFE_CHAR_MECA(MODELE=MODELE, - DDL_IMPO=_F(GROUP_MA='ENCAST', - LIAISON='ENCASTRE',),); -# CALCUL DES MATRICES ASSEMBLEES K ET M - -MACRO_MATR_ASSE(MODELE=MODELE, - CHAM_MATER=CHMAT, - CHARGE=BLOQUAGE, - NUME_DDL=CO('NUMEDDL'), - MATR_ASSE=(_F(MATRICE=CO('RIGIDITE'), - OPTION='RIGI_MECA',), - _F(MATRICE=CO('MASSE'), - OPTION='MASS_MECA',),),); - -P=POST_ELEM(MASS_INER=_F(TOUT='OUI', - GROUP_MA='M',),); -# CALCUL DES CINQ PREMIERS MODES - -MODES=MODE_ITER_SIMULT(MATR_A=RIGIDITE, - MATR_B=MASSE, - CALC_FREQ=_F( - OPTION='PLUS_PETITE', - NMAX_FREQ=5,),); -#CHARGEMENT - -EXCIT=AFFE_CHAR_MECA(MODELE=MODELE, - PRES_REP=_F(GROUP_MA='PRESSE', - PRES=100.e5,),); - -EXCEL=CALC_VECT_ELEM(OPTION='CHAR_MECA', - CHARGE=EXCIT,); - -EXCASS=ASSE_VECTEUR(VECT_ELEM=EXCEL, - NUME_DDL=NUMEDDL,); -OMEGA = 10.0; - - -SINU = FORMULE(VALE='sin(OMEGA*INST)', - NOM_PARA='INST',); -#PROJECTION - -MACRO_PROJ_BASE(BASE=MODES, - MATR_ASSE_GENE=(_F(MATRICE=CO('MASSPROJ'), - MATR_ASSE=MASSE,), - _F(MATRICE=CO('RIGIPROJ'), - MATR_ASSE=RIGIDITE,),), - VECT_ASSE_GENE=_F(VECTEUR=CO('EXCPROJ'), - VECT_ASSE=EXCASS,),); -#CALCUL TRANSITOIRE - -TRAMOD=DYNA_TRAN_MODAL(MASS_GENE=MASSPROJ, - RIGI_GENE=RIGIPROJ, - AMOR_REDUIT=(.02,.01,), - INCREMENT=_F(INST_INIT=0.0, - INST_FIN=10.0, - PAS=.001,), - EXCIT=_F(VECT_GENE=EXCPROJ, - FONC_MULT=SINU,),); - -FIN(); diff --git a/Editeur/listePatrons.py b/Editeur/listePatrons.py index 690adb40..fe54d854 100644 --- a/Editeur/listePatrons.py +++ b/Editeur/listePatrons.py @@ -1,21 +1,25 @@ import os import re -sous_menu={0:{"3D":"3D.comm"},1:{"poutre":"pou.comm"},2:{"salome":"salome.comm"},3:{"divers":"comm"}} +sous_menus={"ASTER" : {0:{"3D":"3D.comm"},1:{"poutre":"pou.comm"},2:{"salome":"salome.comm"},3:{"divers":"comm"}}, + "OPENTURNS" : {0:{"Anne":"Anne.comm"}} + } class listePatrons : - def __init__(self): + def __init__(self,code = "ASTER"): repIni=os.path.dirname(os.path.abspath(__file__)) - self.rep_patrons=repIni+"/Patrons" + self.rep_patrons=repIni+"/Patrons/"+code + self.sous_menu=sous_menus[code] + self.code=code self.liste={} self.traite_liste() def traite_liste(self): for file in os.listdir(self.rep_patrons): - for i in range(len(sous_menu)): - clef=sous_menu[i].keys()[0] - chaine=sous_menu[i][clef] + for i in range(len(self.sous_menu)): + clef=self.sous_menu[i].keys()[0] + chaine=self.sous_menu[i][clef] if re.search(chaine,file) : if clef in self.liste.keys(): self.liste[clef].append(file)