1 : * BILI_MOY PROCEDUR AM 95/12/28 21:17:33 1962 2 : * 3 : debproc BILI_MOY cycle*'LISTREEL' npass*'LISTENTI' model*'TABLE'; 4 : * 5 : * verification elementaire 6 : * 7 : lok=vrai; 8 : nbcl='DIME' cycle; 9 : 'SI' (('DIME' npass) 'NEG' nbcl); 10 : lok=faux; 11 : 'MESS' 'cycle et pas n"ont pas la meme longueur'; 12 : 'FINSI'; 13 : 'SI' (lok 'ET' ('EXISTE' model 'EELA')); EELA=model.'EELA'; 14 : 'SINON'; lok=faux; 'MESS' 'EELA n"est pas dans model'; 15 : 'FINSI'; 16 : 'SI' (lok 'ET' ('EXISTE' model 'EAYI')); EAYI=model.'EAYI'; 17 : 'SINON'; lok=faux; 'MESS' 'EAYI n"est pas dans model'; 18 : 'FINSI'; 19 : 'SI' (lok 'ET' ('EXISTE' model 'YMOM')); YMOM=model.'YMOM'; 20 : 'SINON'; lok=faux; 'MESS' 'YMOM n"est pas dans model'; 21 : 'FINSI'; 22 : 'SI' (lok 'ET' ('EXISTE' model 'INRY')); INRY=model.'INRY'; 23 : 'SINON'; lok=faux; 'MESS' 'INRY n"est pas dans model'; 24 : 'FINSI'; 25 : * 26 : 'SI' (lok 'ET' ('EXISTE' model 'ELEN')); ELEN=model.'ELEN'; 27 : 'SINON'; ELEN='TIMO'; 'MESS' 'ELEN est pris egal a TIMO'; 28 : 'FINSI'; 29 : * 30 : 'SI' lok; 31 : * 32 : * maillage de 1 element 33 : * 34 : p1=0 0 0; p2=1 0 0;d1=p1 d 1 p2; 35 : * 36 : * champs nuls 37 : * 38 : xx yy zz='COOR' d1; 39 : deplx='EXCO' (0*xx) 'SCAL' 'NOID' 'UX'; 40 : deply='EXCO' (0*xx) 'SCAL' 'NOID' 'UY'; 41 : rotax='EXCO' (0*xx) 'SCAL' 'NOID' 'RX'; 42 : rotaz='EXCO' (0*xx) 'SCAL' 'NOID' 'RZ'; 43 : chnul=deplx + deply + rotax + rotaz; 44 : * 45 : * modele 46 : * 47 : mo=modl d1 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'BILIN_MOMY' ELEN; 48 : ma=matr mo 'YOUN' EELA 'NU' .2 'EAYI' EAYI 'YMOM' YMOM; 49 : ca=carb mo 'INRY' INRY 'SECT' 1. 'INRZ' 1. 'TORS' 1.; 50 : mc=ma et ca; 51 : * 52 : * initialisation 53 : * 54 : cin=0.; ccour=prog 0.; mmoy=prog 0.; 55 : var0=zero mo 'VARINTER'; 56 : sig0=zero mo 'CONTRAIN'; 57 : * 58 : * loop sur les branches; 59 : * 60 : nbran=0; x1x=prog 0. 1.; 61 : 'REPETER' lab1 nbcl; 62 : nbran=nbran+1; 63 : * 64 : * chargement 65 : * 66 : cfin='EXTR' cycle nbran; npts='EXTR' npass nbran; 67 : y1y ='PROG' cin cfin; dx=1./npts; xxx='PROG' 0. pas dx 1.; 68 : yyy='IPOL' xxx x1x y1y; coury='ENLE' 1 yyy; 69 : * 70 : * increment elastique 71 : * 72 : dtx=(cfin-cin)/npts; 73 : rotay='EXCO' (dtx*xx) 'SCAL' 'NOID' 'RY'; 74 : deplz='EXCO' (((-0.5)*dtx)*xx) 'SCAL' 'NOID' 'UZ'; 75 : depy=chnul + rotay + deplz; 76 : esig=epsi mo mc depy; 77 : * 78 : * loop charge 79 : * 80 : j=0; momy='PROG'; 81 : 'REPETER' lab2 npts; 82 : j=j+1; 83 : sig var xxxx='ECOULE' mo sig0 var0 esig mc; 84 : * 85 : ssig='CHAN' 'CHPO' mo sig; momo='EXTR' ssig 'MOMY' p1; 86 : momy='INSE' momy j momo; 87 : * 88 : var0=var; sig0=sig; 89 : * 90 : 'FIN' lab2; 91 : * 92 : * fin loop 93 : * 94 : ccour=ccour 'ET' coury; mmoy=mmoy 'ET' momy; 95 : cin=cfin; 96 : 'MENAGE'; 97 : 'FIN' lab1; 98 : 'FINSI'; 99 : titre 'modele plastique BILIN_MOMY'; 100 : courbe=evol manu 'Courbure' ccour 'Moment' mmoy; 101 : * 102 : 'FINPROC' courbe; 103 :
© Cast3M 2003 - All rights reserved.
Disclaimer