Download bili_efz.procedur

Back to the list

   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