Télécharger mazars_biaxial.dgibi

Retour à la liste

Numérotation des lignes :

  1. ************************************************************************
  2. * Cas test elementaire pour la loi d'endommagement de Mazars *
  3. * Essai biaxial de traction ou compression monotones *
  4. * *
  5. * Le test est realise avec plusieurs modes de calcul : *
  6. * 1) 3D volumique *
  7. * 2) 2D contraintes planes *
  8. * *
  9. * ITRAC1 : VRAI => affichage resultats *
  10. * IPSC1 : VRAI => affichage resultats dans un PostScript Couleur *
  11. ************************************************************************
  12.  
  13. DIVERS = 'VENV' 'CASTEM_DIVERS' ;
  14. FIC1 = 'CHAI' DIVERS '/mazars_biaxial_Ref_1342.out';
  15. FIC2 = 'CHAI' DIVERS '/mazars_biaxial_Ref_1242c.out';
  16.  
  17.  
  18. ** Options pour les traces
  19. ITRAC1 = VRAI ;
  20. IPSC1 = VRAI ;
  21. SI IPSC1 ;
  22. OPTI 'TRAC' 'PSC' ;
  23. FINSI ;
  24.  
  25. ** Initialisation sortie sur Erreur 1152 "Solution calculee non conforme par rapport a la solution de reference"
  26. IERR = FAUX ;
  27.  
  28. ** Liste des modes de calcul a traiter
  29. lcas = LECT 1 2 ;
  30. *nh145313
  31. *lcas = LECT 1 ; COMM '3D volumique' ;
  32. *lcas = LECT 2 ; COMM '2D contraintes planes' ;
  33.  
  34. ** Parametres geometriques
  35. long = 1. ;
  36. epai = 0.1 ;
  37.  
  38. ** Parametres materiau
  39. you = 20.E9 ;
  40. nu = 0.2 ;
  41. epd0 = 8.E-5 ;
  42. at = 1. ;
  43. ac = 1.5 ;
  44. bt = 8000. ;
  45. bc = 1550. ;
  46. beta = 1. ;
  47.  
  48. *nh145313
  49. ** Legende courbes
  50. tdess = 'TABLE' ;
  51. tdess.'TITRE' = 'TABLE' ;
  52. tdess. 1 = 'MARQ LOSA' ;
  53. tdess.'TITRE'. 1 = MOT 'Calcul' ;
  54. tdess. 2 = 'MARQ XS CROI' ;
  55. tdess.'TITRE'. 2 = MOT 'Reference' ;
  56.  
  57. ** Procedure PERSO1 pour stopper le calcul sur critere de ruine (REX : ISOUSPAS>ou=1 et Increm.Défo.>ou=2.E-3)
  58. DEBP PERSO1 t1*'TABLE' ;
  59. SI (EGA t1.'PERSO1_APPEL' 2) ;
  60. *mess 'Proc PERSO1';
  61. *mess '===========';
  62. *mess 'SOUS-PAS' ' ' T1.'WTABLE'.'ISOUSPAS' ' DPSMAX' ' ' T1.'WTABLE'.'DPSMAX' ;
  63. t1 . 'ARRET' = ('>EG' T1.'WTABLE'.'ISOUSPAS' 1)
  64. 'OU' ('>EG' T1.'WTABLE'.'DPSMAX' 2.E-3) ;
  65. FINSI;
  66. FINP ;
  67.  
  68. ** Procedure EC_REL pour calculer la moyenne intergrale de la courbe écart relatif (Calc - Ref) / Ref
  69. DEBP EC_REL nsig ev_ref ev_cal nx ndime log_dess tcare ;
  70. xref = EXTR ev_ref 'ABSC' ;
  71. yref = EXTR ev_ref 'ORDO' ;
  72. xcal = EXTR ev_cal 'ABSC' ;
  73. ycal = EXTR ev_cal 'ORDO' ;
  74. xref2 = xcal ;
  75. yref2 = IPOL xref2 ev_ref ;
  76. *mess 'Avant suppression';
  77. *mess 'ycal';list ycal;
  78. *mess 'yref2';list yref2;
  79. n_supr = 0 ;
  80. REPE b_y (DIME ycal) ;
  81. yy = EXTR ycal &b_y ;
  82. SI (yy 'EGA' 0. 1.E-2) ;
  83. n_supr = &b_y ;
  84. FINSI ;
  85. FIN b_y ;
  86. SI (n_supr NEG 0) ;
  87. ycal = ENLE ycal n_supr ;
  88. yref2 = ENLE yref2 n_supr ;
  89. xcal = ENLE xcal n_supr ;
  90. *mess 'Apres suppression du terme' ' ' n_supr ;
  91. *mess 'ycal';list ycal;
  92. *mess 'yref2';list yref2;
  93. FINSI ;
  94. ler1 = ABS ((ycal - yref2) / yref2) ;
  95. *mess 'ler1';list ler1;
  96. ny = CHAI '|Ec.rel|' nsig ;
  97. eer1 = EVOL 'ORAN' 'MANU' nx xcal ny ler1 ;
  98. dx = (EXTR xcal (DIME xcal)) - (EXTR xcal 1) ;
  99. SI (n_supr NEG 0) ;
  100. mer1 = (INTG eer1) / dx ;
  101. SINON ;
  102. mer1 = 0. ;
  103. FINSI ;
  104. tit1 = CHAI ndime ' ' nsig ' Val.abs.Ec.rel.|(Calc-Ref)/Ref| Contr. vs' ' ' nx ', moy.int.|Ecart|' ' ' mer1 ;
  105. SI ITRAC1 ;
  106. DESS (ev_cal et ev_ref) 'TITR' tit1 'LEGE' tcare ;
  107. DESS eer1 'TITR' tit1 'LEGE' tcare ;
  108. FINSI ;
  109. FINP mer1 ;
  110.  
  111. ** Procedure SOL_REF pour restituer la solution de référence d'une configuration géométrique donnée
  112. DEBP SOL_REF nom_fic ;
  113. OPTI REST nom_fic ;
  114. REST ;
  115. ev1 = ev_ref ;
  116. ev2 = evsmxx_ref ;
  117. ev3 = evsmyy_ref ;
  118. FINP ev1 ev2 ev3;
  119.  
  120.  
  121.  
  122. **************** C A S #1 : 3 D V O L U M I Q U E ****************
  123. SI (EXIS lcas 1) ;
  124.  
  125. ** Options generales
  126. OPTI 'DIME' 3 'MODE' 'TRID' 'ELEM' 'CUB8' ;
  127.  
  128. ** Maillage
  129. p1 = 0. 0. 0. ;
  130. p2 = 0. long 0. ;
  131. l12 = DROI 1 p1 p2 ;
  132. sgauche = l12 TRAN 1 (0. 0. long) ;
  133. mail = sgauche VOLU 'TRAN' 1 (long 0. 0.) ;
  134. sdroite = mail FACE 2 ;
  135. env1 = ENVE mail ;
  136. sbas = env1 ELEM 4 ;
  137. shaut = env1 ELEM 3 ;
  138. mes1 = MESU mail ;
  139. *nh145313
  140. p33 = mail POIN 'PROC' (long long long) ;
  141. *nh145313
  142. cadr1 = COUL ((0. 1.05 1.05) ET (1. 1.05 1.05)) 'BLAN' ;
  143. rep1 = @REPERE (-0.55 -0.55 0.) 'TURQ' ;
  144. SI ITRAC1 ;
  145. TRAC 'QUAL' (cadr1 ET rep1 ET mail ET ((sgauche ET sbas) COUL 'VERT') ET ((sdroite ET shaut) COUL 'ROUG')) 'TITR' '[3D V] Maillage' ;
  146. FINSI ;
  147.  
  148. ** Modele et caracteristiques materiau
  149. mo = MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS' ;
  150. ma = MATE mo 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta ;
  151.  
  152. ** Blocages
  153. bl = (BLOQ 'UX' sgauche) ET (BLOQ 'UY' sbas) ET (BLOQ 'UZ' p1) ;
  154.  
  155. ** Chargements (on fait varier le rapport entre les contraintes xx et yy imposees)
  156. langl = PROG 45. 'PAS' 2.5 225. ;
  157. lsigxx = PROG ;
  158. lsigyy = PROG ;
  159. langl1 = PROG ;
  160. lok = LECT ;
  161. REPE b0 (DIME langl) ;
  162. * angl1 = 120. ;
  163. angl1 = EXTR langl &b0 ;
  164. MESS '=== THETA' ' ' angl1 ' ===';
  165. *nh145313
  166. sigmax0 = 5.E7 ;
  167. sigmax = sigmax0 / (MAXI (PROG (ABS (COS angl1)) (ABS (SIN angl1)))) ;
  168. MESS ' sigmax' ' ' sigmax ;
  169. sxximp = sigmax * (COS angl1) ;
  170. syyimp = sigmax * (SIN angl1) ;
  171. fprx = PRES 'MASS' mo sdroite sxximp ;
  172. fpry = PRES 'MASS' mo shaut syyimp ;
  173. ev1 = EVOL 'MANU' (PROG 0. 1.) (PROG 0. 1.) ;
  174. cha = CHAR 'MECA' (fprx ET fpry) ev1 ;
  175.  
  176. ** Tracé des blocages et du chargement pour une valeur d'angle
  177. SI (EGA angl1 120.) ;
  178. re0 = @REPERE (-0.55 -0.55 0.) ;
  179. mor = MODE re0 'MECANIQUE' 'BARR' ;
  180. mar = MATE mor 'YOUN' 1. 'NU' 1. 'SECT' 1. ;
  181. rir = RIGI mor mar ;
  182. vfx = VECT fprx 'FORC' 'ROUG' (3.E-7 * 2.5E6 / 5.7735E7) ;
  183. vfy = VECT fpry 'FORC' 'ROUG' (3.E-7 * 2.5E6 / 5.7735E7) ;
  184. tit0 = CHAI '[3D V] Blocages et chargement, angle' ' ' angl1 ' deg.';
  185. SI ITRAC1 ;
  186. TRAC ((RIGI mo ma) ET bl ET rir) (vfx ET vfy) 'NOLE' 'TITR' tit0 ;
  187. FINSI ;
  188. FINSI ;
  189.  
  190. ** Resolution
  191. t = TABL ;
  192. t . 'MODELE' = mo ;
  193. t . 'CARACTERISTIQUES' = ma ;
  194. t . 'BLOCAGES_MECANIQUES' = bl ;
  195. t . 'CHARGEMENT' = cha ;
  196. t . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.002 1. ;
  197. t . 'MOVA' = MOT 'D' ;
  198. t . 'MES_SAUVEGARDES' = TABL ;
  199. t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
  200. t . 'PROCEDURE_PERSO1' = VRAI ;
  201. PASAPAS t ;
  202. ok = 0 ;
  203. SI (EXIS t 'ARRET') ;
  204. SI (t . 'ARRET') ;
  205. ok = 1 ;
  206. SINON;
  207. MESS ' la ruine n''a pas ete atteinte !';
  208. FINSI ;
  209. FINSI ;
  210. lok = lok ET ok ;
  211.  
  212. ** Post traitement
  213. * Recuperation des contraintes SMXX et SMYY obtenues a l'avant dernier instant de calcul (dernier instant = dommage total)
  214. evsmxx = EVOL 'TEMP' t 'CONTRAINTES' 'SMXX' 1 1 1 ;
  215. evsmyy = EVOL 'TEMP' t 'CONTRAINTES' 'SMYY' 1 1 1 ;
  216. tu = t . 'DEPLACEMENTS' ;
  217. def0 = DEFO (cadr1 ET rep1 ET mail) (tu . 0) 0. ;
  218. tc = t . 'CONTRAINTES' ;
  219. nc = DIME tc ;
  220. lsigxx = lsigxx ET ((INTG mo (tc . (nc - 2)) 'SMXX') / mes1) ;
  221. lsigyy = lsigyy ET ((INTG mo (tc . (nc - 2)) 'SMYY') / mes1) ;
  222. langl1 = langl1 ET angl1 ;
  223. *nh145313
  224. SI (EGA angl1 120.) ;
  225. * Courbes Dommage D en fonction des déplacements UX et UY
  226. * - D calcule au point de Gauss k de l'element j de la zone i
  227. vi_fi = t . 'VARIABLES_INTERNES' . ((DIME t . 'VARIABLES_INTERNES') - 1) ;
  228. pgauss = (EXCO vi_fi 'D') POIN 'COMPRIS' 0. 1. ;
  229. REPE b1_i (EXTR vi_fi 'NBZO') ;
  230. REPE b1_j (NBEL (EXTR vi_fi 'MAIL')) ;
  231. REPE b1_k (NBNO pgauss) ;
  232. evdii = EVOL 'ROUG' 'TEMP' t . 'VARIABLES_INTERNES' 'D ' &b1_i &b1_j &b1_k ;
  233. yvdii = EXTR evdii 'ORDO' ;
  234. evuxi = EVOL 'ROUG' 'TEMP' t . 'DEPLACEMENTS' 'UX ' p33 ;
  235. yvuxi = EXTR evuxi 'ORDO' ;
  236. evduxi = EVOL 'ROUG' 'MANU' 'DEPLACEMENTS' yvuxi 'VAR_INT D' yvdii ;
  237. * evduxi = EVOL 'ROUG' 'MANU' yvuxi yvdii ;
  238. evuyi = EVOL 'ROSE' 'TEMP' t . 'DEPLACEMENTS' 'UY ' p33 ;
  239. yvuyi = EXTR evuyi 'ORDO' ;
  240. evduyi = EVOL 'ROSE' 'MANU' 'DEPLACEMENTS' yvuyi 'VAR_INT D' yvdii ;
  241. * evduyi = EVOL 'ROSE' 'MANU' yvuyi yvdii ;
  242. SI ((EGA &b1_i 1) ET (EGA &b1_j 1) ET (EGA &b1_k 1)) ;
  243. evdux1 = evduxi ;
  244. evduy1 = evduyi ;
  245. SINON ;
  246. evdux1 = evdux1 ET evduxi ;
  247. evduy1 = evduy1 ET evduyi ;
  248. FINSI ;
  249. FIN b1_k ;
  250. FIN b1_j ;
  251. FIN b1_i ;
  252. * - table des courbes et cummul dans une seule evolution
  253. t_evd1 = TABL ;
  254. t_evd1.'COUR' = TABL ;
  255. t_evd1.'MARQ' = TABL ;
  256. t_evd1.'TITRE' = TABL ;
  257. ix = 0 ; iy = 0 ;
  258. REPE b_evdux1 (DIME evdux1) ;
  259. ix = &b_evdux1 ;
  260. iy = (DIME evdux1) + &b_evdux1 ;
  261. t_evd1.'COUR'. ix = EXTR evdux1 'COUR' ix ;
  262. t_evd1.'MARQ'. ix = 'MARQ LOSA' ;
  263. t_evd1.'TITRE'. ix = CHAI 'Dir.X_pt.Gauss' ' ' ix ;
  264. t_evd1.'COUR'. iy = EXTR evduy1 'COUR' ix ;
  265. t_evd1.'MARQ'. iy = 'MARQ LOSA' ;
  266. t_evd1.'TITRE'. iy = CHAI 'Dir.Y_pt.Gauss' ' ' ix ;
  267. SI (EGA ix 1) ;
  268. evd1a = t_evd1.'COUR'. ix ;
  269. SINON ;
  270. evd1a = evd1a ET t_evd1.'COUR'. ix ;
  271. FINSI ;
  272. FIN b_evdux1 ;
  273. iy = ix ;
  274. REPE b_evduy1 (DIME evduy1) ;
  275. iy = iy + 1 ;
  276. evd1a = evd1a ET t_evd1.'COUR'. iy ;
  277. FIN b_evduy1 ;
  278. * - dessin des courbes de dommage
  279. tdess1 = TABL ;
  280. tdess1.'TITRE' = TABL ;
  281. REPE b_dess1 (2*(DIME evdux1)) ;
  282. tdess1. &b_dess1 = t_evd1.'MARQ'. &b_dess1 ;
  283. tdess1.'TITRE'. &b_dess1 = t_evd1.'TITRE'. &b_dess1 ;
  284. FIN b_dess1 ;
  285. tit1 = CHAI '[3D V] Dommage D en fn de UX et UY, angle' ' ' angl1 ' deg.';
  286. SI ITRAC1 ;
  287. DESS evd1a 'TITR' tit1 'LEGE' tdess1 ;
  288. FINSI ;
  289.  
  290. * Courbes Contraintes en fonction des déformations : SMXX=fn(EPXX) et SMYY=fn(EPYYY)
  291. * - (SMXX,EPXX) et (SMYY,EPYY) calcules au point de Gauss k de l'element j de la zone i
  292. REPE b2_i (EXTR vi_fi 'NBZO') ;
  293. REPE b2_j (NBEL (EXTR vi_fi 'MAIL')) ;
  294. REPE b2_k (NBNO pgauss) ;
  295. evsxi = EVOL 'TEMP' t . 'CONTRAINTES' 'SMXX' &b2_i &b2_j &b2_k ;
  296. evexi = EVOL 'TEMP' t . 'DEFORMATIONS' 'EPXX' &b2_i &b2_j &b2_k ;
  297. titri = CHAI 'SMXX=f(EPXX) zone' ' ' &b2_i ', elem.' &b2_j ', pt.Gauss' ' ' &b2_k ;
  298. evxxi = EVOL 'ROUG' 'MANU' 'LEGE' titri 'DEFORMATIONS' (EXTR evexi 'ORDO')
  299. 'CONTRAINTES' (EXTR evsxi 'ORDO') ;
  300. evsyi = EVOL 'TEMP' t . 'CONTRAINTES' 'SMYY' &b2_i &b2_j &b2_k ;
  301. eveyi = EVOL 'TEMP' t . 'DEFORMATIONS' 'EPYY' &b2_i &b2_j &b2_k ;
  302. titri = CHAI 'SMYY=f(EPYY) zone' ' ' &b2_i ', elem.' &b2_j ', pt.Gauss' ' ' &b2_k ;
  303. evyyi = EVOL 'ROSE' 'MANU' 'LEGE' titri 'DEFORMATIONS' (EXTR eveyi 'ORDO')
  304. 'CONTRAINTES' (EXTR evsyi 'ORDO') ;
  305. SI ((EGA &b2_i 1) ET (EGA &b2_j 1) ET (EGA &b2_k 1)) ;
  306. evxx1 = evxxi ;
  307. evyy1 = evyyi ;
  308. SINON ;
  309. evxx1 = evxx1 ET evxxi ;
  310. evyy1 = evyy1 ET evyyi ;
  311. FINSI ;
  312. FIN b2_k ;
  313. FIN b2_j ;
  314. FIN b2_i ;
  315. * - table des courbes et cummul dans une seule evolution
  316. t_evse1 = TABL ;
  317. t_evse1.'COUR' = TABL ;
  318. t_evse1.'MARQ' = TABL ;
  319. t_evse1.'TITRE' = TABL ;
  320. REPE b_evse1 ((DIME evxx1) + (DIME evyy1)) ;
  321. SI (<EG &b_evse1 8) ;
  322. t_evse1.'COUR'. &b_evse1 = EXTR evxx1 'COUR' &b_evse1 ;
  323. t_evse1.'MARQ'. &b_evse1 = 'MARQ LOSA' ;
  324. t_evse1.'TITRE'. &b_evse1 = CHAI 'Dir.X_pt.Gauss' ' ' &b_evse1 ;
  325. SINON ;
  326. t_evse1.'COUR'. &b_evse1 = EXTR evyy1 'COUR' (&b_evse1 - 8) ;
  327. t_evse1.'MARQ'. &b_evse1 = 'MARQ CARR' ;
  328. t_evse1.'TITRE'. &b_evse1 = CHAI 'Dir.Y_pt.Gauss' ' ' (&b_evse1 - 8) ;
  329. FINS;
  330. SI (EGA &b_evse1 1) ;
  331. evse1a = t_evse1.'COUR'. &b_evse1 ;
  332. SINON ;
  333. evse1a = evse1a ET t_evse1.'COUR'. &b_evse1 ;
  334. FINSI ;
  335. FIN b_evse1 ;
  336. * - dessin des courbes SMXX=fn(EPXX) et SMYY=fn(EPYY)
  337. tdess2 = TABL ;
  338. tdess2.'TITRE' = TABL ;
  339. REPE b_dess2 (DIME evse1a) ;
  340. tdess2. &b_dess2 = t_evse1.'MARQ'. &b_dess2 ;
  341. tdess2.'TITRE'. &b_dess2 = t_evse1.'TITRE'. &b_dess2 ;
  342. FIN b_dess2 ;
  343. tit2 = CHAI '[3D V] SMXX=fn(EPXX) et SMYY=fn(EPYY), angle' ' ' angl1 ' deg.';
  344. SI ITRAC1 ;
  345. DESS evse1a 'TITR' tit2 'LEGE' tdess2 ;
  346. FINSI ;
  347.  
  348. * contraintes SMXX et SMYY et deformations EPXX et EPYY a l'avant dernier instant (on retient l'etat avant dommage total)
  349. nn = ((DIME t . 'VARIABLES_INTERNES') - 2) ;
  350. tt = t . 'TEMPS'. nn ;
  351. titrj = CHAI ' pas' ' ' nn ' instant' ' ' tt ;
  352. sm_ad = t . 'CONTRAINTES'. nn ;
  353. ep_ad = t . 'DEFORMATIONS'. nn ;
  354. val_smxx_ad = MAXI (EXCO sm_ad 'SMXX') ;
  355. val_epxx_ad = MAXI (EXCO ep_ad 'EPXX') ;
  356. val_smyy_ad = MAXI (EXCO sm_ad 'SMYY') ;
  357. val_epyy_ad = MAXI (EXCO ep_ad 'EPYY') ;
  358. SAUT 1 'LIGN' ;
  359. MESS '|THETA[deg]' ' ' angl1 ' |SMXX[Pa]' ' ' val_smxx_ad ' |EPXX[adim]' ' ' val_epxx_ad
  360. ' |SMYY[Pa]' ' ' val_smyy_ad ' |EPYY[adim]' ' ' val_epyy_ad ;
  361. * deformee
  362. REPE b2 (DIME t . 'TEMPS') ;
  363. tps1 = t . 'TEMPS' . (&b2 - 1) ;
  364. * trace de la deformee (pour controle visuel)
  365. def1 = DEFO mail (tu . (&b2 - 1)) 516. 'ROUG' ;
  366. tit1 = CHAI '[3D V] Deformee au temps' ' ' tps1 ;
  367. SI ITRAC1 ;
  368. * TRAC (def0 ET def1) 'TITR' tit1 ;
  369. SI (&b2 EGA ((DIME t . 'TEMPS') - 1)) ;
  370. TRAC (def0 ET def1) 'TITR' tit1 ;
  371. FINSI ;
  372. FINSI ;
  373. FIN b2 ;
  374. SI ITRAC1 ;
  375. * TRAC (def0 ET def1) 'TITR' tit1 ;
  376. FINSI ;
  377. FINSI ;
  378. * Courbes calculees Contrainte avant ruine vs Angle
  379. evsmxx1 = EVOL 'TURQ' 'MANU' 'Angle' langl1 'SMXX' lsigxx ;
  380. evsmyy1 = EVOL 'OCEA' 'MANU' 'Angle' langl1 'SMYY' lsigyy ;
  381. FIN b0 ;
  382. * test que pour toutes les valeurs d'angle, on a atteint la ruine
  383. SI (EXIS lok 0) ;
  384. MESS ;
  385. MESS '***** Attention, pour certains points la ruine n''a pas ete atteinte ! *****' ;
  386. MESS ;
  387. LIST lok ;
  388. FINSI ;
  389.  
  390. * Solution de Reference :
  391. * FIC1 : mazars_biaxial_Ref_1342.out issu de 08_biaxial_non_suivi/08_biaxial_Ref_1342.dgibi
  392. * - pas de temps = 1.E-3 s
  393. * - increm. angle = 1 deg.
  394. ev2 evsmxx2 evsmyy2 = SOL_REF FIC1 ;
  395.  
  396. * Courbes SMXX vs SMYY
  397. * on complete la courbe calculée sur [45 deg. ; 125deg] par sa symetrie par rapport à la bissectrice
  398. nval = DIME lsigxx ;
  399. lsigxx1 = lsigxx ;
  400. lsigyy1 = lsigyy ;
  401. REPE b_val (nval - 1) ;
  402. lsigxx1 = lsigxx1 ET (PROG (EXTR lsigyy (nval - &b_val))) ;
  403. lsigyy1 = lsigyy1 ET (PROG (EXTR lsigxx (nval - &b_val))) ;
  404. FIN b_val ;
  405. ev1 = EVOL 'ROUG' 'MANU' 'SMXX' lsigxx1 'SMYY' lsigyy1 ;
  406. tit1 = CHAI '[3D V] Diagramme des contraintes SMXX - SMYY' ;
  407. SI ITRAC1 ;
  408. DESS (ev1 ET ev2) 'CARR' 'AXES' 'GRIL' 'POIN' 'GRIS' 'TITR' tit1 'LEGE' tdess ;
  409. FINSI ;
  410.  
  411. * Courbes normalisées à la resistance en compression uniaxiale Fc : SMXX/|Fc| - SMYY/|Fc|
  412. * - REX cas-test 2D-CP de compression uniaxiale en contrainte imposée 08_biaxial_Ref_1222c.dgibi : Fc = -25,64 MPa
  413. Fc = -0.2564E8 ;
  414. * - normalisation
  415. ev1sFc = EVOL 'ROUG' 'MANU' 'SMXX/|Fc|' (lsigxx1 / (ABS Fc)) 'SMYY/|Fc|' (lsigyy1 / (ABS Fc)) ;
  416. ev2sFc = EVOL 'ROSE' 'MANU' 'SMXX/|Fc|' ((EXTR ev2 'ABSC') / (ABS Fc)) 'SMYY/|Fc|' ((EXTR ev2 'ORDO') / (ABS Fc)) ;
  417. tit1 = '[3D V] Diagramme des contraintes normalisees SMXX/|Fc| - SMYY/|Fc|' ;
  418. SI ITRAC1 ;
  419. DESS (ev1sFc ET ev2sFc) 'CARR' 'AXES' 'GRIL' 'POIN' 'GRIS' 'TITR' tit1 'LEGE' tdess ;
  420. FINSI ;
  421.  
  422. * Comparaison Calcul / Reference sur les courbes SMXX vs Angle et SMYY vs Angle
  423. * - sol. calculee : evsmxx1 et evsmyy1
  424. * - sol. de Référence (calculée) : evsmxx2 et evsmyy2
  425. *mess 'Courbe Reference';list evsmxx2;
  426. *mess 'Courbe calculee';list evsmxx1;
  427. merx = EC_REL 'SMXX' evsmxx2 evsmxx1 'Angle' '[3D V]' ITRAC1 tdess ;
  428. mery = EC_REL 'SMYY' evsmyy2 evsmyy1 'Angle' '[3D V]' ITRAC1 tdess ;
  429. OPTI ECHO 0 ;
  430. SAUT 1 LIGN ;
  431. MESS ' **************** C A S #1 : 3 D V O L U M I Q U E ****************';
  432. SAUT 1 LIGN ;
  433. SI ((MAXI merx mery) < 2.E-2) ;
  434. MESS ' Moy.int. Val.abs. Ecart relatif entre Calcul et Reference' ;
  435. MESS ' - Contrainte SMXX' ' ' merx ;
  436. MESS ' - Contrainte SMYY' ' ' mery ;
  437. MESS ' - maximum des 2 composantes' ' ' (MAXI merx mery) ' < 2.E-02 => OK' ;
  438. SAUT 1 LIGN ;
  439. SINO ;
  440. MESS ' Moy.int. Val.abs. Ecart relatif entre Calcul et Reference' ;
  441. MESS ' - Contrainte SMXX' ' ' merx ;
  442. MESS ' - Contrainte SMYY' ' ' mery ;
  443. MESS ' - maximum des 2 composantes' ' ' (MAXI merx mery) ' > 2.E-02 => ECHEC' ;
  444. IERR = VRAI ;
  445. SAUT 1 LIGN ;
  446. FINS ;
  447. SAUT 1 LIGN ;
  448. OPTI ECHO 1 ;
  449. FINSI ;
  450.  
  451.  
  452.  
  453.  
  454. ******* C A S #2 : 2 D C O N T R A I N T E S P L A N E S ********
  455. SI (EXIS lcas 2) ;
  456.  
  457. ** Options generales
  458. OPTI 'DIME' 2 'MODE' 'PLAN' 'CONT' 'ELEM' 'QUA4' ;
  459.  
  460. ** Maillage
  461. p1 = 0. 0. ;
  462. p2 = 0. long ;
  463. sgauche = DROI 1 p1 p2 ;
  464. mail = sgauche TRAN 1 (long 0.) ;
  465. shaut = mail COTE 2 ;
  466. sdroite = mail COTE 3 ;
  467. sbas = mail COTE 4 ;
  468. mes1 = MESU mail ;
  469. *nh145313
  470. p33 = mail POIN 'PROC' (long long) ;
  471. *nh145313
  472. cadr1 = COUL ((1.11 0.) ET (1.11 1.)) 'BLAN' ;
  473. rep1 = @REPERE (-0.2 -0.2) (PROG 0.5 0.5) 'TURQ' ;
  474. SI ITRAC1 ;
  475. TRAC 'QUAL' (cadr1 ET rep1 ET mail ET ((sgauche ET sbas) COUL 'VERT') ET ((sdroite ET shaut) COUL 'ROUG')) 'TITR' '[2D Plan cont.] Maillage' ;
  476. FINSI ;
  477.  
  478. ** Modele et caracteristiques materiau
  479. mo = MODE mail 'MECANIQUE' 'ELASTIQUE' 'ENDOMMAGEMENT' 'MAZARS' ;
  480. ma = MATE mo 'YOUN' you 'NU' nu 'KTR0' epd0 'ACOM' ac 'BCOM' bc 'ATRA' at 'BTRA' bt 'BETA' beta 'DIM3' epai ;
  481.  
  482. ** Blocages
  483. bl = (BLOQ 'UX' sgauche) ET (BLOQ 'UY' sbas) ;
  484.  
  485. ** Chargements (on fait varier le rapport entre les contraintes xx et yy imposees)
  486. langl = PROG 45. 'PAS' 2.5 225. ;
  487. lsigxx = PROG ;
  488. lsigyy = PROG ;
  489. langl1 = PROG ;
  490. lok = LECT ;
  491. REPE b0 (DIME langl) ;
  492. * angl1 = 120. ;
  493. angl1 = EXTR langl &b0 ;
  494. MESS '=== THETA' ' ' angl1 ' ===';
  495. *nh145313
  496. sigmax0 = 5.E6 ;
  497. sigmax = sigmax0 / (MAXI (PROG (ABS (COS angl1)) (ABS (SIN angl1)))) ;
  498. MESS ' sigmax' ' ' sigmax ;
  499. sxximp = sigmax * (COS angl1) ;
  500. syyimp = sigmax * (SIN angl1) ;
  501. fprx = PRES 'MASS' mo sdroite sxximp ;
  502. fpry = PRES 'MASS' mo shaut syyimp ;
  503. ev1 = EVOL 'MANU' (PROG 0. 1.) (PROG 0. 1.) ;
  504. cha = CHAR 'MECA' (fprx ET fpry) ev1 ;
  505.  
  506. ** Tracé des blocages et du chargement pour une valeur d'angle
  507. SI (EGA angl1 120.) ;
  508. re0 = @REPERE (-0.2 -0.2) (PROG 0.5 0.5) ;
  509. mor = MODE re0 'MECANIQUE' 'BARR' ;
  510. mar = MATE mor 'YOUN' 1. 'NU' 1. 'SECT' 1. ;
  511. rir = RIGI mor mar ;
  512. vfx = VECT fprx 'FORC' 'ROUG' (1.E-6 * 0.25E6 / 5.7735E6) ;
  513. vfy = VECT fpry 'FORC' 'ROUG' (1.E-6 * 0.25E6 / 5.7735E6) ;
  514. tit0 = CHAI '[2D Plan cont.] Blocages et chargement, angle' ' ' angl1 ' deg.';
  515. SI ITRAC1 ;
  516. TRAC ((RIGI mo ma) ET bl ET rir) (vfx ET vfy) 'NOLE' 'TITR' tit0 ;
  517. FINSI ;
  518. FINSI ;
  519.  
  520. ** Resolution
  521. t = TABL ;
  522. t . 'MODELE' = mo ;
  523. t . 'CARACTERISTIQUES' = ma ;
  524. t . 'BLOCAGES_MECANIQUES' = bl ;
  525. t . 'CHARGEMENT' = cha ;
  526. t . 'TEMPS_CALCULES' = PROG 0. 'PAS' 0.002 1. ;
  527. t . 'MOVA' = MOT 'D' ;
  528. t . 'MES_SAUVEGARDES' = TABL ;
  529. t . 'MES_SAUVEGARDES' . 'DEFTO' = VRAI ;
  530. t . 'PROCEDURE_PERSO1' = VRAI ;
  531. PASAPAS t ;
  532. ok = 0 ;
  533. SI (EXIS t 'ARRET') ;
  534. SI (t . 'ARRET') ;
  535. ok = 1 ;
  536. SINON;
  537. MESS ' la ruine n''a pas ete atteinte !';
  538. FINSI ;
  539. FINSI ;
  540. lok = lok ET ok ;
  541.  
  542. ** Post traitement
  543. * Recuperation des contraintes SMXX et SMYY obtenues a l'avant dernier instant de calcul (dernier instant = dommage total)
  544. evsmxx = EVOL 'TEMP' t 'CONTRAINTES' 'SMXX' 1 1 1 ;
  545. evsmyy = EVOL 'TEMP' t 'CONTRAINTES' 'SMYY' 1 1 1 ;
  546. tu = t . 'DEPLACEMENTS' ;
  547. def0 = DEFO (cadr1 ET rep1 ET mail) (tu . 0) 0. ;
  548. tc = t . 'CONTRAINTES' ;
  549. nc = DIME tc ;
  550. lsigxx = lsigxx ET ((INTG mo (tc . (nc - 2)) 'SMXX') / mes1) ;
  551. lsigyy = lsigyy ET ((INTG mo (tc . (nc - 2)) 'SMYY') / mes1) ;
  552. langl1 = langl1 ET angl1 ;
  553. *nh145313
  554. SI (EGA angl1 120.) ;
  555. * Courbes Dommage D en fonction des déplacements UX et UY
  556. * - D calcule au point de Gauss k de l'element j de la zone i
  557. vi_fi = t . 'VARIABLES_INTERNES' . ((DIME t . 'VARIABLES_INTERNES') - 1) ;
  558. pgauss = (EXCO vi_fi 'D') POIN 'COMPRIS' 0. 1. ;
  559. REPE b1_i (EXTR vi_fi 'NBZO') ;
  560. REPE b1_j (NBEL (EXTR vi_fi 'MAIL')) ;
  561. REPE b1_k (NBNO pgauss) ;
  562. evdii = EVOL 'ROUG' 'TEMP' t . 'VARIABLES_INTERNES' 'D ' &b1_i &b1_j &b1_k ;
  563. yvdii = EXTR evdii 'ORDO' ;
  564. evuxi = EVOL 'ROUG' 'TEMP' t . 'DEPLACEMENTS' 'UX ' p33 ;
  565. yvuxi = EXTR evuxi 'ORDO' ;
  566. evduxi = EVOL 'ROUG' 'MANU' 'DEPLACEMENTS' yvuxi 'VAR_INT D' yvdii ;
  567. * evduxi = EVOL 'ROUG' 'MANU' yvuxi yvdii ;
  568. evuyi = EVOL 'ROSE' 'TEMP' t . 'DEPLACEMENTS' 'UY ' p33 ;
  569. yvuyi = EXTR evuyi 'ORDO' ;
  570. evduyi = EVOL 'ROSE' 'MANU' 'DEPLACEMENTS' yvuyi 'VAR_INT D' yvdii ;
  571. * evduyi = EVOL 'ROSE' 'MANU' yvuyi yvdii ;
  572. SI ((EGA &b1_i 1) ET (EGA &b1_j 1) ET (EGA &b1_k 1)) ;
  573. evdux1 = evduxi ;
  574. evduy1 = evduyi ;
  575. SINON ;
  576. evdux1 = evdux1 ET evduxi ;
  577. evduy1 = evduy1 ET evduyi ;
  578. FINSI ;
  579. FIN b1_k ;
  580. FIN b1_j ;
  581. FIN b1_i ;
  582. * - table des courbes et cummul dans une seule evolution
  583. t_evd1 = TABL ;
  584. t_evd1.'COUR' = TABL ;
  585. t_evd1.'MARQ' = TABL ;
  586. t_evd1.'TITRE' = TABL ;
  587. ix = 0 ; iy = 0 ;
  588. REPE b_evdux1 (DIME evdux1) ;
  589. ix = &b_evdux1 ;
  590. iy = (DIME evdux1) + &b_evdux1 ;
  591. t_evd1.'COUR'. ix = EXTR evdux1 'COUR' ix ;
  592. t_evd1.'MARQ'. ix = 'MARQ LOSA' ;
  593. t_evd1.'TITRE'. ix = CHAI 'Dir.X_pt.Gauss' ' ' ix ;
  594. t_evd1.'COUR'. iy = EXTR evduy1 'COUR' ix ;
  595. t_evd1.'MARQ'. iy = 'MARQ LOSA' ;
  596. t_evd1.'TITRE'. iy = CHAI 'Dir.Y_pt.Gauss' ' ' ix ;
  597. SI (EGA ix 1) ;
  598. evd1a = t_evd1.'COUR'. ix ;
  599. SINON ;
  600. evd1a = evd1a ET t_evd1.'COUR'. ix ;
  601. FINSI ;
  602. FIN b_evdux1 ;
  603. iy = ix ;
  604. REPE b_evduy1 (DIME evduy1) ;
  605. iy = iy + 1 ;
  606. evd1a = evd1a ET t_evd1.'COUR'. iy ;
  607. FIN b_evduy1 ;
  608. * - dessin des courbes de dommage
  609. tdess1 = TABL ;
  610. tdess1.'TITRE' = TABL ;
  611. REPE b_dess1 (2*(DIME evdux1)) ;
  612. tdess1. &b_dess1 = t_evd1.'MARQ'. &b_dess1 ;
  613. tdess1.'TITRE'. &b_dess1 = t_evd1.'TITRE'. &b_dess1 ;
  614. FIN b_dess1 ;
  615. tit1 = CHAI '[2D Plan cont.] Dommage D en fn de UX et UY, angle' ' ' angl1 ' deg.';
  616. SI ITRAC1 ;
  617. DESS evd1a 'TITR' tit1 'LEGE' tdess1 ;
  618. FINSI ;
  619.  
  620. * Courbes Contraintes en fonction des déformations : SMXX=fn(EPXX) et SMYY=fn(EPYYY)
  621. * - (SMXX,EPXX) et (SMYY,EPYY) calcules au point de Gauss k de l'element j de la zone i
  622. REPE b2_i (EXTR vi_fi 'NBZO') ;
  623. REPE b2_j (NBEL (EXTR vi_fi 'MAIL')) ;
  624. REPE b2_k (NBNO pgauss) ;
  625. evsxi = EVOL 'TEMP' t . 'CONTRAINTES' 'SMXX' &b2_i &b2_j &b2_k ;
  626. evexi = EVOL 'TEMP' t . 'DEFORMATIONS' 'EPXX' &b2_i &b2_j &b2_k ;
  627. titri = CHAI 'SMXX=f(EPXX) zone' ' ' &b2_i ', elem.' &b2_j ', pt.Gauss' ' ' &b2_k ;
  628. evxxi = EVOL 'ROUG' 'MANU' 'LEGE' titri 'DEFORMATIONS' (EXTR evexi 'ORDO')
  629. 'CONTRAINTES' (EXTR evsxi 'ORDO') ;
  630. evsyi = EVOL 'TEMP' t . 'CONTRAINTES' 'SMYY' &b2_i &b2_j &b2_k ;
  631. eveyi = EVOL 'TEMP' t . 'DEFORMATIONS' 'EPYY' &b2_i &b2_j &b2_k ;
  632. titri = CHAI 'SMYY=f(EPYY) zone' ' ' &b2_i ', elem.' &b2_j ', pt.Gauss' ' ' &b2_k ;
  633. evyyi = EVOL 'ROSE' 'MANU' 'LEGE' titri 'DEFORMATIONS' (EXTR eveyi 'ORDO')
  634. 'CONTRAINTES' (EXTR evsyi 'ORDO') ;
  635. SI ((EGA &b2_i 1) ET (EGA &b2_j 1) ET (EGA &b2_k 1)) ;
  636. evxx1 = evxxi ;
  637. evyy1 = evyyi ;
  638. SINON ;
  639. evxx1 = evxx1 ET evxxi ;
  640. evyy1 = evyy1 ET evyyi ;
  641. FINSI ;
  642. FIN b2_k ;
  643. FIN b2_j ;
  644. FIN b2_i ;
  645. * - table des courbes et cummul dans une seule evolution
  646. t_evse1 = TABL ;
  647. t_evse1.'COUR' = TABL ;
  648. t_evse1.'MARQ' = TABL ;
  649. t_evse1.'TITRE' = TABL ;
  650. REPE b_evse1 ((DIME evxx1) + (DIME evyy1)) ;
  651. SI (&lt;EG &b_evse1 4) ;
  652. t_evse1.'COUR'. &b_evse1 = EXTR evxx1 'COUR' &b_evse1 ;
  653. t_evse1.'MARQ'. &b_evse1 = 'MARQ LOSA' ;
  654. t_evse1.'TITRE'. &b_evse1 = CHAI 'Dir.X_pt.Gauss' ' ' &b_evse1 ;
  655. SINON ;
  656. t_evse1.'COUR'. &b_evse1 = EXTR evyy1 'COUR' (&b_evse1 - 4) ;
  657. t_evse1.'MARQ'. &b_evse1 = 'MARQ CARR' ;
  658. t_evse1.'TITRE'. &b_evse1 = CHAI 'Dir.Y_pt.Gauss' ' ' (&b_evse1 - 4) ;
  659. FINS;
  660. SI (EGA &b_evse1 1) ;
  661. evse1a = t_evse1.'COUR'. &b_evse1 ;
  662. SINON ;
  663. evse1a = evse1a ET t_evse1.'COUR'. &b_evse1 ;
  664. FINSI ;
  665. FIN b_evse1 ;
  666. * - dessin des courbes SMXX=fn(EPXX) et SMYY=fn(EPYY)
  667. tdess2 = TABL ;
  668. tdess2.'TITRE' = TABL ;
  669. REPE b_dess2 (DIME evse1a) ;
  670. tdess2. &b_dess2 = t_evse1.'MARQ'. &b_dess2 ;
  671. tdess2.'TITRE'. &b_dess2 = t_evse1.'TITRE'. &b_dess2 ;
  672. FIN b_dess2 ;
  673. tit2 = CHAI '[2D Plan cont.] SMXX=fn(EPXX) et SMYY=fn(EPYY), angle' ' ' angl1 ' deg.';
  674. SI ITRAC1 ;
  675. DESS evse1a 'TITR' tit2 'LEGE' tdess2 ;
  676. FINSI ;
  677.  
  678. * contraintes SMXX et SMYY et deformations EPXX et EPYY a l'avant dernier instant (on retient l'etat avant dommage total)
  679. nn = ((DIME t . 'VARIABLES_INTERNES') - 2) ;
  680. tt = t . 'TEMPS'. nn ;
  681. titrj = CHAI ' pas' ' ' nn ' instant' ' ' tt ;
  682. sm_ad = t . 'CONTRAINTES'. nn ;
  683. ep_ad = t . 'DEFORMATIONS'. nn ;
  684. val_smxx_ad = MAXI (EXCO sm_ad 'SMXX') ;
  685. val_epxx_ad = MAXI (EXCO ep_ad 'EPXX') ;
  686. val_smyy_ad = MAXI (EXCO sm_ad 'SMYY') ;
  687. val_epyy_ad = MAXI (EXCO ep_ad 'EPYY') ;
  688. SAUT 1 'LIGN' ;
  689. MESS '|THETA[deg]' ' ' angl1 ' |SMXX[Pa]' ' ' val_smxx_ad ' |EPXX[adim]' ' ' val_epxx_ad
  690. ' |SMYY[Pa]' ' ' val_smyy_ad ' |EPYY[adim]' ' ' val_epyy_ad ;
  691. * deformee
  692. REPE b2 (DIME t . 'TEMPS') ;
  693. tps1 = t . 'TEMPS' . (&b2 - 1) ;
  694. * trace de la deformee (pour controle visuel)
  695. def1 = DEFO mail (tu . (&b2 - 1)) 516. 'ROUG' ;
  696. tit1 = CHAI '[2D Plan cont.] Deformee au temps' ' ' tps1 ;
  697. SI ITRAC1 ;
  698. * TRAC (def0 ET def1) 'TITR' tit1 ;
  699. SI (&b2 EGA ((DIME t . 'TEMPS') - 1)) ;
  700. TRAC (def0 ET def1) 'TITR' tit1 ;
  701. FINSI ;
  702. FINSI ;
  703. FIN b2 ;
  704. SI ITRAC1 ;
  705. * TRAC (def0 ET def1) 'TITR' tit1 ;
  706. FINSI ;
  707. FINSI ;
  708. * Courbes calculees Contrainte avant ruine vs Angle
  709. evsmxx1 = EVOL 'TURQ' 'MANU' 'Angle' langl1 'SMXX' lsigxx ;
  710. evsmyy1 = EVOL 'OCEA' 'MANU' 'Angle' langl1 'SMYY' lsigyy ;
  711. FIN b0 ;
  712. * test que pour toutes les valeurs d'angle, on a atteint la ruine
  713. SI (EXIS lok 0) ;
  714. MESS ;
  715. MESS '***** Attention, pour certains points la ruine n''a pas ete atteinte ! *****' ;
  716. MESS ;
  717. LIST lok ;
  718. FINSI ;
  719.  
  720. * Solution de Reference :
  721. * FIC2 : mazars_biaxial_Ref_1242c.out issu de 08_biaxial_non_suivi/08_biaxial_Ref_1242c.dgibi
  722. * - pas de temps = 1.E-3 s
  723. * - increm. angle = 1 deg.
  724. ev2 evsmxx2 evsmyy2 = SOL_REF FIC2 ;
  725.  
  726. * Courbes SMXX vs SMYY
  727. * on complete la courbe calculée sur [45 deg. ; 125deg] par sa symetrie par rapport à la bissectrice
  728. nval = DIME lsigxx ;
  729. lsigxx1 = lsigxx ;
  730. lsigyy1 = lsigyy ;
  731. REPE b_val (nval - 1) ;
  732. lsigxx1 = lsigxx1 ET (PROG (EXTR lsigyy (nval - &b_val))) ;
  733. lsigyy1 = lsigyy1 ET (PROG (EXTR lsigxx (nval - &b_val))) ;
  734. FIN b_val ;
  735. ev1 = EVOL 'ROUG' 'MANU' 'SMXX' lsigxx1 'SMYY' lsigyy1 ;
  736. tit1 = CHAI '[2D Plan cont.] Diagramme des contraintes SMXX - SMYY' ;
  737. SI ITRAC1 ;
  738. DESS (ev1 ET ev2) 'CARR' 'AXES' 'GRIL' 'POIN' 'GRIS' 'TITR' tit1 'LEGE' tdess ;
  739. FINSI ;
  740.  
  741. * Courbes normalisées à la resistance en compression uniaxiale Fc : SMXX/|Fc| - SMYY/|Fc|
  742. * - REX cas-test 2D-CP de compression uniaxiale en contrainte imposée 08_biaxial_Ref_1222c.dgibi : Fc = -25,64 MPa
  743. Fc = -0.2564E8 ;
  744. * - normalisation
  745. ev1sFc = EVOL 'ROUG' 'MANU' 'SMXX/|Fc|' (lsigxx1 / (ABS Fc)) 'SMYY/|Fc|' (lsigyy1 / (ABS Fc)) ;
  746. ev2sFc = EVOL 'ROSE' 'MANU' 'SMXX/|Fc|' ((EXTR ev2 'ABSC') / (ABS Fc)) 'SMYY/|Fc|' ((EXTR ev2 'ORDO') / (ABS Fc)) ;
  747. tit1 = '[2D Plan cont.] Diagramme des contraintes normalisees SMXX/|Fc| - SMYY/|Fc|' ;
  748. SI ITRAC1 ;
  749. DESS (ev1sFc ET ev2sFc) 'CARR' 'AXES' 'GRIL' 'POIN' 'GRIS' 'TITR' tit1 'LEGE' tdess ;
  750. FINSI ;
  751.  
  752. * Comparaison Calcul / Reference sur les courbes SMXX vs Angle et SMYY vs Angle
  753. * - sol. calculee : evsmxx1 et evsmyy1
  754. * - sol. de Référence (calculée) : evsmxx2 et evsmyy2
  755. *mess 'Courbe Reference';list evsmxx2;
  756. *mess 'Courbe calculee';list evsmxx1;
  757. merx = EC_REL 'SMXX' evsmxx2 evsmxx1 'Angle' '[2D Plan cont.]' ITRAC1 tdess ;
  758. mery = EC_REL 'SMYY' evsmyy2 evsmyy1 'Angle' '[2D Plan cont.]' ITRAC1 tdess ;
  759. OPTI ECHO 0 ;
  760. SAUT 1 LIGN ;
  761. MESS ' ******* C A S #2 : 2 D C O N T R A I N T E S P L A N E S *******';
  762. SAUT 1 LIGN ;
  763. SI ((MAXI merx mery) < 2.E-2) ;
  764. MESS ' Moy.int. Val.abs. Ecart relatif entre Calcul et Reference' ;
  765. MESS ' - Contrainte SMXX' ' ' merx ;
  766. MESS ' - Contrainte SMYY' ' ' mery ;
  767. MESS ' - maximum des 2 composantes' ' ' (MAXI merx mery) ' < 2.E-02 => OK' ;
  768. SAUT 1 LIGN ;
  769. SINO ;
  770. MESS ' Moy.int. Val.abs. Ecart relatif entre Calcul et Reference' ;
  771. MESS ' - Contrainte SMXX' ' ' merx ;
  772. MESS ' - Contrainte SMYY' ' ' mery ;
  773. MESS ' - maximum des 2 composantes' ' ' (MAXI merx mery) ' > 2.E-02 => ECHEC' ;
  774. IERR = VRAI ;
  775. SAUT 1 LIGN ;
  776. FINS ;
  777. SAUT 1 LIGN ;
  778. OPTI ECHO 1 ;
  779. FINSI ;
  780.  
  781. ** Sortie sur Erreur 1152 en cas de non conformite
  782. SI IERR ;
  783. ERRE 1152 ;
  784. ERRE 5 ;
  785. FINSI ;
  786.  
  787.  
  788.  
  789.  
  790.  
  791. FIN ;
  792.  
  793.  
  794.  

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