1 : * TAKM_EFZ PROCEDUR AM 95/12/28 21:46:59 1962 2 : * 3 : debproc TAKM_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 'SECZ')); SECZ=model.'SECZ'; 17 : 'SINON'; lok=faux; 'MESS' 'SECZ n"est pas dans model'; 18 : 'FINSI'; 19 : * 20 : 'SI' (lok 'ET' ('EXISTE' model 'TRAC')); TTRAC=model.'TRAC'; 21 : 'SINON'; lok=faux; 'MESS' 'TRAC n"est pas dans model'; 22 : 'FINSI'; 23 : 'SI' (lok 'ET' ('EXISTE' model 'SFDP')); SFDP=model.'SFDP'; 24 : 'SINON'; lok=faux; 'MESS' 'SFDP n"est pas dans model'; 25 : 'FINSI'; 26 : 'SI' (lok 'ET' ('EXISTE' model 'SFDN')); SFDN=model.'SFDN'; 27 : 'SINON'; SFDN=SFDP; 'MESS' 'SFDN est pris egal a SFDP'; 28 : 'FINSI'; 29 : 'SI' (lok 'ET' ('EXISTE' model 'PINP')); PINP=model.'PINP'; 30 : 'SINON'; lok=faux; 'MESS' 'PINP n"est pas dans model'; 31 : 'FINSI'; 32 : 'SI' (lok 'ET' ('EXISTE' model 'PINN')); PINN=model.'PINN'; 33 : 'SINON'; PINN=(-1)*PINP; 'MESS' 'PINN est pris egal a -PINP'; 34 : 'FINSI'; 35 : 'SI' (lok 'ET' ('EXISTE' model 'SRDP')); SRDP=model.'SRDP'; 36 : 'SINON'; lok=faux; 'MESS' 'SRDP n"est pas dans model'; 37 : 'FINSI'; 38 : 'SI' (lok 'ET' ('EXISTE' model 'SRDN')); SRDN=model.'SRDN'; 39 : 'SINON'; SRDN=SRDP; 'MESS' 'SRDN est pris egal a SRDP'; 40 : 'FINSI'; 41 : * 42 : 'SI' (lok 'ET' ('EXISTE' model 'ELEN')); ELEN=model.'ELEN'; 43 : 'SINON'; ELEN='TIMO'; 'MESS' 'ELEN est pris egal a TIMO'; 44 : 'FINSI'; 45 : * 46 : 'SI' lok; 47 : * 48 : * maillage de 1 element 49 : * 50 : p1=0 0 0; p2=1 0 0;d1=p1 d 1 p2; 51 : * 52 : * champs nuls 53 : * 54 : xx yy zz='COOR' d1; 55 : deplx='EXCO' (0*xx) 'SCAL' 'NOID' 'UX'; 56 : deply='EXCO' (0*xx) 'SCAL' 'NOID' 'UY'; 57 : rotax='EXCO' (0*xx) 'SCAL' 'NOID' 'RX'; 58 : rotay='EXCO' (0*xx) 'SCAL' 'NOID' 'RY'; 59 : rotaz='EXCO' (0*xx) 'SCAL' 'NOID' 'RZ'; 60 : chnul=deplx + deply + rotax + rotay + rotaz; 61 : * 62 : * modele 63 : * 64 : xnu=.2; 65 : EELA=GELA*2*(1+xnu); 66 : * 67 : mo=modl d1 mecanique elastique plastique takemo_effz ELEN; 68 : ma=matr mo 'YOUN' EELA 'NU' xnu 'TRAC' TTRAC 'SFDP' SFDP 'SFDN' SFDN 69 : 'PINP' PINP 'PINN' PINN 'SRDP' SRDP 'SRDN' SRDN; 70 : ca=carb mo 'INRY' 1. 'SECZ' SECZ 'SECT' 1. 'INRZ' 1. 'TORS' 1.; 71 : mc=ma et ca; 72 : * 73 : * initialisation 74 : * 75 : cin=0.; ccour=prog 0.; mmoy=prog 0.; 76 : var0=zero mo 'VARINTER'; 77 : sig0=zero mo 'CONTRAIN'; 78 : * 79 : * loop sur les branches; 80 : * 81 : nbran=0; x1x=prog 0. 1.; 82 : 'REPETER' lab1 nbcl; 83 : nbran=nbran+1; 84 : * 85 : * chargement 86 : * 87 : cfin='EXTR' cycle nbran; npts='EXTR' npass nbran; 88 : y1y ='PROG' cin cfin; dx=1./npts; xxx='PROG' 0. pas dx 1.; 89 : yyy='IPOL' xxx x1x y1y; coury='ENLE' 1 yyy; 90 : * 91 : * increment elastique 92 : * 93 : dtx=(cfin-cin)/npts; 94 : deplz='EXCO' (dtx*xx) 'SCAL' 'NOID' 'UZ'; 95 : depy=chnul + deplz; 96 : esig=epsi mo mc depy; 97 : * 98 : * loop charge 99 : * 100 : j=0; momy='PROG'; 101 : 'REPETER' lab2 npts; 102 : j=j+1; 103 : sig var xxxx='ECOULE' mo sig0 var0 esig mc; 104 : * 105 : ssig='CHAN' 'CHPO' mo sig; momo='EXTR' ssig 'EFFZ' p1; 106 : momy='INSE' momy j momo; 107 : * 108 : var0=var; sig0=sig; 109 : * 110 : 'FIN' lab2; 111 : * 112 : * fin loop 113 : * 114 : ccour=ccour 'ET' coury; mmoy=mmoy 'ET' momy; 115 : cin=cfin; 116 : 'MENAGE'; 117 : 'FIN' lab1; 118 : 'FINSI'; 119 : * 120 : titre 'modele plastique TAKEMO_EFFZ'; 121 : courbe=evol manu 'Shear Def.' ccour 'Shear Force' mmoy; 122 : * 123 : 'FINPROC' courbe; 124 :
© Cast3M 2003 - All rights reserved.
Disclaimer