*fichier : reacdyna.dgibi * * calcul d'un ressort avec une masse au bout * par la procedur dynamic * k=2000 m=100 v0=100 * graph = 'N'; opti dime 2 elem seg2; pa = 0 0 ; pb = 100 0 ; liab = pa droi 1 pb; bly = bloq UY liab; blx = bloq UX pa; mod = model liab mecanique elastique barre; mat = mate mod young 20000 nu 0.3 rho 1.e-15 sect 10.; ri = rigi mod mat; ma = masse mod mat; masad= manu rigidite type masse ( manu poi1 pb) ( MOTS 'UX') (prog 100); matot = ma et masad; x = (coor 1 liab)NOMC UX;list x; ta = table; ff = force pb ( 0 0 ); evt = evol manu 'TEMPS' (prog 0. 10000) 'coef' (prog 1. 1.); ch = char meca ff evt; ta = table; ta.'CHAR' = ch; ta.'DEPL'= manu chpo liab 2 UX 0. UY 0.; ta.'RIGI' = ri et bly et blx; ta.'MASS'= matot; list matot; dt = 0.005; ta.'INST' = prog 0. pas dt 0.6; *ta.'INST' = prog 0. pas dt 0.015; ta.'SAUV' = vrai; ta.'VITE' = x; ta . 'FREQ' = 0.25 / dt; aa = dynamic ta; te= prog 0.; de= prog 0.; re = prog 0.; repe tot ( (dime aa) - 1); tt= aa. ( &tot + 1) . 'TEMP'; te = te et ( prog tt); bd = aa . ( &tot + 1) . 'DEPL'; md = maxi ( (exco bd 'UX') redu (manu poi1 pb)); de = de et ( prog md); rr= reac bd blx; rm= maxi rr; re = re et ( prog rm); fin tot; re = re /1000.; evdep = evol manu 'temps ' te ' depl ' de; evrea= evol manu 'temps' te ' reac ' re; *titr ' deplacement point pb';dess evdep; *titr ' reaction au point pa';dess evrea; titr 'reaction/1000 et deplacement (k=2000 m=100 V0=100)'; si ( ega graph 'O'); dess ( evdep et evrea); finsi; * 0.5mv2 = 0.5 kx2 >>>> m=100.; v=100.; k = 2000.; det = (( 0.5 * m * v * v ) /(0.5 * k))**0.5; ret = det * k; mess ' deplacement max théorique' det; mess ' reaction max théorique ' ret; mre= (maxi abs re) * 1000.; mde= maxi abs de; ermre = abs (( mre - ret) / ret); mess ' erreur sur maxi des reactions ' ermre '%'; ermde= abs ((mde - det) / det); mess ' erreur sur maxi des deplacements ' ermde '%'; si(( ermre + ermde) > 4.e-5); erreur 5; finsi; fin;
© Cast3M 2003 - All rights reserved.
Disclaimer