Download takm_efz.procedur

Back to the list

   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