1 #@ MODIF macro_miss_3d_ops Macro DATE 20/03/2006 AUTEUR ACBHHCD G.DEVESA
2 # -*- coding: iso-8859-1 -*-
3 # CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
6 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
7 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
8 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
9 # (AT YOUR OPTION) ANY LATER VERSION.
11 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
12 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
13 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
14 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
16 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
17 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
18 # 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
19 # ======================================================================
23 def macro_miss_3d_ops(self,UNITE_IMPR_ASTER,UNITE_OPTI_MISS,
24 UNITE_MODELE_SOL,UNITE_RESU_IMPE,
25 PROJET,REPERTOIRE,OPTION,VERSION,
26 UNITE_RESU_FORC,PARAMETRE,**args):
28 Ecriture de la macro MACRO_MISS_3D
32 from Utilitai.Utmess import UTMESS
33 from types import TupleType, ListType
36 # On importe les definitions des commandes a utiliser dans la macro
37 # Le nom de la variable doit etre obligatoirement le nom de la commande
38 DEFI_FICHIER =self.get_cmd('DEFI_FICHIER')
39 EXEC_LOGICIEL =self.get_cmd('EXEC_LOGICIEL')
40 # La macro compte pour 1 dans la numerotation des commandes
43 DEFI_FICHIER(ACTION='LIBERER',UNITE=UNITE_IMPR_ASTER)
46 loc_fic=aster.repout()
47 miss3d=loc_fic+'miss3d'
48 #miss3d='/home/acbhhcd/MISS3D/V6.4/miss3d.csh'
50 if OPTION['TOUT']!=None:
52 elif OPTION['MODULE']=='MISS_IMPE':
54 elif OPTION['MODULE']=='MISS_EVOL':
56 elif OPTION['MODULE']=='PRE_MISS':
61 paste = 'fort.'+str(UNITE_IMPR_ASTER)
62 popti = 'fort.'+str(UNITE_OPTI_MISS)
63 pdsol = 'fort.'+str(UNITE_MODELE_SOL)
64 primp = 'fort.'+str(UNITE_RESU_IMPE)
65 prfor = 'fort.'+str(UNITE_RESU_FORC)
67 l_para = ['FREQ_MIN','FREQ_MAX','FREQ_PAS','Z0','RFIC','SURF',
68 'FICH_RESU_IMPE','FICH_RESU_FORC','DREF','ALGO',
69 'OFFSET_MAX','OFFSET_NB','SPEC_MAX','SPEC_NB','ISSF',
70 'FICH_POST_TRAI','CONTR_NB','CONTR_LISTE','LFREQ_NB',
72 if PARAMETRE != None and PARAMETRE['LFREQ_NB'] != None:
73 if len(PARAMETRE['LFREQ_LISTE']) != PARAMETRE['LFREQ_NB']:
74 UTMESS('F', 'MACRO_MISS3D', 'Longueur de LFREQ_LISTE incorrecte')
75 if PARAMETRE != None and PARAMETRE['CONTR_NB'] != None:
76 if len(PARAMETRE['CONTR_LISTE']) != 3*PARAMETRE['CONTR_NB']:
77 UTMESS('F', 'MACRO_MISS3D', 'Longueur de CONTR_LISTE incorrecte')
81 if cle in ('SURF', 'ISSF'):
85 if PARAMETRE != None and PARAMETRE[cle] != None:
86 if type(PARAMETRE[cle]) in (TupleType, ListType):
87 dpara[cle] = ' '.join([str(s) for s in PARAMETRE[cle]])
89 dpara[cle] = str(PARAMETRE[cle])
93 ARGUMENT=(_F(NOM_PARA=MODUL2),
100 _F(NOM_PARA=VERSION),
101 _F(NOM_PARA=dpara['FREQ_MIN']),
102 _F(NOM_PARA=dpara['FREQ_MAX']),
103 _F(NOM_PARA=dpara['FREQ_PAS']),
104 _F(NOM_PARA=dpara['Z0']),
105 _F(NOM_PARA=dpara['SURF']),
106 _F(NOM_PARA=dpara['RFIC']),
107 _F(NOM_PARA=dpara['FICH_RESU_IMPE']),
108 _F(NOM_PARA=dpara['FICH_RESU_FORC']),
109 _F(NOM_PARA=dpara['DREF']),
110 _F(NOM_PARA=dpara['ALGO']),
111 _F(NOM_PARA=dpara['OFFSET_MAX']),
112 _F(NOM_PARA=dpara['OFFSET_NB']),
113 _F(NOM_PARA=dpara['SPEC_MAX']),
114 _F(NOM_PARA=dpara['SPEC_NB']),
115 _F(NOM_PARA=dpara['ISSF']),
116 _F(NOM_PARA=dpara['FICH_POST_TRAI']),
117 _F(NOM_PARA=dpara['CONTR_NB']),
118 _F(NOM_PARA=dpara['CONTR_LISTE']),
119 _F(NOM_PARA=dpara['LFREQ_NB']),
120 _F(NOM_PARA=dpara['LFREQ_LISTE']),