* fichier : dynacontact.dgibi graph='N'; complet = faux; opti dime 2 elem qua4 mode plan defo; * ajout de option epsilon lineaire pour la precision des test! OPTION epsilon lineaire; p1= 0 0.000015 ; p2 = 1 0.000015 ; co= p1 droi 2 p2;l1= co; p3 = 1 1 ; co = co droi 2 p3; p4 = 4 1 ; co = co droi 6 p4; p5 = 4 0.002 ; co = co droi 2 p5; p6 = 5 0.002; l2= p5 droi 2 p6;co = co et l2; p7= 5 1.1; co = co droi 2 p7; p8= 0 1.1 ; co = co droi 10 p8 droi 2 p1; su = surf co; mo = model su mecanique elastique ; ma = mo mate youn 2e11 nu 0.3 rho 7800; ri = rigi mo ma; m = mass mo ma; vi= manu chpo su 1 'UY' -1.; si complet ;tfin= 5.E-3;sinon; tfin=1.e-3;finsi; bl1 = bloqu mini 'UY' l1 ; bl2= bloqu mini 'UY' l2; fbl1= depi bl1 -0.000015; fbl2= depi bl2 -0.002; evt = evol manu 'temps' ( prog 0. 1.) 'coef' (prog 1. 1.); cha1= char 'DIMP' (fbl1 et fbl2) evt; LIS1 = PROG 0. PAS 1.E-5 tfin ; TAB2 = TABLE ; TAB2.'DEPL' = MANU CHPO SU 2 UX 0. UY 0. ; TAB2.'VITE' = vi; TAB2.'CHAR' = CHA1 ; TAB2.'RIGI' = RI et bl1 et bl2 ; TAB2.'MASS' = M ; TAB2.'FREQ' = 25000. ; TAB2.'INST' = LIS1 ; TAB2.'SORT'=su; TAB1 = DYNAMIC TAB2 ; tt= table; tt.'MODELE'= mo; tt.'DYNAMIQUE'= VRAI; tt.'CARACTERISTIQUES' = ma; tt.'VITESSES' = table; tt.'VITESSES' . 0 = vi; tt.chargement =cha1; tt.blocages_mecaniques = (bl1 et bl2); tt.TEMPS_calcules= prog 1.e-5 pas 1.e-5 tfin; tt.'IMPR'=vrai; pasapas tt; debproc depo coev*flottant nb*entier ampdef*flottant; na = (dime tt.deplacements ) - 1; na = na / nb; repeter toto na; titi= &toto - 1; dyde=tab1. (titi * nb + 1).'DEPL'; pasvi=tt.deplacements.( titi * nb ); dyvi= tab1. (titi * nb + 1).'VITE'; dyviy = exco dyvi 'UY'; tit= chaine ' pas numero ' (titi * nb ); titre tit; dydef= defo su dyde ampdef rouge dyviy ; vv= vecteur tt.reactions . (titi * nb ) coev 'FX' 'FY' vert; padef= defo su pasvi vv ampdef; trac ( et dydef padef); fin toto; finp depo; * compatraison des derniers champs de deplacementrs na = (dime tt.deplacements ) - 1; pasvi=tt.deplacements. na; dyde=tab1. ( na + 1 ). 'DEPL'; difde= pasvi - dyde; cri= maxi pasvi; crit = maxi difde / cri; list crit; si ( crit > 1.e-5); erreur 5; finsi; si ( neg graph 'N') ; depo 1.e-8 5 100.; finsi; fin;
© Cast3M 2003 - All rights reserved.
Disclaimer