1 : * BILI_EFZ PROCEDUR AM 95/12/28 21:17:28 1962 2 : * 3 : debproc BILI_EFZ 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 'GELA')); GELA=model.'GELA'; 14 : 'SINON'; lok=faux; 'MESS' 'GELA n"est pas dans model'; 15 : 'FINSI'; 16 : 'SI' (lok 'ET' ('EXISTE' model 'GAYI')); GAYI=model.'GAYI'; 17 : 'SINON'; lok=faux; 'MESS' 'GAYI n"est pas dans model'; 18 : 'FINSI'; 19 : 'SI' (lok 'ET' ('EXISTE' model 'YEFF')); YEFF=model.'YEFF'; 20 : 'SINON'; lok=faux; 'MESS' 'YEFF n"est pas dans model'; 21 : 'FINSI'; 22 : 'SI' (lok 'ET' ('EXISTE' model 'SECZ')); SECZ=model.'SECZ'; 23 : 'SINON'; lok=faux; 'MESS' 'SECZ 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 : rotay='EXCO' (0*xx) 'SCAL' 'NOID' 'RY'; 43 : rotaz='EXCO' (0*xx) 'SCAL' 'NOID' 'RZ'; 44 : chnul=deplx + deply + rotax + rotay + rotaz; 45 : * 46 : * modele 47 : * 48 : xnu=.2; 49 : EELA=GELA*2*(1+xnu); 50 : EAYI=GAYI*2*(1+xnu); 51 : * 52 : mo=modl d1 'MECANIQUE' 'ELASTIQUE' 'PLASTIQUE' 'BILIN_EFFZ' ELEN; 53 : ma=matr mo 'YOUN' EELA 'NU' xnu 'EAYI' EAYI 'YEFF' YEFF; 54 : ca=carb mo 'INRY' 1. 'SECZ' SECZ 'SECT' 1. 'INRZ' 1. 'TORS' 1.; 55 : mc=ma et ca; 56 : * 57 : * initialisation 58 : * 59 : cin=0.; ccour=prog 0.; mmoy=prog 0.; 60 : var0=zero mo 'VARINTER'; 61 : sig0=zero mo 'CONTRAIN'; 62 : * 63 : * loop sur les branches; 64 : * 65 : nbran=0; x1x=prog 0. 1.; 66 : 'REPETER' lab1 nbcl; 67 : nbran=nbran+1; 68 : * 69 : * chargement 70 : * 71 : cfin='EXTR' cycle nbran; npts='EXTR' npass nbran; 72 : y1y ='PROG' cin cfin; dx=1./npts; xxx='PROG' 0. pas dx 1.; 73 : yyy='IPOL' xxx x1x y1y; coury='ENLE' 1 yyy; 74 : * 75 : * increment elastique 76 : * 77 : dtx=(cfin-cin)/npts; 78 : deplz='EXCO' (dtx*xx) 'SCAL' 'NOID' 'UZ'; 79 : depy=chnul + deplz; 80 : esig=epsi mo mc depy; 81 : * 82 : * loop charge 83 : * 84 : j=0; momy='PROG'; 85 : 'REPETER' lab2 npts; 86 : j=j+1; 87 : sig var xxxx='ECOULE' mo sig0 var0 esig mc; 88 : * 89 : ssig='CHAN' 'CHPO' mo sig; momo='EXTR' ssig 'EFFZ' p1; 90 : momy='INSE' momy j momo; 91 : * 92 : var0=var; sig0=sig; 93 : * 94 : 'FIN' lab2; 95 : * 96 : * fin loop 97 : * 98 : ccour=ccour 'ET' coury; mmoy=mmoy 'ET' momy; 99 : cin=cfin; 100 : 'MENAGE'; 101 : 'FIN' lab1; 102 : 'FINSI'; 103 : * 104 : titre 'modele plastique BILIN_EFFZ'; 105 : courbe=evol manu 'Shear Def.' ccour 'Shear Force' mmoy; 106 : * 107 : 'FINPROC' courbe; 108 :
© Cast3M 2003 - All rights reserved.
Disclaimer