Télécharger critloc.procedur

Retour à la liste

Numérotation des lignes :

  1. * CRITLOC PROCEDUR CB215821 15/12/02 21:15:03 8719
  2. 'DEBPROC' CRITLOC ETAB*'TABLE';
  3. *----------------------------------------------------------------------
  4. * CRITERES LOCAUX POUR LA MECANIQUE DE LA RUPTURE
  5. * POUR LES ELEMENTS MASSIFS UNIQUEMENT
  6. *
  7. * ENTREES
  8. * ETAB.'TNONL' = TABLE RESULTAT DU CALCUL NONLINEAIRE
  9. * ETAB.'OBJMO' = OBJET MODEL CORRESPONDANT A LA ZONE GEOMETRIQUE E
  10. * OU L'ON VEUT APPLIQUER LE CRITERE
  11. * ** SI CRITERE DE RICE POUR LA RUPTURE DUCTILE
  12. * ETAB.'RICE' = VRAI
  13. * ETAB.'EPSILON' = VRAI SI DECOHESION CONTROLEE PAR LA DEFORMATION
  14. * ETAB.'SIGMA' = VRAI SI DECOHESION CONTROLEE PAR LA CONTRAINTE
  15. * + DONNEES DES PARAMETRES DU CRITERE
  16. * SI DECOHESION CONTROLEE PAR LA DEFORMATION
  17. * ETAB.'EPSC', ETAB.'BETA', ETAB.'ALPHA'
  18. * SI DECOHESION CONTROLEE PAR LA CONTRAINTE
  19. * ETAB.'BETA', ETAB.'ALPHA',ETAB.'LAMBDA', ETAB.'SIG0',ETAB.'SIGC'
  20. * ** SI CRITERE DE WEIBULL POUR LA RUPTURE PAR CLIVAGE
  21. * ETAB.'WEIBULL' = VRAI
  22. * + DONNEES DES PARAMETRES DU CRITERE
  23. * ETAB.'M', ETAB.'SIGU',ETAB.'V0',ETAB.'IC'
  24. * + (SI IC=1) ETAB.'N'
  25. * + (SI CAS PLAN) ETAB.'EPAI'
  26. * ETAB.'TEMPER'
  27. * +(SI TEMPER=0) SIGU EST UNE CONSTANTE
  28. * +(SI TEMPER=1) SIGU DEPEND DE LA TEMPERATURE
  29. * + ETAB.'TEREF'
  30. *
  31. * SORTIES
  32. * TABLE DE TABLES DONNANT POUR CHAQUE PAS DE TEMPS
  33. * ** SI CRITERE DE RICE POUR LA RUPTURE DUCTILE
  34. * VALEURS MOYENNEES SUR LES ELEMENTS DE
  35. * STAB.'RAPPORT' = TAUX DE TRIAXIALITE (CHELEM)
  36. * STAB.'TAUX' = TAUX DE CROISSANCE (CHELEM)
  37. * STAB.'SIGEQ' = CONTRAINTE DE VMIS (CHELEM)
  38. * STAB.'EPSEQ' = DEFOR. PLAST. CUM. (CHELEM)
  39. * ** SI CRITERE DE WEIBULL POUR LA RUPTURE PAR CLIVAGE
  40. * STAB.'SIGW' = CONTRAINTE DE WEIBULL (FLOTTANT)
  41. * STAB.'PROB' = PROBABILITE DE RUPTURE (FLOTTANT)
  42. * STAB.'VPLAS' = VOLUME PLASTIQUE (FLOTTANT)
  43. * STAB.'SIGPMAX' = CONTRAINTE PRINCIPALE MAXIMALE (FLOTTANT)
  44. * STAB.'ELT' = ELEMENT OU LA CONT. PRIN. EST MAXIMALE (MAILLAGE)
  45. * STAB.'EPSEQ' = DEFORM. PLAST CUMULEE DS L'ELEMENT ELT (FLOTTANT)
  46. * passage aux nouveaux chamelems P DOWLATYARI JAN. 92
  47. *-----------------------------------------------------------------------
  48.  
  49. IWEIB=0;IREPS=0;IRSIG=0;
  50. TENTR=ETAB.'TNONL';
  51. R=1.D0 / 3.D0;2PI=2.D0 * PI;MOD='VALE' 'MODE';
  52.  
  53. *- transformation des sorties de l'ancien
  54. *- NONLIN au format de PASAPAS
  55.  
  56. TEMPS1 = TENTR.'TEMPS';
  57. TCONT1 = TENTR.'CONTRAINTES';
  58. TEPS1 = TENTR.'VARIABLES_INTERNES';
  59. TEPSP1 = TENTR.'DEFORMATIONS_INELASTIQUES';
  60. CHAR1 = TENTR.'CHARGEMENT';
  61. NPAS = 'DIME' TEMPS1;
  62. TCONT = 'TABLE';
  63. TEPS = 'TABLE';
  64. TEPSP = 'TABLE';
  65. CHATOT = 'TABLE';
  66. TIND = PROG;
  67. *
  68. *
  69. 'REPETER' BOU_MAN NPAS;
  70. ITE1 = &BOU_MAN - 1 ;
  71. TCONT . (TEMPS1.ITE1) = TCONT1.ITE1;
  72. TEPS . (TEMPS1.ITE1) = TEPS1.ITE1;
  73. TEPSP . (TEMPS1.ITE1) = TEPSP1.ITE1;
  74. *
  75. TIND = TIND 'ET' (PROG (TEMPS1.ITE1));
  76. 'FIN' BOU_MAN;
  77. *
  78. *
  79. 'SI' ( 'NON' ('EXISTE' ETAB 'OBJMO') ) ;
  80. 'ERREUR' 'IL FAUT DONNER L OBJET MODEL ' ;
  81. 'QUITTER' CRITLOC2 ;
  82. 'FINSI';
  83. OBJMO=ETAB.'OBJMO';
  84. *
  85. STAB='TABL';
  86. * LECTURE DES PARAMETRES DU CRITERE ET QUELQUES INITIALISATIONS
  87.  
  88. LOG='NON' (('EXISTE' ETAB 'RICE') OU ('EXISTE' ETAB 'WEIBULL'));
  89. 'SI' LOG;'MESS' 'IL FAUT DEFINIR LE TYPE DE CRITERE : RICE OU WEIBULL';
  90. 'QUITTER' CRITLOC2;'FINSI';
  91.  
  92. MAIL1 = 'EXTR' OBJMO 'MAIL' ;
  93. 'SI' ('EXISTE' ETAB 'RICE');
  94. LOG='NON' (('EXISTE' ETAB 'EPSILON') OU ('EXISTE' ETAB 'SIGMA'));
  95. 'SI' LOG;'MESS'
  96. 'POUR LE CRITERE DE RICE ,IL FAUT DEFINIR L OPTION: EPSILON OU SIGMA';
  97. 'QUITTER' CRITLOC2;'FINSI';
  98.  
  99. 'SI' ('EXISTE' ETAB 'EPSILON');IREPS=1;
  100. VALEPC=ETAB.'EPSC';VALBET=ETAB.'BETA';VALALP=ETAB.'ALPHA';
  101. EPSCX='MANU' 'CHPO' MAIL1 1 'SCAL' VALEPC;
  102. EPSC = 'CHAN' 'CHAM' OBJMO EPSCX 'STRESSES' 'SCALAIRE' ;
  103. 'DETR' EPSCX ;
  104. 'FINSI';
  105.  
  106. 'SI' ('EXISTE' ETAB 'SIGMA');IRSIG=1;
  107. VALBET=ETAB.'BETA';VALALP=ETAB.'ALPHA';
  108. VALLAM=ETAB.'LAMBDA';VALSI0=ETAB.'SIG0';VALSIC=ETAB.'SIGC';
  109. CHSIGX='MANU' 'CHPO' MAIL1 1 'SCAL' VALSI0;
  110. CHSIG0 = 'CHAN' 'CHAM' OBJMO CHSIGX 'STRESSES' 'SCALAIRE' ;
  111. 'DETR' CHSIGX ;
  112. CHSIGX='MANU' 'CHPO' MAIL1 1 'SCAL' VALSIC;
  113. CHSIGC = 'CHAN' 'CHAM' OBJMO CHSIGX 'STRESSES' 'SCALAIRE' ;
  114. 'DETR' CHSIGX ;
  115. SIGD0='ZERO' OBJMO 'STRESSES';
  116. STAB.'CONTDECO'='TABL';STAB.'CPRINMAX'='TABL';
  117. 'FINSI';
  118.  
  119. STAB.'RAPPORT'='TABL';STAB.'TAUX'='TABL';
  120. STAB.'SIGEQ'='TABL';STAB.'EPSEQ'='TABL';
  121. SIG0X='MANU' 'CHPO' MAIL1 1 'SCAL' 1.D-10;
  122. SIG0 = 'CHAN' 'CHAM' OBJMO SIG0X 'STRESSES' 'SCALAIRE' ;
  123. 'DETR' SIG0X ;
  124. EPS00='COPI' SIG0;
  125. EPS0='ZERO' OBJMO 'STRESSES';SIGS0='COPI' EPS0;SOMR0='COPI' EPS0;
  126. 'FINSI';
  127.  
  128. 'SI' ('EXISTE' ETAB 'WEIBULL');IWEIB=1;
  129. VALM=ETAB.'M';VALSU=ETAB.'SIGU';VALV0=ETAB.'V0';VALIC=ETAB.'IC';
  130. VALTP=ETAB.'TEMPER';
  131. *
  132. 'SI' (VALTP EGA 1);
  133. 'REPETER' BOW_MAN NPAS;
  134. ITE1 = &BOW_MAN - 1 ;
  135. CHATOT . (TEMPS1.ITE1) = (tire char1
  136. (TEMPS1.ITE1) 'T' );
  137. 'FIN' BOW_MAN;
  138. *
  139. *temperature de reference pour le calcul de la contrainte de Weibull
  140. TEREF = ETAB.'TEREF';
  141. *
  142. *verification que cette temperature figure dans temperature de VALSU
  143. SAB1 = 'EXTR' VALSU 'ABSC';
  144. TAL1 = 'MINI' SAB1;
  145. TAL2 = 'MAXI' SAB1;
  146. *
  147. 'SI'(TEREF <EG TAL2);
  148. 'SI' (TEREF < TAL1);
  149. 'MESS' 'ERREUR: 'TEREF HORS DES TEMPERATURES DONNEES DANS VALSU';
  150. 'QUITTER' CRITLOC2 ;
  151. 'FINSI';
  152. 'SINON';
  153. 'MESS' 'ERREUR: 'TEREF HORS DES TEMPERATURES DONNEES DANS VALSU';
  154. 'QUITTER' CRITLOC2 ;
  155. 'FINSI';
  156. *
  157. 'FINSI';
  158. 'FINSI';
  159. *
  160. *
  161. 'SI' (('EGA' MOD 'PLANCONT') 'OU' ('EGA' MOD 'PLANDEFO'));
  162. PARA=ETAB.'EPAI';'FINSI';
  163. 'SI' (('EGA' MOD 'AXIS') 'OU' ('EGA' MOD 'FOUR'));PARA=1.D0;'FINSI';
  164. 'SI' ('EGA' MOD 'TRID');PARA=1.D0;'FINSI';
  165. FONCPX='MANU' 'CHPO' MAIL1 1 'SCAL' PARA;
  166. FONCP = 'CHAN' 'CHAM' OBJMO FONCPX 'STRESSES' 'SCALAIRE' ;
  167. 'DETR' FONCPX ;
  168. STAB.'SIGW'='TABL';STAB.'PROB'='TABL';STAB.'VPLAS'='TABL';
  169. STAB.'SIGPMAX'='TABL';STAB.'EPSEQ'='TABL';STAB.'ELT'='TABL';
  170. 'SI' (VALIC 'EGA' 1);VALN=ETAB.'N';
  171. TMEP='TABL';
  172. 'SI' (('EGA' MOD 'PLANCONT') 'OU' ('EGA' MOD 'PLANDEFO')
  173. 'OU' ('EGA' MOD 'TRID'));
  174. TMEP.1='EIXX';TMEP.2='EIYY';TMEP.3='EIZZ';TMEP.4='GIXY';
  175. 'SI' ('EGA' MOD 'TRID');TMEP.5='GIXZ';TMEP.6='GIYZ';'FINSI';'FINSI';
  176. 'SI' (('EGA' MOD 'AXIS') 'OU' ('EGA' MOD 'FOUR'));
  177. TMEP.1='EIRR';TMEP.2='EIZZ';TMEP.3='EITT';TMEP.4='GIRZ';
  178. 'SI' ('EGA' MOD 'FOUR');TMEP.5='GIRT';TMEP.6='GIZT';'FINSI';'FINSI';
  179. 'FINSI';'FINSI';
  180.  
  181. FONC1X='MANU' 'CHPO' MAIL1 1 'SCAL' 1.;
  182. FONC1 = 'CHAN' 'CHAM' OBJMO FONC1X 'STRESSES' 'SCALAIRE' ;
  183. 'DETR' FONC1X ;
  184. FONCEX='MANU' 'CHPO' MAIL1 1 'SCAL' 1.E-20;
  185. FONCE = 'CHAN' 'CHAM' OBJMO FONCEX 'STRESSES' 'SCALAIRE' ;
  186. 'DETR' FONCEX ;
  187. FVOLU=(('INTG' 'ELEM' OBJMO FONC1) ** -1) CHAN 'STRESSES' OBJMO;
  188. TMOT='TABL';
  189. 'SI' (('EGA' MOD 'PLANCONT') 'OU' ('EGA' MOD 'PLANDEFO')
  190. 'OU' ('EGA' MOD 'TRID'));
  191. TMOT.1='SMXX';TMOT.2='SMYY';TMOT.3='SMZZ';TMOT.4='SMXY';
  192. 'SI' ('EGA' MOD 'TRID');TMOT.5='SMXZ';TMOT.6='SMYZ';'FINSI';'FINSI';
  193. 'SI' (('EGA' MOD 'AXIS') 'OU' ('EGA' MOD 'FOUR'));
  194. TMOT.1='SMRR';TMOT.2='SMZZ';TMOT.3='SMTT';TMOT.4='SMRZ';
  195. 'SI' ('EGA' MOD 'FOUR');TMOT.5='SMRT';TMOT.6='SMZT';'FINSI';'FINSI';
  196. *
  197. * BOUCLE SUR LES PAS DE TEMPS
  198. *
  199. IPAS=0;
  200. 'REPETER' BOUCLE NPAS;
  201. IPAS=IPAS + 1;
  202. TEMPS='EXTR' IPAS TIND;
  203. SIG=TCONT.TEMPS;CEPS=TEPS.TEMPS;EPSP=TEPSP.TEMPS;
  204. SIG='REDU' SIG OBJMO;CEPS='REDU' CEPS OBJMO;EPSP='REDU' EPSP OBJMO;
  205. EPS=('EXCO' 'EPSE' CEPS) 'CHAN' 'TYPE' 'SCALAIRE';
  206. *
  207.  
  208. * MOYENNATION DES CONTRAINTES SUR LES ELEMENTS
  209.  
  210. COEFP=EPS 'MASQ' 'EGSUPE' 1.D-8;
  211. FVOLUP=((('INTG' 'ELEM' OBJMO (FONC1 * COEFP)) 'CHAN' 'STRESSES' OBJMO)
  212. + FONCE) ** -1;
  213. *
  214. 'SI' (IWEIB 'EGA' 1);
  215. SIG=SIG * COEFP;FVOLU=FVOLUP;
  216. 'FINSI';
  217.  
  218. SIG1=('INTG' 'ELEM' OBJMO SIG (TMOT.1) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  219. SIG1=('EXCO' SIG1 'SCAL' 'NOID'(TMOT.1)) 'CHAN' 'TYPE' 'SCALAIRE' ;
  220. SIG2=('INTG' 'ELEM' OBJMO SIG (TMOT.2) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  221. SIG2=('EXCO' SIG2 'SCAL' 'NOID'(TMOT.2)) 'CHAN' 'TYPE' 'SCALAIRE' ;
  222. SIG3=('INTG' 'ELEM' OBJMO SIG (TMOT.3) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  223. SIG3=('EXCO' SIG3 'SCAL' 'NOID'(TMOT.3))'CHAN' 'TYPE' 'SCALAIRE' ;
  224. SIG4=('INTG' 'ELEM' OBJMO SIG (TMOT.4) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  225. SIG4=('EXCO' SIG4 'SCAL' 'NOID'(TMOT.4)) 'CHAN' 'TYPE' 'SCALAIRE' ;
  226. 'SI' (('EGA' MOD 'TRID') 'OU' ('EGA' MOD 'FOUR'));
  227. SIG5=('INTG' 'ELEM' OBJMO SIG (TMOT.5) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  228. SIG5=('EXCO' SIG5 'SCAL' 'NOID'(TMOT.5))'CHAN' 'TYPE' 'SCALAIRE' ;
  229. SIG6=('INTG' 'ELEM' OBJMO SIG (TMOT.6) 'CHAN' 'STRESSES' OBJMO) * FVOLU;
  230. SIG6=('EXCO' SIG6 'SCAL' 'NOID'(TMOT.6))'CHAN' 'TYPE' 'SCALAIRE' ;
  231. 'FINSI';
  232.  
  233. *
  234. 'SI' (('EGA' MOD 'PLANCONT') 'OU' ('EGA' MOD 'PLANDEFO')
  235. 'OU' ('EGA' MOD 'AXIS'));
  236. SIGMOY=SIG1 ET SIG2 ET SIG3 ET SIG4 ;
  237. SIGMOY='CHAN' 'TYPE' SIGMOY 'CONTRAINTES' ;
  238. 'FINSI';
  239. 'SI' (('EGA' MOD 'TRID') 'OU' ('EGA' MOD 'FOUR'));
  240. SIGMOY=SIG1 ET SIG2 ET SIG3 ET SIG4 ET SIG5 ET SIG6 ;
  241. SIGMOY='CHAN' 'TYPE' SIGMOY 'CONTRAINTES' ;
  242. 'FINSI' ;
  243.  
  244. * SIGMOY etant au centre de gravite des elements
  245. * on le change en 'STRESSES' pour avoir compatibilite
  246. * entre les supports pour le calcul du taux de triaxialite
  247. SIGMOY = SIGMOY 'CHANG' 'STRESSES' OBJMO;
  248.  
  249. * MOYENNATION DES DEFORMATIONS PLASTIQUES CUMULEES
  250. EPS=('INTG' 'ELEM' OBJMO EPS) 'CHAN' 'STRESSES' OBJMO;
  251. EPS= EPS * FVOLUP;
  252. *EPS = EPS 'CHANG' 'STRESSES' OBJMO;
  253.  
  254. * PLUS GRANDE CONTRAINTE PRINCIPALE (WEIBULL ET RICE SIGMA)
  255.  
  256. 'SI' ((IRSIG 'EGA' 1) 'OU' (IWEIB 'EGA' 1));
  257. PSIG='PRIN' OBJMO SIGMOY;
  258. PSI11=('EXCO' 'SI11' PSIG 'SCAL')'CHAN' 'TYPE' 'SCALAIRE';
  259. PSI22=('EXCO' 'SI22' PSIG 'SCAL')'CHAN' 'TYPE' 'SCALAIRE';
  260. PSI33=('EXCO' 'SI33' PSIG 'SCAL')'CHAN' 'TYPE' 'SCALAIRE';
  261. COEF1=PSI11 'MASQ' 'EGSUPE' PSI22;
  262. COEF2=PSI22 'MASQ' 'SUPERIEUR' PSI11;
  263. PSIAA=(PSI11 * COEF1) + (PSI22 * COEF2);
  264. COEF3=PSIAA 'MASQ' 'EGSUPE' PSI33;
  265. COEF4=PSI33 'MASQ' 'SUPERIEUR' PSIAA;
  266. SCOPR=(PSIAA * COEF3) + (PSI33 * COEF4);
  267. 'FINSI';
  268.  
  269. *
  270. * CRITERE DE RICE : CALCUL DU TAUX DE TRIAXIALITE ET R/R0
  271. *
  272.  
  273. 'SI' ((IREPS 'EGA' 1) 'OU' (IRSIG 'EGA' 1));
  274.  
  275. VSIG='VMIS' OBJMO SIGMOY;
  276. VSIG='CHAN' 'TYPE' VSIG 'SCALAIRE' ;
  277. * CALCUL DE LA CONTRAINTE DE DECOHESION
  278. 'SI' (IRSIG 'EGA' 1);
  279. SIGDEC = SCOPR + (VALLAM * (VSIG - CHSIG0));
  280. 'FINSI';
  281.  
  282. * CALCUL DU TAUX DE TRIAXIALITE
  283. CHEL1 CHEL2 CHEL3='INVA' OBJMO SIGMOY;
  284. SIGMV=R * CHEL1 * ((VSIG + SIG0) ** -1.);
  285.  
  286. * CALCUL DE R / R0
  287. *++ ON MET A ZERO LE TAUX DE TRIAXIALITE S IL EST NEGATIF
  288. SIGSG=SIGMV * (SIGMV 'MASQ' 'SUPERIEUR' 0.);
  289.  
  290. T1='EXP' (VALBET * SIGS0);
  291. T2='EXP' (VALBET * SIGSG);
  292.  
  293. 'SI' (IRSIG 'EGA' 1);
  294. TDSIG=(EPS0 * (SIGDEC - CHSIGC)) + (EPS * (CHSIGC - SIGD0));
  295. IDSIG=((SIGDEC - SIGD0) + SIG0) ** -1;
  296. EPSC=TDSIG * IDSIG;
  297. 'FINSI';
  298.  
  299. TT=(T2 * (EPS - EPSC)) + (T1 * (EPSC - EPS0));
  300. IDEPS0=((EPS - EPS0) + EPS00) ** -1;
  301. TC=TT * IDEPS0;
  302.  
  303. SS1=(TC + T2) * (EPS - EPSC);
  304. SS2=(T1 + T2) * (EPS - EPS0);
  305.  
  306. 'SI' (IREPS 'EGA' 1);COEF=EPS 'MASQ' 'SUPERIEUR' VALEPC;'FINSI';
  307. 'SI' (IRSIG 'EGA' 1);COEF=SIGDEC 'MASQ' 'SUPERIEUR' VALSIC;'FINSI';
  308. 'SI' (IREPS 'EGA' 1);COEF5=EPS0 'MASQ' 'EGSUPE' VALEPC;
  309. COEF6=EPS0 'MASQ' 'INFERIEUR' VALEPC;'FINSI';
  310. 'SI' (IRSIG 'EGA' 1);COEF5=SIGD0 'MASQ' 'EGSUPE' VALSIC;
  311. COEF6=SIGD0 'MASQ' 'INFERIEUR' VALSIC;'FINSI';
  312.  
  313. S=((SS1 * COEF6) + (SS2 * COEF5)) * COEF;
  314. SOMR0=SOMR0 + S;
  315. RSR0='EXP' ((0.5D0 * VALALP) * SOMR0);
  316. EPS0=EPS;SIGS0=SIGSG;
  317. 'SI' (IRSIG 'EGA' 1);
  318. SIGD0=SIGDEC;
  319. STAB.'CONTDECO'.TEMPS=SIGDEC;
  320. STAB.'CPRINMAX'.TEMPS=SCOPR;
  321. 'FINSI';
  322.  
  323. STAB.'RAPPORT'.TEMPS=SIGMV;
  324. STAB.'TAUX'.TEMPS=RSR0;
  325. STAB.'SIGEQ'.TEMPS=VSIG;
  326. STAB.'EPSEQ'.TEMPS=EPS;
  327. 'FINSI';
  328.  
  329. *
  330. * CRITERE DE WEIBULL : CALCUL DU VOLUME PLASTIQUE,
  331. * DE LA CONTRAINTE DE WEIBULL ET DE LA PROBABILITE DE RUPTURE
  332. *
  333.  
  334. 'SI' (IWEIB 'EGA' 1);
  335.  
  336. * CALCUL DU TERME CORR. SI EFFET DE LA DEFOR. PLAST. SUR LE CLIVAGE
  337.  
  338. *++DEFORMATION DANS LA DIRECTION DE LA PLUS GRANDE CONTRAINTE PRINCIPALE
  339. 'SI' (VALIC 'EGA' 1);
  340. COXPR = ((((('EXCO' 'COX1' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF1) +
  341. ((('EXCO' 'COX2' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF2))
  342. * COEF3) + ((('EXCO' 'COX3' PSIG)'CHAN' 'TYPE' 'SCALAIRE')
  343. * COEF4);
  344. COYPR = ((((('EXCO' 'COY1' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF1) +
  345. ((('EXCO' 'COY2' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF2))
  346. * COEF3) + ((('EXCO' 'COY3' PSIG)'CHAN' 'TYPE' 'SCALAIRE')
  347. * COEF4);
  348. COZPR = ((((('EXCO' 'COZ1' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF1) +
  349. ((('EXCO' 'COZ2' PSIG)'CHAN' 'TYPE' 'SCALAIRE') * COEF2))
  350. * COEF3) + ((('EXCO' 'COZ3' PSIG)'CHAN' 'TYPE' 'SCALAIRE')
  351. * COEF4);
  352.  
  353. DEF11 = ('INTG' 'ELEM' OBJMO EPSP (TMEP.1)'CHAN' 'STRESSES' OBJMO)
  354. * FVOLU;
  355. DEF22 = ('INTG' 'ELEM' OBJMO EPSP (TMEP.2)'CHAN' 'STRESSES' OBJMO )
  356. * FVOLU;
  357. DEF33 = ('INTG' 'ELEM' OBJMO EPSP (TMEP.3)'CHAN' 'STRESSES' OBJMO)
  358. * FVOLU;
  359. DEF12 = ('INTG' 'ELEM' OBJMO EPSP (TMEP.4)'CHAN' 'STRESSES' OBJMO)
  360. * FVOLU;
  361. DEF12=DEF12 / 2.;
  362. 'SI' (('EGA' MOD 'TRID') 'OU' ('EGA' MOD 'FOUR'));
  363. DEF13=('INTG' 'ELEM' OBJMO EPSP (TMEP.5)'CHAN' 'STRESSES' OBJMO)
  364. * FVOLU;
  365. DEF13=DEF13 / 2.;
  366. DEF23=('INTG' 'ELEM' OBJMO EPSP (TMEP.6)'CHAN' 'STRESSES' OBJMO)
  367. * FVOLU;
  368. DEF23=DEF23 / 2.;
  369. 'SINON';
  370. DEF13=DEF12 * 0.;
  371. DEF23=DEF12 * 0.;
  372. 'FINSI';
  373.  
  374. * DEF11 ... etant au centre de gravite des elements
  375. * on les change en 'STRESSES' pour avoir compatibilite
  376. * avec les supports de COXPR et COYPR et COZPR
  377. DEF11 = DEF11 CHANG 'STRESSES' OBJMO;
  378. DEF22 = DEF22 CHANG 'STRESSES' OBJMO;
  379. DEF33 = DEF33 CHANG 'STRESSES' OBJMO;
  380. DEF12 = DEF12 CHANG 'STRESSES' OBJMO;
  381. DEF13 = DEF13 CHANG 'STRESSES' OBJMO;
  382. DEF23 = DEF23 CHANG 'STRESSES' OBJMO;
  383.  
  384. DFT1 = ((DEF11 * COXPR) + (DEF12 * COYPR)
  385. + (DEF13 * COZPR)) * COXPR;
  386. DFT2 = ((DEF12 * COXPR) + (DEF22 * COYPR)
  387. + (DEF23 * COZPR)) * COYPR;
  388. DFT3 = ((DEF13 * COXPR) + (DEF23 * COYPR)
  389. + (DEF33 * COZPR)) * COZPR;
  390. DESUSI = DFT1 + DFT2 + DFT3;
  391.  
  392. SCOPR =SCOPR * ('EXP' ((-1. * VALIC / VALN) * DESUSI));
  393. 'FINSI';
  394.  
  395. * CALCUL DU VOLUME PLASTIQUE
  396. 'SI' ( 'EXISTE' ETAB 'XMULT');
  397. XMU1 = ETAB.'XMULT';
  398. 'SINON';
  399. XMU1 = 1.;
  400. MESS 'AVEZ-VOUS TENU COMPTE DES SYMETRIES POUR
  401. LE CALCUL DU VOLUME PLASTIQUE?';
  402. 'FINSI';
  403. VOLPLA = 'INTG' OBJMO (FONCP * COEFP);
  404. VOLPLA = VOLPLA * XMU1;
  405. *
  406. * CALCUL DE LA CONTRAINTE DE WEIBULL
  407. *++ ON MET A ZERO LA + GRANDE CONTRAINTE PRINC. SI ELLE EST NEGATIVE
  408. COEFPR=SCOPR 'MASQ' 'EGSUPE' 0.;
  409. SCOPR=SCOPR * COEFPR * COEFP;
  410. SCOMAX='MAXI' SCOPR;
  411. *
  412. *
  413. *
  414. 'SI' (VALTP EGA 1);
  415. *
  416. * determination de la contrainte caracteristique de clivage
  417. * a partir du champ de temperature : SIGU
  418. *VALSU est une evolution
  419. chtemp = chatot.temps;
  420. SAB1 = 'EXTR' VALSU 'ABSC';
  421. SOR1 = 'EXTR' VALSU 'ORDO';
  422. chsigu = 'IPOL' chtemp SAB1 SOR1;
  423. chsu0 = 'EXCO' chsigu 'T' 'SCAL';
  424. *determination de la valeur de sigu correspondant
  425. *a la temperature de reference teref
  426. VSUREF = 'IPOL' TEREF SAB1 SOR1;
  427. *
  428. 'SINON';
  429. *VALSU est une constante
  430. VSUREF = VALSU;
  431. chsu0='MANU' 'CHPO' MAIL1 1 'SCAL' VALSU;
  432. *
  433. 'FINSI';
  434. *
  435. * determination du rapport PRIN_MAX/SIGU soit R(t)
  436. chsu1 = chsu0 ** (-1);
  437. *chsu1 est un chpo
  438. chsu2 = 'CHAN' 'CHAM' OBJMO chsu1 'STRESSES' 'CONTRAINTES' ;
  439. *chsu2 est un chaml
  440. *
  441. XCOPR = SCOPR * chsu2;
  442. *XCOPR est un chaml
  443. *
  444. *++ ON MET A ZERO LE RAPPORT R(t) SI IL EST NEGATIF
  445. COEFPR=XCOPR 'MASQ' 'EGSUPE' 0.;
  446. XCOPR=XCOPR * COEFPR * COEFP;
  447. *
  448. FVOL1=('INTG' 'ELEM' OBJMO FONC1) ** -1;
  449. *
  450. 'SI' (&boucle EGA 1);
  451. XPS0 = ('EXCO' 'EPSE' CEPS) 'CHAN' 'TYPE' 'SCALAIRE';
  452. *
  453. *moyennation du champ de contraintes
  454. xcopr = ('INTG' 'ELEM' OBJMO xcopr) * FVOL1 ;
  455. CHX1 = XCOPR;
  456. *
  457. 'FINSI';
  458. *
  459. 'SI' (&boucle > 1);
  460. * determination si plasticite active
  461. XPS = ('EXCO' 'EPSE' CEPS) 'CHAN' 'TYPE' 'SCALAIRE' ;
  462. CPL1 = XPS 'MASQ' 'SUPERIEUR' XPS0 ;
  463. *on ne considere le rapport R(t) que si la plasticite est active
  464. CHA1 = XCOPR * CPL1;
  465. *
  466. *moyennation du champ de contraintes
  467. cha1 = ('INTG' 'ELEM' OBJMO cha1) * FVOL1 ;
  468. *
  469. *determination du max du rapport R sur tous les instants
  470. * [ 0, t ] ou la plasticite a ete ou est active
  471. COEF1 = CHA1 'MASQ' 'SUPERIEUR' CHX1;
  472. COEF2 = CHX1 'MASQ' 'EGSUPE' CHA1;
  473. XCOPR = (CHA1 * COEF1) + (CHX1 * COEF2);
  474. *
  475. CHX1 = XCOPR;
  476. XPS0 = XPS;
  477. *
  478. 'FINSI';
  479. *
  480. mcopr = 'MASQ' xcopr 'EGSUPE' 0.;
  481. xcopr = ((xcopr * mcopr )'CHAN' 'STRESSES' OBJMO) + fonce;
  482. *
  483. * CALCUL DE LA PROBABILITE DE RUPTURE
  484. XGALA = (('INTG' OBJMO (XCOPR ** VALM)) * XMU1 * PARA / VALV0);
  485. PROB = 1.D0 - ('EXP' ( (-1.D0)*XGALA ));
  486. *
  487. *Contrainte de Weibull a la temperature de reference teref
  488. SIGW = ( XGALA ** (1.D0 / VALM)) * VSUREF;
  489.  
  490.  
  491. *
  492. * ELEMENT OU LA CONTRAINTE PRINCIPALE EST MAXIMALE
  493. IEMAX=SCOPR 'ELEM' 'MAXI' ;
  494.  
  495. * DEFORMATION EQUIVALENTE ASSOCIEE A SIGPMAX
  496. SEPMAX='MAXI' ('REDU' EPS IEMAX);
  497. *
  498. STAB.'SIGW'.TEMPS=SIGW;
  499. STAB.'VPLAS'.TEMPS=VOLPLA;
  500. STAB.'PROB'.TEMPS=PROB;
  501. STAB.'SIGPMAX'.TEMPS=SCOMAX;
  502. STAB.'ELT'.TEMPS=IEMAX;
  503. STAB.'EPSEQ'.TEMPS=SEPMAX;
  504. 'FINSI';
  505. 'MENA';
  506. 'FIN' BOUCLE;
  507. 'FINP' STAB;
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales