* fichier : pecker_f.dgibi
* etude frequentielle
* chargement structure avec impedance
*
opti dime 3 elem seg2 ;
*
d_bloq = vrai;
d_graph = faux ;
p0 = 0. 0. 0. ; e_z = 0. 0. 1. ;
q2 = e_z ; q1 = p0 ;
lig1 = d 20 q2 q1 ;
qf1 = point lig1 proc (0. 0. 0.6) ;
MO1= MODL LIG1 MECANIQUE ELASTIQUE POUT ;
MATPL1=MATR MO1 YOUNG 2.E10 NU 0.4 RHO 7800;
CARPL1=CARB MO1 SECT 0.1 INRY 2.08E-8 INRZ 3.33E-8
TORS 2.41E-7;
MATE1=MATPL1 ET CARPL1;
***
***
RIGPL1 =RIGI MATE1 MO1 ;
MASPLA1=MASS MATE1 MO1 ;
BLOQ2=BLOQ DEPL ROTA Q2 ;
bloq1r = (bloq rota q1) ; blq1uz = bloq q1 uz ;
bloq1rz = bloq q1 rz ;
blq1ux = bloq q1 ux ; blq1uy = bloq q1 uy ;
bloq1rx = bloq q1 rx ; bloq1ry= bloq q1 ry ;
*
*----
*
PR=PROG 0.01 ; n_mv = lect 4 ;
tblsta = table 'LIAISONS_STATIQUES' ;
tblsta . 1 = table ; tblsta . 1 . point_liaison = q1 ;
si d_bloq ; tblsta . 1 . ddl_liaison = ux ;
sinon ; tblsta . 1 . ddl_liaison = fx ; finsi ;
tblsta . 2 = table ; tblsta . 2 . point_liaison = q1 ;
si d_bloq ; tblsta . 2 . ddl_liaison = uy ;
sinon ; tblsta . 2 . ddl_liaison = fy ; finsi ;
tblsta . 3 = table ; tblsta . 3 . point_liaison = q1 ;
si d_bloq ; tblsta . 3 . ddl_liaison = rx ;
sinon ; tblsta . 3 . ddl_liaison = mx ; finsi ;
si d_bloq ;
bliaiq1 = bloque tblsta ; depi tblsta ;
sinon ;
force tblsta ;
finsi ;
si d_bloq ;
* modes vibrations
bl1bloq = bloq1ry et bloq1rz et blq1uz et bliaiq1 ;
MODPLA1=VIBR PROC PR n_mv (RIGPL1 et bl1bloq)
MASPLA1 tbas;
* solutions statiques
tbsta = resout (RIGPL1 et bloq1ry et bloq1rz et
blq1uz et bliaiq1) tblsta ;
react bliaiq1 tbsta ;
sinon ;
* modes vibrations
MODPLA1=VIBR PROC PR n_mv (RIGPL1 et bloq1rx et bloq1rz et
blq1uz) MASPLA1 tbas;
* solutions statiques
tbsta = resout RIGPL1 tblsta ;
finsi ;
tbsta maspla1 * ;
repeter bmod ((dime tbsta) - 1) ;
ind1 = &bmod ;
psta1 = manu poi1 tbsta . ind1 . point_repere ;
mostai1 = mode psta1 mecanique elastique statique ;
si d_bloq ;
castai1 = mate mostai1 defo tbsta . ind1 . deformee
made tbsta . ind1 . masse_deformee
ride tbsta . ind1 . reaction ;
sinon ;
castai1 = mate mostai1 defo tbsta . ind1 . deformee
made tbsta . ind1 . masse_deformee
ride tbsta . ind1 . force ;
finsi ;
si (ega 1 ind1) ;
mosta1 = mostai1 ; casta1 = castai1 ;
sinon ;
mosta1 = mosta1 et mostai1 ; casta1 = casta1 et castai1 ;
finsi ;
def1 = defo tbsta . ind1 . deformee lig1 1. vert ;
def0 = defo tbsta . ind1 . deformee lig1 0. bleu ;
titre ' sol statique ind = ' ind1 ;
si d_graph ;
trac (10. 10. 0.) (def0 et def1) ;
finsi ;
fin bmod ;
masta1 = masse mosta1 casta1 ;
rista1 = rigi mosta1 casta1 ;
modto1 = mosta1 ; casto1 = casta1 ; tmod = modpla1 . modes ;
tmod (maspla1 et bl1bloq) * ;
maxfre5 = 0. ;
repeter bmod ((dime modpla1 . modes) - 2) ;
ind1 = &bmod ;
psta1 = manu poi1 tmod . ind1 . point_repere ;
momoda1 = mode psta1 mecanique elastique modal ;
camoda1 = mate momoda1 freq tmod . ind1 . frequence
mass tmod . ind1 . masse_generalisee
defo tmod . ind1 . deformee_modale
made tmod . ind1 . masse_deformee ;
maxfre5 = maxi (prog maxfre5 tmod . ind1 . frequence) ;
si (ega 1 ind1) ;
momod1 = momoda1 ; camod1 = camoda1 ;
sinon ;
momod1 = momod1 et momoda1 ; camod1 = camod1 et camoda1 ;
finsi ;
def1 = defo tmod . ind1 . deformee_modale lig1 1. vert ;
def0 = defo tmod . ind1 . deformee_modale lig1 0. bleu ;
titre ' mode propre ind = ' ind1 ;
si d_graph ; trac (10. 10. 0.) (def0 et def1) ; finsi ;
fin bmod ;
modto1 = modto1 et momod1 ; casto1 = casto1 et camod1 ;
* forces
fy1 = manu chpo qf1 fy 1. ; fy1 = fy1 * 1.e4 ;
fy2 = manu chpo q1 fy 1. ; fy2 = fy2 * 1.e4 ;
fq2 = manu chpo q2 fy 1.e4 ;
dq2 = resout (RIGPL1 et bloq1ry et bloq1rz et
blq1uz et bliaiq1) fq2 ;
maaq2 = manu poi1 (8. 8. 8.) ;
mosq2 = modele maaq2 mecanique elastique statique ;
casq2 = mate mosq2 defo dq2 ride fq2 made (maspla1 * dq2) ;
* frequentiel
abs_f = prog 0. 1000. ; ord_f = prog 1. 1. ;
*abs_f = prog 1. pas 0.3 4. pas 1. 10. ;
*abs_f = l_zf ; ord_f = prog (dime abs_f)*1. ;
ev_xf = evol manu abs_f ord_f ;
fy3 = pjba fy1 momod1 camod1 ;
cha3 = char meca ev_xf fy3 ;
fy4 = pjba fy1 mosta1 casta1 ;
cha4 = char meca ev_xf fy4 ;
fy5 = pjba fy1 mosq2 casq2 ;
cha5 = char meca ev_xf fy5 ;
fy6 = pjba fy2 (mosq2 et mosta1 et momod1) (casq2 et casta1 et camod1);
cha6 = char meca ev_xf fy6 ;
*list cha6 ;
opti mode freq ;
t_freq = table 'PASAPAS' ;
t_freq . modele = mosq2 et mosta1 et momod1 ;
t_freq . caracteristiques = casq2 et casta1 et camod1 ;
*t_freq . chargement = cha3 et cha5 et cha4 ;
t_freq . chargement = cha6 ;
*t_freq . modele = mosq2 ;
*t_freq . caracteristiques = casq2 ;
*t_freq . chargement = cha5 ;
*t_freq . modele = momod1 ;
*t_freq . caracteristiques = camod1 ;
*t_freq . chargement = cha3 ;
*t_freq . temps_calcules = abs_f ;
pasapas t_freq ;
o_y = prog ; a_f = prog ;
repeter b_post ((dime t_freq.temps) - 1) ;
ind1 = &b_post ;
chdep1 = t_freq . deplacements . ind1 ;
dep11 = reco t_freq . modele t_freq . caracteristiques chdep1 ;
si faux ;
deff1 = defo dep11 lig1 1. vert ;
deff0 = defo dep11 lig1 0. bleu ;
titre ' reponse frequentielle f = ' t_freq . temps . ind1 ;
trac (10. 10. 0.) (deff0 et deff1) ;
finsi ;
dep11p2 = redu dep11 q2 ;
uu_p2 = xty dep11p2 dep11p2
(mots ux uy uz) (mots ux uy uz) ;
o_y = o_y et (prog uu_p2 );
a_f = a_f et (prog t_freq . temps . ind1) ;
fin b_post ;
o_y = o_y ** 0.5 ;
ev_dsp = evol manu 'FREQ' a_f 'DEPL' o_y ;
si d_graph ;
dess ev_dsp logx logy titre 'reponse frequentielle Q2' ;
finsi ;
* test t = 4.
o_y4 = 4.79460E-01 ;
si (abs((ipol 4. ev_dsp) - o_y4) > (o_y4*1.e-2)) ;
erre 5 ;
sinon ;
erre 0 ;
finsi ;
fin ;
© Cast3M 2003 - All rights reserved.
Disclaimer