1 # MODIF DATE 11/12/2001 AUTEUR DURAND C.DURAND
2 # TITRE GUIDE D'ONDE A SORTIE ANECHOIQUE (ONDES PLANES) E.F. CLASSIQUES
3 # CONFIGURATION MANAGEMENT OF EDF VERSION
4 # ======================================================================
5 # COPYRIGHT (C) 1991 - 2001 EDF R&D WWW.CODE-ASTER.ORG
6 # SEE THE FILE "LICENSE.TERMS" FOR INFORMATION ON USAGE AND
7 # REDISTRIBUTION OF THIS FILE.
8 # ======================================================================
9 # MODELISATION 'ACOUSTIQUE' AVEC ELEMENTS HEXA20 ET FACE8
10 # GUIDE D'ONDE ACOUSTIQUE EN E.F. CLASSIQUES
13 DEBUT(CODE=_F( NOM = 'AHLV100A') )
19 AIR=DEFI_MATERIAU( FLUIDE=_F( RHO = 1.3, CELE_C = ('RI',343.,0.,)))
21 CHAMPMAT=AFFE_MATERIAU( MAILLAGE=MAIL,
22 AFFE=_F( TOUT = 'OUI', MATER = AIR) )
24 GUIDE=AFFE_MODELE( MAILLAGE=MAIL, VERIF='MAILLE',
25 AFFE=_F( TOUT = 'OUI', MODELISATION = '3D',
26 PHENOMENE = 'ACOUSTIQUE') )
28 CHARACOU=AFFE_CHAR_ACOU( MODELE=GUIDE,
29 VITE_FACE=_F( GROUP_MA = 'ENTREE', VNOR = ('RI',0.014,0.,)))
31 IMPEACOU=AFFE_CHAR_ACOU( MODELE=GUIDE,
32 IMPE_FACE=_F( GROUP_MA = 'SORTIE', IMPE = ('RI',445.9,0.,)))
35 MODELE=GUIDE, CHARGE=IMPEACOU,
37 NUME_DDL=CO("NUM"),MATR_ASSE=(
38 _F( MATRICE = CO("MATASK"), OPTION = 'RIGI_ACOU'),
39 _F( MATRICE = CO("MATASM"), OPTION = 'MASS_ACOU'),
40 _F( MATRICE = CO("MATASI"), OPTION = 'AMOR_ACOU'))
45 VECTELEM=CALC_VECT_ELEM( OPTION='CHAR_ACOU', CHAM_MATER=CHAMPMAT,
49 # IMPRESSION DU VECT_ELEM COMPLEXE VECTELEM SELON LE GRAIN MAILLE
52 IMPR_MATRICE( MATR_ELEM=_F( MATRICE = VECTELEM,
57 VECTASS=ASSE_VECTEUR( VECT_ELEM=VECTELEM, NUME_DDL=NUM )
60 # ____________________CALCUL DES MODES_________________________________
63 MATASKR=COMB_MATR_ASSE( COMB_R=_F( MATR_ASSE = MATASK, PARTIE = 'REEL', COEF_R = 1.))
65 MATASMR=COMB_MATR_ASSE( COMB_R=_F( MATR_ASSE = MATASM, PARTIE = 'REEL', COEF_R = 1.))
69 MODES=MODE_ITER_SIMULT( MATR_A=MATASKR,
71 CALC_FREQ=_F( OPTION = 'BANDE',
75 TEST_RESU(RESU=(_F( RESULTAT = MODES, PARA = 'FREQ',
76 CRITERE = 'RELATIF', PRECISION = 1.E-4,
77 NUME_ORDRE = 1, VALE = 171.5),
78 _F( RESULTAT = MODES, PARA = 'FREQ',
79 CRITERE = 'RELATIF', PRECISION = 1.E-4,
80 NUME_ORDRE = 2, VALE = 343.),
81 _F( RESULTAT = MODES, PARA = 'FREQ',
82 CRITERE = 'RELATIF', PRECISION = 1.E-3,
83 NUME_ORDRE = 3, VALE = 514.5),
84 _F( RESULTAT = MODES, PARA = 'FREQ',
85 CRITERE = 'RELATIF', PRECISION = 1.E-2,
86 NUME_ORDRE = 4, VALE = 686.),
87 _F( RESULTAT = MODES, PARA = 'FREQ',
88 CRITERE = 'RELATIF', PRECISION = 1.E-3,
89 NUME_ORDRE = 5, VALE = 857.5),
90 _F( RESULTAT = MODES, PARA = 'FREQ',
91 CRITERE = 'RELATIF', PRECISION = 5.E-3,
92 NUME_ORDRE = 6, VALE = 857.5),
93 _F( RESULTAT = MODES, PARA = 'FREQ',
94 CRITERE = 'RELATIF', PRECISION = 5.E-3,
95 NUME_ORDRE = 7, VALE = 874.482),
96 _F( RESULTAT = MODES, PARA = 'FREQ',
97 CRITERE = 'RELATIF', PRECISION = 5.E-3,
98 NUME_ORDRE = 8, VALE = 923.556))
101 # ----------------------CALCUL DECOMPOSE-------------------------------
104 MATRES=COMB_MATR_ASSE( COMB_C=( _F( MATR_ASSE = MATASK,
106 _F( MATR_ASSE = MATASM,
107 COEF_R = -9869604.4),
108 _F( MATR_ASSE = MATASI,
109 COEF_C = ('RI',0.,3141.5926,)))
113 # IMPRESSION DE LA MATRICE COMPLEXE MATRES SELON LE GRAIN NOEUD
116 IMPR_MATRICE( MATR_ASSE=_F( MATRICE = MATRES,
118 FICHIER = 'RESULTAT',
123 # IMPRESSION DE LA MATRICE COMPLEXE MATRES SELON LE GRAIN VALEUR
126 IMPR_MATRICE( MATR_ASSE=_F( MATRICE = MATRES,
128 FICHIER = 'RESULTAT',
132 VECRES=COMB_CHAM_NO( COMB_C=_F( CHAM_NO = VECTASS,
133 COEF_C = ('RI',0.,-3141.5926,))
136 MATRES=FACT_LDLT( reuse=MATRES, MATR_ASSE=MATRES )
138 VECRES=RESO_LDLT( reuse=VECRES, MATR_FACT=MATRES,
143 _F( CHAM_GD = VECRES,
144 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE_C = ('RI',-6.2426,0.,)),
145 _F( CHAM_GD = VECRES,
146 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE_C = ('RI',-6.2426,0.,)),
147 _F( CHAM_GD = VECRES,
148 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE_C = ('RI',6.02368,1.6387,)),
149 _F( CHAM_GD = VECRES,
150 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE_C = ('RI',6.02368,1.6387,)))
153 CHNODBEL=CALC_CHAM_ELEM( MODELE=GUIDE,
156 OPTION='PRES_ELNO_DBEL'
159 TEST_RESU(CHAM_ELEM=(
160 _F( CHAM_GD = CHNODBEL,
162 NOEUD = 'NO1', NOM_CMP = 'DB', VALE = 109.9),
163 _F( CHAM_GD = CHNODBEL,
165 NOEUD = 'NO780', NOM_CMP = 'DB', VALE = 109.9),
166 _F( CHAM_GD = CHNODBEL,
168 NOEUD = 'NO751', NOM_CMP = 'DB', VALE = 109.9),
169 _F( CHAM_GD = CHNODBEL,
171 NOEUD = 'NO763', NOM_CMP = 'DB', VALE = 109.9))
176 PREEL=CALC_CHAM_ELEM( MODELE=GUIDE,
179 OPTION='PRES_ELNO_REEL'
182 TEST_RESU(CHAM_ELEM=(
185 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE = -6.2426),
188 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE = -6.2426),
191 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE = 6.02368),
194 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE = 6.02368))
197 PIMAG=CALC_CHAM_ELEM( MODELE=GUIDE,
200 OPTION='PRES_ELNO_IMAG'
203 TEST_RESU(CHAM_ELEM=(
206 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE = 0.,
210 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE = 0.,
214 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE = 1.6387, PRECISION = 3.3E-3),
217 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE = 1.6387, PRECISION = 3.3E-3))
220 #-----------------------CALCUL HARMONIQUE-------------------------------
223 PRESHARM=DYNA_LINE_HARM( MATR_MASS=MATASM, MATR_RIGI=MATASK,
226 EXCIT=_F( VECT_ASSE = VECTASS, COEF_MULT = -1.,
227 PUIS_PULS = 1, PHAS_DEG = 90.))
230 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES', NUME_ORDRE = 1,
231 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE_C = ('RI',-6.2426,0.,)),
232 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES', NUME_ORDRE = 1,
233 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE_C = ('RI',-6.2426,0.,)),
234 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES', NUME_ORDRE = 1,
235 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE_C = ('RI',6.02368,1.6387,)),
236 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES', NUME_ORDRE = 1,
237 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE_C = ('RI',6.02368,1.6387,)))
240 PRESHARM=CALC_ELEM( reuse=PRESHARM, MODELE=GUIDE, CHAM_MATER=CHAMPMAT,
243 OPTION='INTE_ELNO_ACTI'
247 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_ACTI', NUME_ORDRE = 01,
249 NOEUD = 'NO1', NOM_CMP = 'INTX', VALE = 0.04370, PRECISION = 3.E-2),
250 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_ACTI', NUME_ORDRE = 01,
252 NOEUD = 'NO780', NOM_CMP = 'INTX', VALE = 0.04370, PRECISION = 3.E-2),
253 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_ACTI', NUME_ORDRE = 01,
255 NOEUD = 'NO751', NOM_CMP = 'INTX', VALE = 0.04370, PRECISION = 3.E-2),
256 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_ACTI', NUME_ORDRE = 01,
258 NOEUD = 'NO763', NOM_CMP = 'INTX', VALE = 0.04370, PRECISION = 3.E-2))
261 PRESHARM=CALC_ELEM( reuse=PRESHARM, MODELE=GUIDE, CHAM_MATER=CHAMPMAT,
264 OPTION='INTE_ELNO_REAC'
268 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_REAC', NUME_ORDRE = 01,
270 NOEUD = 'NO1', NOM_CMP = 'INTX', VALE = 0.0, PRECISION = 3.5E-4,
272 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_REAC', NUME_ORDRE = 01,
274 NOEUD = 'NO780', NOM_CMP = 'INTX', VALE = 0.0, PRECISION = 3.5E-4,
276 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_REAC', NUME_ORDRE = 01,
278 NOEUD = 'NO751', NOM_CMP = 'INTX', VALE = 0.0, PRECISION = 3.5E-4,
280 _F( RESULTAT = PRESHARM, NOM_CHAM = 'INTE_ELNO_REAC', NUME_ORDRE = 01,
282 NOEUD = 'NO763', NOM_CMP = 'INTX', VALE = 0.0, PRECISION = 3.5E-4,
286 PRESHARM=CALC_ELEM( reuse=PRESHARM, MODELE=GUIDE, CHAM_MATER=CHAMPMAT,
289 OPTION='PRES_ELNO_DBEL'
293 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_DBEL', NUME_ORDRE = 01,
295 NOEUD = 'NO1', NOM_CMP = 'DB', VALE = 109.9),
296 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_DBEL', NUME_ORDRE = 01,
298 NOEUD = 'NO780', NOM_CMP = 'DB', VALE = 109.9),
299 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_DBEL', NUME_ORDRE = 01,
301 NOEUD = 'NO751', NOM_CMP = 'DB', VALE = 109.9),
302 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_DBEL', NUME_ORDRE = 01,
304 NOEUD = 'NO763', NOM_CMP = 'DB', VALE = 109.9))
307 PRESHARM=CALC_ELEM( reuse=PRESHARM, MODELE=GUIDE, CHAM_MATER=CHAMPMAT,
310 OPTION='PRES_ELNO_REEL'
314 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_REEL', NUME_ORDRE = 01,
316 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE = -6.2426),
317 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_REEL', NUME_ORDRE = 01,
319 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE = -6.2426),
320 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_REEL', NUME_ORDRE = 01,
322 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE = 6.02368),
323 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_REEL', NUME_ORDRE = 01,
325 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE = 6.02368))
328 PRESHARM=CALC_ELEM( reuse=PRESHARM, MODELE=GUIDE, CHAM_MATER=CHAMPMAT,
331 OPTION='PRES_ELNO_IMAG'
335 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_IMAG', NUME_ORDRE = 01,
337 NOEUD = 'NO1', NOM_CMP = 'PRES', VALE = 0.,
339 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_IMAG', NUME_ORDRE = 01,
341 NOEUD = 'NO780', NOM_CMP = 'PRES', VALE = 0.,
343 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_IMAG', NUME_ORDRE = 01,
345 NOEUD = 'NO751', NOM_CMP = 'PRES', VALE = 1.6387, PRECISION = 3.3E-3,
346 CRITERE = 'RELATIF'),
347 _F( RESULTAT = PRESHARM, NOM_CHAM = 'PRES_ELNO_IMAG', NUME_ORDRE = 01,
349 NOEUD = 'NO763', NOM_CMP = 'PRES', VALE = 1.6387, PRECISION = 3.3E-3))