Télécharger uo2s_cas1.dgibi

Retour à la liste

Numérotation des lignes :

  1. * fichier : uo2s_cas1.dgibi
  2. ************************************************************************
  3. ************************************************************************
  4. * Test uo2s_cas1.dgibi: Jeux de donnees
  5. * ------------------------------------
  6. *
  7. * repertoire des fichiers "divers"
  8. DIVERS = VENV 'CASTEM_DIVERS';
  9. *
  10. 'OPTI' 'DIME' 3 'MODE' 'TRID' ;
  11. 'OPTI' 'ELEM' 'CUB8' ;
  12. 'OPTI' 'TRAC' 'PSC' ;
  13. 'TEMPS' 'ZERO' ;
  14. L = 'MOT' LIST ; F = 'MOT' FIN ;
  15. *
  16. **********************************************************
  17. * TEST DE VALIDATION *
  18. * ------------------ *
  19. * MODELE UO2 *
  20. * (COUPLAGE DES MODELES GATT_MONERIE ET OTTOSEN) *
  21. * UO2 STANDARD COMPRESSIBLE AVEC COUPLAGE STATIQUE *
  22. * RESOLUTION SIMPLIFIEE *
  23. * *
  24. * MAILLAGE: *
  25. * CUBE *
  26. * *
  27. * CHARGEMENT: *
  28. * DEPLACEMENTS IMPOSES A VITESSES CTE EN TRACTION *
  29. * SELON LES DIRECTIONS Z ET X : *
  30. * VIT DE DEF EN X = 0.8 * (VIT DE DEF EN Z) *
  31. * TEMPERATURE CTE *
  32. * DENSITE DE FISSIONS CTE *
  33. * OTTOSEN ACTIVE (FISSURATIONS PUIS RUPTURES DS LES *
  34. * DEUX DIRECTIONS (D ABORD Z PUIS X) *
  35. * VISCOPLASTICITE SIMPLIFIEE (VIA CHOIX DES COEFS) *
  36. * ACTIVEE *
  37. * GONFLEMENT ACTIVE *
  38. * PAS DE DENSIFICATION *
  39. **********************************************************
  40. *
  41. DESSI = FAUX ;
  42. *
  43. * -----------------------------*
  44. * MAILLAGE D UN CUBE DE COTE 1 *
  45. * -----------------------------*
  46. HS2 = 2E-5 ;
  47. *
  48. OO = 0. 0. 0. ;
  49. A1 = HS2 0. 0. ;
  50. A2 = HS2 0. HS2 ;
  51. A3 = 0. 0. HS2 ;
  52. *
  53. LB = 'DROIT' 1 OO A1 ;
  54. LD = 'DROIT' 1 A1 A2 ;
  55. LH = 'DROIT' 1 A2 A3 ;
  56. LG = 'DROIT' 1 A3 OO ;
  57. *
  58. SUA = 'DALL' LB LD LH LG 'PLAN' ;
  59. SU2 = SUA 'PLUS' (0. HS2 0.) ;
  60. VOL1 = 'VOLU' 1 SUA SU2 ;
  61. 'ELIM' (HS2/1000.) VOL1 ;
  62. *
  63. SUB = 'POIN' ('COOR' 3 VOL1) 'INFERIEUR' (HS2/1000.) ;
  64. SUH = 'POIN' ('COOR' 3 VOL1) 'SUPERIEUR' (HS2 - (HS2/1000.));
  65. LG = 'POIN' ('COOR' 1 VOL1) 'INFERIEUR' (HS2/1000.) ;
  66. LD = 'POIN' ('COOR' 1 VOL1) 'SUPERIEUR' (HS2 - (HS2/1000.));
  67. *
  68. VOL2 = VOL1 'TOUR' 45. OO (0 HS2 0);
  69. SUB2 = SUB 'TOUR' 45. OO (0 HS2 0); 'ELIM' (HS2/1000.) vol2 SUB2;
  70. SUH2 = SUH 'TOUR' 45. OO (0 HS2 0); 'ELIM' (HS2/1000.) vol2 SUH2;
  71. LG2 = LG 'TOUR' 45. OO (0 HS2 0); 'ELIM' (HS2/1000.) vol2 LG2 ;
  72. LD2 = LD 'TOUR' 45. OO (0 HS2 0); 'ELIM' (HS2/1000.) vol2 LD2 ;
  73. SUA2 = SUA 'TOUR' 45. OO (0 HS2 0); 'ELIM' (HS2/1000.) vol2 SUA2;
  74. VOL1 = VOL2 ;
  75.  
  76. VX2 = (1 0 0) 'TOUR' 45. OO (0 HS2 0);
  77. VZ2 = (0 0 1) 'TOUR' 45. OO (0 HS2 0);
  78. * -----------------------------------------------------*
  79. * Conditions aux limites + deplacement impose sur CLZH *
  80. * -----------------------------------------------------*
  81. CLZB = 'BLOQ' SUB2 'DEPL' 'DIRECTION' VZ2 ;
  82. CLZH = 'BLOQ' SUH2 'DEPL' 'DIRECTION' VZ2 ;
  83. CLXG = 'BLOQ' LG2 'DEPL' 'DIRECTION' VX2 ;
  84. CLXD = 'BLOQ' LD2 'DEPL' 'DIRECTION' VX2 ;
  85. CLYG = 'BLOQ' UY SUA2 ;
  86. CLT = CLZB 'ET' CLZH 'ET' CLXG 'ET' CLXD 'ET' CLYG ;
  87. * -------*
  88. * Modele *
  89. * -------*
  90. MODL1= MODE VOL1 MECANIQUE ELASTIQUE VISCOPLASTIQUE UO2 ;
  91. *
  92. TA = @GATTPAR ('CHAINE' DIVERS '/fichier_gatt');
  93. *
  94. * Temperature moyenne (cte au cours du calcul)
  95. * --------------------------------------------
  96. TE1 = 1420. + 273. ;
  97.  
  98. * -----------------------------------------------------------------*
  99. * Temperature de reference et temperature de reference pour 'ALPH' *
  100. * -----------------------------------------------------------------*
  101. TREF = TE1 ;
  102. TALPHA = 0. ;
  103. *
  104. * Porosite initiale
  105. * -----------------
  106. PO = 4.52E-2 ;
  107. *
  108. * Densite de fission (cte au cours du calcul)
  109. * -------------------------------------------
  110. PHI1 = 3E20 ;
  111. *
  112. RHO0 = 1. - TA.'POR0' ;
  113. TAU0 = TA.'EFIS'*270./238./10950./RHO0 ;
  114. *
  115. PP = 'MANU' 'CHML' MODL1 'T' TE1 'PORO' PO RIGIDITE ;
  116. *
  117. *
  118. * --------------------------------------*
  119. * 'YOUN' constant ou fonction de T et f *
  120. * --------------------------------------*
  121. MATREE = MATE MODL1 'YOUN' (TA.'YOUN') ;
  122. EE = 'VARI' 'NUAG' MODL1 MATREE PP ;
  123. * EE = (TA.'YOUN') ;
  124. MATREE = MATE MODL1 'YOUN' EE ;
  125. * ------------------------------------*
  126. * 'NU' constant ou fonction de T et f *
  127. * ------------------------------------*
  128. MATRUU = MATE MODL1 'NU' (TA.'NU') ;
  129. UU = 'VARI' 'NUAG' MODL1 MATRUU PP ;
  130. * UU = (TA.'NU') ;
  131. * --------------------------------------*
  132. * 'ALPH' constant ou fonction de T et f *
  133. * --------------------------------------*
  134. MATRAA = MATE MODL1 'ALPH' (TA.'ALPH') 'TALP' TALPHA 'TREF' TREF ;
  135. XALFA = 'VARI' 'NUAG' MODL1 MATRAA PP ;
  136. * XALFA = (TA.'ALPH') ;
  137. MATRAA = MATE MODL1 'ALPH' XALFA ;
  138. * ----------------------------------------*
  139. * 'ALPH' pour la temperature de reference *
  140. * ----------------------------------------*
  141. PP = 'MANU' 'CHML' MODL1 'T' TREF 'PORO' PO RIGIDITE ;
  142. ALFATREF = 'MAXI' ('VARI' 'NUAG' MODL1 MATRAA PP) ;
  143. *
  144. * -----------------------------*
  145. * Materiau partie GATT_MONERIE *
  146. * -----------------------------*
  147. * fluage primaire (negligeable devant le fluage d'irradiation)
  148. TA.'AP' = 1 ;
  149. TA.'BP' = 0 ;
  150. * fluage secondaire (2 mecanismes)
  151. TA.'N1' = 1. ;
  152. TA.'N2' = 1. ;
  153. * fluage d"irradiation
  154. TA.'N3' = 1. ;
  155. * fonction de couplage
  156. TA.'OMEG' = 0. ;
  157. * densification/gonflement
  158. TA.'BUMI' = 5E3 * (TA.'BUMI') ;
  159. *
  160. MATR11 = 'MATE' MODL1 'YOUN' EE 'NU' UU 'RHO' (TA.'RHO') 'ALPH' XALFA 'TALP' TALPHA 'TREF' TREF ;
  161. *
  162. MATR12 = 'MATE' MODL1 'R' (TA.'R') 'DG0' (TA.'DG0') 'DG' (TA.'DG') 'K1' (TA.'K1') 'M1' (TA.'M1') 'Q1' (TA.'Q1') 'N1' (TA.'N1') 'K2' (TA.'K2') 'M2' (TA.'M2') 'Q2' (TA.'Q2') 'N2' (TA.'N2') 'OMEG' (TA.'OMEG') 'H' (TA.'H') 'Q' (TA.'Q') 'BETA' (TA.'BETA') 'K' (TA.'K') 'A' (TA.'A') 'Q3' (TA.'Q3') 'N3' (TA.'N3') 'CR' (TA.'CR') 'CR1' (TA.'CR1') 'CR2' (TA.'CR2') 'CR3' (TA.'CR3');
  163. *
  164. MATR13 = 'MATE' MODL1 'KP' (TA.'KPUO') 'AP' (TA.'AP') 'BP' (TA.'BP') 'QP' (TA.'QP') ;
  165. *
  166. MATR14 = 'MATE' MODL1 'ADEN' (TA.'ADEN') 'KGON' (TA.'KGON') 'POR0' (TA.'POR0') 'BUMI' (TA.'BUMI') 'EFIS' (TA.'EFIS') ;
  167. *
  168. * TYPE = 0. combustible UO2 sinon combustible AFA3GLAA
  169. * COMP = 0. combustible compressible sinon incompressible
  170. * DYN = 0. couplage statique sinon dynamique
  171. *
  172. * -----------------------------*
  173. * Materiau partie OTTOSEN *
  174. * -----------------------------*
  175. MATR16 = 'TAIL' MODL1 ;
  176. *
  177. * Resistance au cisaillement 'GS ' par defaut: 'YOUN'*1.8E-4
  178. * Ouverture a rupture 'WRUP' = 0 --> 'WRUP' = 2*'GFTR'/'LTR '
  179. * Relation bilineaire 'BILI' = 0 --> 'BILI' = 0 (ouverture)
  180. *
  181. XGFTR = 3.0 ; XGFTR1=XGFTR ; XGFTR2=XGFTR ; XGFTR3=XGFTR ;
  182. XLTR = 136E6 ; XLTR1 =XLTR ; XLTR2 =XLTR ; XLTR3 =XLTR ;
  183. XBTR = 0.2 ;
  184. *
  185. MATR17 = 'MATE' MODL1 'GFTR' XGFTR 'LTR ' XLTR 'BTR ' XBTR 'WRUP' 0. 'BILI' 0. 'GFT1' XGFTR1 'GFT2' XGFTR2 'GFT3' XGFTR3 'GS1 ' 0. 'GS2 ' 0. 'GS3 ' 0. 'LTR1' XLTR1 'LTR2' XLTR2 'LTR3' XLTR3 'WRU1' 0. 'WRU2' 0. 'WRU3' 0. 'BIL1' 0. 'BIL2' 0. 'BIL3' 0. 'SIMP' 1. ;
  186. *
  187. MATR1 = MATR11 'ET' MATR12 'ET' MATR13 'ET' MATR14 'ET' MATR16 'ET' MATR17 ;
  188. *
  189. *
  190. ************************************************************************
  191. 'DEBP' XFONC FN*'FLOTTANT' XFN1*'FLOTTANT' DT*'FLOTTANT' SXN*'FLOTTANT' SZN*'FLOTTANT' PAX*'FLOTTANT' PAZ*'FLOTTANT' EX*'FLOTTANT' EZ*'FLOTTANT' NU_SUR_E*'FLOTTANT' C12*'FLOTTANT' C3*'FLOTTANT' ;
  192.  
  193. UNTIER = 1. / 3. ; DEUXTIER = 2. / 3. ; UNDEMI = 1. / 2. ;
  194.  
  195. det = (EX * EZ) - (NU_SUR_E ** 2) ;
  196. AX = (EZ * PAX) + (NU_SUR_E * PAZ) ;
  197. AZ = (EX * PAZ) + (NU_SUR_E * PAX) ;
  198.  
  199. A = XFN1 / (1. - XFN1) ;
  200. B = (1. + (DEUXTIER * XFN1)) / (1. - XFN1) ;
  201.  
  202. X = UNTIER * C12 * A ;
  203. Y = (DEUXTIER * C12 * B) + (UNDEMI * C3) ;
  204.  
  205. GDT = DT / det ; GDT2 = GDT**2 ;
  206.  
  207. GDET1a = 2. * NU_SUR_E * (Y - X) ;
  208. GDET1b = (EX + EZ) * (X + (2.*Y)) ;
  209. GDET1 = GDT * (GDET1a - GDET1b) ;
  210. GDET2 = 3. * GDT2 * det * Y * (Y + (2.*X)) ;
  211. GDET = (1. - GDET1) + GDET2 ;
  212.  
  213. FONC1a = 3. * Y * GDT * (NU_SUR_E - EX) ;
  214. FONC1a = 1. - FONC1a ;
  215. FONC1b = (GDT * AX) + SXN ;
  216. FONC1c = 3. * Y * GDT * (NU_SUR_E - EZ) ;
  217. FONC1c = 1. - FONC1c ;
  218. FONC1d = (GDT * AZ) + SZN ;
  219. FONC1e = (FONC1b * FONC1a) + (FONC1d * FONC1c) ;
  220. FONC1 = DT * C12 * XFN1 * FONC1e ;
  221. FONC2 = GDET * (XFN1 - FN) ;
  222. VFONC = FONC1 - FONC2 ;
  223. TFONC = ('ABS' VFONC) / FONC1 ;
  224. 'FINP' VFONC TFONC FONC1e GDET ;
  225. ************************************************************************
  226. *
  227. ************************************************************************
  228. 'DEBP' FCTNUL FN*'FLOTTANT' DT*'FLOTTANT' SXN*'FLOTTANT' SZN*'FLOTTANT' PAX*'FLOTTANT' PAZ*'FLOTTANT' EX*'FLOTTANT' EZ*'FLOTTANT' NU_SUR_E*'FLOTTANT' C12*'FLOTTANT' C3*'FLOTTANT' ;
  229.  
  230. XFN1 = FN ;
  231. V1 TES1 FONCe1 GDET1 = XFONC FN XFN1 DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  232. XFN2a = GDET1 * FN ;
  233. XFN2b = GDET1 - (DT * C12 * FONCe1) ;
  234. XFN2 = XFN2a / XFN2b ;
  235. *--
  236. 'REPETER' STRU1 ;
  237. *--
  238. V2 TES2 FONCe2 GDET2 = XFONC FN XFN2 DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  239. PREC = 1E-4 ;
  240. 'SI' ('<EG' TES2 PREC) ;
  241. FN1 = XFN2 ;
  242. GDET1 = GDET2 ;
  243. 'QUIT' STRU1 ;
  244. 'FINSI' ;
  245.  
  246. * 'SI' ('>' &STRU1 100) ;
  247. * 'MESS' 'PAS DE SOLUTION DANS FCTNUL: &STRU1' &STRU1 ;
  248. * 'FINSI' ;
  249.  
  250. * 'SI' ( ('>' (V1 * V2) 0.) 'ET' ('EGA' &STRU1 1) ) ;
  251. * 'MESS' 'MAUVAISE ESTIMATION INITIALE DANS FCTNUL: V1 V2 =' V1 V2 ;
  252. * 'FINSI' ;
  253.  
  254. XX = V1 / (V1 - V2) ;
  255. XXF = ((XFN2 - XFN1) * XX) + XFN1 ;
  256. 'SI' ('<EG' (V1 * V2) 0.) ;
  257. XFN2 = XXF ;
  258. 'SINON' ;
  259. XFN1 = XXF ;
  260. 'FINSI' ;
  261. *--
  262. 'FIN' STRU1 ;
  263. *--
  264. 'FINP' FN1 GDET1 ;
  265. ************************************************************************
  266. *
  267. ************************************************************************
  268. 'DEBP' CONT XFN1*'FLOTTANT' GDET1*'FLOTTANT' DT*'FLOTTANT' SXN*'FLOTTANT' SZN*'FLOTTANT' PAX*'FLOTTANT' PAZ*'FLOTTANT' EX*'FLOTTANT' EZ*'FLOTTANT' NU_SUR_E*'FLOTTANT' C12*'FLOTTANT' C3*'FLOTTANT' ;
  269.  
  270. UNTIER = 1. / 3. ; DEUXTIER = 2. / 3. ; UNDEMI = 1. / 2. ;
  271.  
  272. det = (EX * EZ) - (NU_SUR_E ** 2) ;
  273. AX = (EZ * PAX) + (NU_SUR_E * PAZ) ;
  274. AZ = (EX * PAZ) + (NU_SUR_E * PAX) ;
  275.  
  276. A = XFN1 / (1. - XFN1) ;
  277. B = (1. + (DEUXTIER * XFN1)) / (1. - XFN1) ;
  278.  
  279. X = UNTIER * C12 * A ;
  280. Y = (DEUXTIER * C12 * B) + (UNDEMI * C3) ;
  281.  
  282. GDT = DT / det ;
  283.  
  284. SZN1a = (GDT * AZ) + SZN ;
  285. SZN1b = NU_SUR_E * (Y - X) ;
  286. SZN1c = EZ * (X + (2. * Y)) ;
  287. SZN1d = 1. - (GDT * (SZN1b - SZN1c)) ;
  288. SZN1e = SZN1a * SZN1d ;
  289. SZN1a = (GDT * AX) + SXN ;
  290. SZN1b = NU_SUR_E * (X + (2. * Y)) ;
  291. SZN1c = EX * (Y - X) ;
  292. SZN1d = GDT * (SZN1c - SZN1b) ;
  293. SZN1 = SZN1e + (SZN1a * SZN1d) ;
  294. SZN1 = SZN1 / GDET1 ;
  295.  
  296. SXN1a = (GDT * AX) + SXN ;
  297. SXN1b = NU_SUR_E * (Y - X) ;
  298. SXN1c = EX * (X + (2. * Y)) ;
  299. SXN1d = 1. - (GDT * (SXN1b - SXN1c)) ;
  300. SXN1e = SXN1a * SXN1d ;
  301. SXN1a = (GDT * AZ) + SZN ;
  302. SXN1b = NU_SUR_E * (X + (2. * Y)) ;
  303. SXN1c = EZ * (Y - X) ;
  304. SXN1d = GDT * (SXN1b - SXN1c) ;
  305. SXN1 = SXN1e - (SXN1a * SXN1d) ;
  306. SXN1 = SXN1 / GDET1 ;
  307.  
  308. 'FINP' SXN1 SZN1 ;
  309. ************************************************************************
  310. *
  311. ************************************************************************
  312. 'DEBP' CONTX XFN1*'FLOTTANT' SXN*'FLOTTANT' DT*'FLOTTANT' PAX*'FLOTTANT' E*'FLOTTANT' C12*'FLOTTANT' C3*'FLOTTANT' ;
  313.  
  314. UNTIER = 1. / 3. ; DEUXTIER = 2. / 3. ; UNDEMI = 1. / 2. ;
  315.  
  316. A = XFN1 / (1. - XFN1) ;
  317. B = (1. + (DEUXTIER * XFN1)) / (1. - XFN1) ;
  318.  
  319. X = UNTIER * C12 * A ;
  320. Y = (DEUXTIER * C12 * B) + (UNDEMI * C3) ;
  321.  
  322. SXN1a = SXN + (DT * E * PAX) ;
  323. SXN1b = DT * E * ( X+(2.*Y) ) ;
  324. SXN1 = SXN1a / (1. + SXN1b) ;
  325.  
  326. 'FINP' SXN1 ;
  327. ************************************************************************
  328. *
  329. ************************************************************************
  330. 'DEBP' FISZ XFN1*'FLOTTANT' SXN1*'FLOTTANT' PAX*'FLOTTANT' PAZ*'FLOTTANT' EX*'FLOTTANT' NU_SUR_E*'FLOTTANT' C12*'FLOTTANT' C3*'FLOTTANT' ;
  331.  
  332. UNTIER = 1. / 3. ; DEUXTIER = 2. / 3. ; UNDEMI = 1. / 2. ;
  333.  
  334. AZ = (EX * PAZ) + (NU_SUR_E * PAX) ;
  335.  
  336. A = XFN1 / (1. - XFN1) ;
  337. B = (1. + (DEUXTIER * XFN1)) / (1. - XFN1) ;
  338.  
  339. X = UNTIER * C12 * A ;
  340. Y = (DEUXTIER * C12 * B) + (UNDEMI * C3) ;
  341.  
  342. VFZ1 = NU_SUR_E * (X + (2. * Y)) ;
  343. VFZ1 = VFZ1 + ((X - Y) * EX) ;
  344. VFZ1 = SXN1 * VFZ1 ;
  345. VEPSFZN1 = (AZ - VFZ1) / EX ;
  346.  
  347. 'FINP' VEPSFZN1 ;
  348. ************************************************************************
  349. *
  350. CONVSIG = 1E6 ;
  351. CONVTO = 24.*3600E3 ;
  352. *
  353. TFIN = 1E5 ;
  354. TMIL = TFIN / 2. ;
  355. TEND = 1.E4 ;
  356. * Le calcul est conduit jusqu a TEND seulement
  357. *
  358. * ------------------------------*
  359. * Chargement en temperature cte *
  360. * ------------------------------*
  361. TP1 = 1E-4 ;
  362. TE0 = 1320. + 273. ;
  363. TE2 = (TP1*TFIN) + TE0 ;
  364. CHTEMP = 'MANU' 'CHPO' VOL1 1 'T' 1. ;
  365. EVT = 'EVOL' 'MANU' ('PROG' 0. TFIN) ('PROG' TE1 TE1) ;
  366. CHARTEMP = 'CHAR' 'T' CHTEMP EVT ;
  367. * -------------------------------------*
  368. * Chargement en densite de fission cte *
  369. * -------------------------------------*
  370. PHIP1 = 3E14 ;
  371. PHI2 = PHIP1 * TFIN ;
  372. CHFISS = 'MANU' 'CHPO' VOL1 1 'DFIS' 1. ;
  373. EVF = 'EVOL' 'MANU' ('PROG' 0. TFIN) ('PROG' PHI1 PHI1) ;
  374. CHARFISS = 'CHAR' 'DFIS' CHFISS EVF ;
  375. *
  376. *
  377. TE = TE1 ;
  378. PHI = PHI1 ;
  379. UN = 1. ;
  380. *
  381. * --------------------------------------------------------------------
  382. * Coefficients pour la viscoplasticite, l"elasticite et la fissuration
  383. * --------------------------------------------------------------------
  384. *
  385. * Facteurs multiplicatifs dus au dopage par le Chrome
  386. *
  387. WC1 = 'TANH' ( (TA.'CR' - TA.'CR2') / TA.'CR3' ) ;
  388. WC1 = 1. + ( 0.5 * TA.'CR1' * (1. + WC1) ) ;
  389. CV = 180. / PI ;
  390. WC2 = 1. - ( 'COS' (CV * TA.'DG' / TA.'DG0') ) ;
  391. WC2 = 2. * (TA.'DG0'**TA.'M2') * WC2 ;
  392. *
  393. CP = -1. * (TA.'QP') / (TA.'R') / TE ;
  394. CP = TA.'KPUO' * ('EXP' CP) ;
  395. *
  396. C1 = -1. * (TA.'Q1') / (TA.'R') / TE ;
  397. C1 = ( (TA.'DG')**(TA.'M1') ) * ('EXP' C1) ;
  398. C1 = 0.5 * (TA.'K1') * C1 ;
  399. C1 = WC1 * C1 ;
  400. *
  401. C2 = -1. * (TA.'Q2') / (TA.'R') / TE ;
  402. C2 = WC2 * ('EXP' C2) ;
  403. C2 = 0.5 * (TA.'K2') * C2 ;
  404. *
  405. C3 = -1. * (TA.'Q3') / (TA.'R') / TE ;
  406. C3 = (TA.'A') * PHI * ('EXP' C3) ;
  407. C3 = C3 + (PHI * CP) ;
  408. *
  409. TETA = 'TANH' (TE / (TA.'H')) ;
  410. TETA = 0.5 * (TA.'BETA') * (UN + TETA) ;
  411. *
  412. GROPHI = UN + ((TA.'K') * PHI) ;
  413. *
  414. C12 = ((UN - TETA) * C1) + (TETA * C2) ;
  415. C12 = 1.5 * GROPHI * C12 ;
  416. *
  417. E = 'MAXI' EE ;
  418. NU = 'MAXI' UU ;
  419. NU_SUR_E = NU / E ;
  420. ALFA = 'MAXI' XALFA ;
  421. EX = 1./E ;
  422. EZ = 1./E ;
  423. *
  424. LZ = 'MAXI' ('EXCO' MATR16 'LZZ') ;
  425. *
  426. COEF = 0.8 ;
  427. EPSZ_PT = 3E-7 ; EPSX_PT = COEF * EPSZ_PT ;
  428. EPSTH_PT = 0. ;
  429. EPSG_PT = TA.'KGON' * TAU0 * PHI / 3. ;
  430. PAZ = EPSZ_PT - (EPSTH_PT + EPSG_PT) ;
  431. PAX = EPSX_PT - (EPSTH_PT + EPSG_PT) ;
  432. *
  433. *
  434. PRECIS = 1E-3 ;
  435. SXN = 0. ; SZN = 0. ; FN = PO ; TN = 0. ;
  436. EPSFZN = 0. ; EPSFXN = 0. ;
  437. *
  438. LTIME = 'PROG' TN ;
  439. LSX = 'PROG' SXN ; LSZ = 'PROG' SZN ;
  440. LF = 'PROG' FN ;
  441. LEPSFX = 'PROG' 0. ; LEPSFZ = 'PROG' 0. ;
  442. LEPSVX = 'PROG' 0. ; LEPSVZ = 'PROG' 0. ;
  443. *
  444. * -----------
  445. * t <= TFISS1
  446. * -----------
  447. DT = 20. ;
  448. *--
  449. 'REPE' BLO1 ;
  450. *--
  451. FN1 GDET1 = FCTNUL FN DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  452.  
  453. SXN1 SZN1 = CONT FN1 GDET1 DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  454.  
  455. LIMZ = (1. + PRECIS) * XLTR1 ;
  456. 'SI' ('>' SZN1 LIMZ) ;
  457. DT = DT * (XLTR1 - SZN) / (SZN1 - SZN) ;
  458. 'ITERER' BLO1 ;
  459. 'FINSI' ;
  460.  
  461. TN1 = TN + DT ;
  462.  
  463. EPSFZN1 = 0. ; EPSFXN1 = 0. ;
  464. *
  465. LTIME = LTIME 'ET' ('PROG' TN1) ;
  466. LF = LF 'ET' ('PROG' FN1) ;
  467. LSX = LSX 'ET' ('PROG' SXN1) ;
  468. LSZ = LSZ 'ET' ('PROG' SZN1) ;
  469. LEPSFX = LEPSFX 'ET' ('PROG' EPSFXN1) ;
  470. LEPSFZ = LEPSFZ 'ET' ('PROG' EPSFZN1) ;
  471. *
  472. TN = TN1 ; SXN = SXN1 ; SZN = SZN1 ; FN = FN1 ;
  473. EPSFZN = EPSFZN1 ; EPSFXN = EPSFXN1 ;
  474. *
  475. TESTZ = 'ABS' ((SZN1 - XLTR1) / XLTR1) ;
  476. 'SI' ('&lt;EG' TESTZ PRECIS) ;
  477. 'QUIT' BLO1 ;
  478. 'FINSI' ;
  479. *--
  480. 'FIN' BLO1 ;
  481. *--
  482. * --------------------
  483. * TFISS1 < t <= TFISS2
  484. * --------------------
  485. DT = 20. ;
  486. *
  487. SZN = 0. ;
  488. SZN1 = 0. ;
  489. *--
  490. 'REPE' BLO2 ;
  491. *--
  492. FN1 GDET1 = FCTNUL FN DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  493.  
  494. SXN1 = CONTX FN1 SXN DT PAX E C12 C3 ;
  495.  
  496. LIMX = (1. + PRECIS) * XLTR1 ;
  497. 'SI' ('>' SXN1 LIMX) ;
  498. DT = DT * (XLTR1 - SXN) / (SXN1 - SXN) ;
  499. 'ITERER' BLO2 ;
  500. 'FINSI' ;
  501.  
  502. TN1 = TN + DT ;
  503.  
  504. EPSFXN1 = 0. ;
  505. VEPSFZN1 = FISZ FN1 SXN1 PAX PAZ EX NU_SUR_E C12 C3 ;
  506. EPSFZN1 = EPSFZN + (DT * VEPSFZN1) ;
  507. *
  508. LTIME = LTIME 'ET' ('PROG' TN1) ;
  509. LF = LF 'ET' ('PROG' FN1) ;
  510. LSX = LSX 'ET' ('PROG' SXN1) ;
  511. LSZ = LSZ 'ET' ('PROG' SZN1) ;
  512. LEPSFX = LEPSFX 'ET' ('PROG' EPSFXN1) ;
  513. LEPSFZ = LEPSFZ 'ET' ('PROG' EPSFZN1) ;
  514. *
  515. TN = TN1 ; SXN = SXN1 ; SZN = SZN1 ; FN = FN1 ;
  516. EPSFZN = EPSFZN1 ; EPSFXN = EPSFXN1 ;
  517. *
  518. TESTX = 'ABS' ((SXN1 - XLTR1) / XLTR1) ;
  519. 'SI' ('&lt;EG' TESTX PRECIS) ;
  520. 'QUIT' BLO2 ;
  521. 'FINSI' ;
  522. *--
  523. 'FIN' BLO2 ;
  524. *--
  525. * -------------------
  526. * TFISS1 < TFISS2 < t
  527. * -------------------
  528. DT = 20. ;
  529. *
  530. SZN = 0. ;
  531. SZN1 = 0. ;
  532. SXN = 0. ;
  533. SXN1 = 0. ;
  534. *--
  535. 'REPE' BLO3 ;
  536. *--
  537. FN1 GDET1 = FCTNUL FN DT SXN SZN PAX PAZ EX EZ NU_SUR_E C12 C3 ;
  538.  
  539. VEPSFZN1 = PAZ ;
  540. EPSFZN1 = EPSFZN + (DT * VEPSFZN1) ;
  541.  
  542. VEPSFXN1 = PAX ;
  543. EPSFXN1 = EPSFXN + (DT * VEPSFXN1) ;
  544.  
  545. TN1 = TN + DT ;
  546. *
  547. 'SI' ('>' TN1 TEND) ;
  548. 'QUIT' BLO3 ;
  549. 'FINSI' ;
  550. *
  551. LTIME = LTIME 'ET' ('PROG' TN1) ;
  552. LF = LF 'ET' ('PROG' FN1) ;
  553. LSX = LSX 'ET' ('PROG' SXN1) ;
  554. LSZ = LSZ 'ET' ('PROG' SZN1) ;
  555. LEPSFX = LEPSFX 'ET' ('PROG' EPSFXN1) ;
  556. LEPSFZ = LEPSFZ 'ET' ('PROG' EPSFZN1) ;
  557. *
  558. TN = TN1 ; SXN = SXN1 ; SZN = SZN1 ; FN = FN1 ;
  559. EPSFZN = EPSFZN1 ; EPSFXN = EPSFXN1 ;
  560. *--
  561. 'FIN' BLO3 ;
  562. *--
  563. * -------------------
  564. *
  565. EV_SX ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'SIGX(MPa)' (LSX/CONVSIG);
  566. EV_SZ ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'SIGZ(MPa)' (LSZ/CONVSIG);
  567. EV_F ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'Porosite' LF ;
  568. EV_EPSFX ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'Def Fiss X' LEPSFX ;
  569. EV_EPSFZ ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'Def Fiss Z' LEPSFZ ;
  570. EV_WX ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'WX(m)' (LZ*LEPSFX);
  571. EV_WZ ='EVOL' 'ROUG' 'MANU' 'Temps(s)' LTIME 'WZ(m)' (LZ*LEPSFZ);
  572. EV_FISX ='EVOL' 'ROUG' 'MANU' 'WX(m)' (LZ*LEPSFX) 'SIGX(MPa)' (LSX/CONVSIG);
  573. EV_FISZ ='EVOL' 'ROUG' 'MANU' 'WZ(m)' (LZ*LEPSFZ) 'SIGZ(MPa)' (LSZ/CONVSIG);
  574. * ---------------------------------*
  575. * Chargement en deplacement impose *
  576. * ---------------------------------*
  577. EPS_TFIN = EPSZ_PT * TFIN ;
  578. DEPZ = 'DEPI' CLZH 1 ;
  579. DEPX = 'DEPI' CLXD 1 ;
  580. LDEPX = 'PROG' 0 TFIN ;
  581. LDEPY = ('PROG' 0 EPS_TFIN) * HS2 ;
  582. 'TITR' 'DEPLACEMENT IMPOSE' ;
  583. EVDEP = 'EVOL' 'MANU' 'Temps (s)' LDEPX 'Dep (m)' LDEPY ;
  584. 'SI' DESSI ; 'DESS' EVDEP ; 'FINSI' ;
  585. CHARMECZ = 'CHAR' 'DIMP' DEPZ EVDEP ;
  586. CHARMECX = 'CHAR' 'DIMP' DEPX (COEF*EVDEP) ;
  587. CHARMECA = CHARMECZ 'ET' CHARMECX ;
  588. *-------------------*
  589. * Instants calcules *
  590. *-------------------*
  591. LIST1 = 'PROG' 0. 'PAS' 200. TEND ;
  592. *
  593. * ---------------------------------------*
  594. * Variables internes initiales 'PORO'=PO *
  595. * ---------------------------------------*
  596. VAR00 = 'ZERO' MODL1 'VARINTER' ;
  597. VAR01 = 'MANU' 'CHML' MODL1 'PORO' PO 'TYPE' 'VARIABLES INTERNES' 'STRESSES' ;
  598. VAR0 = VAR00 + VAR01 ;
  599. *
  600. CHARTOT = CHARMECA 'ET' CHARTEMP 'ET' CHARFISS ;
  601. *
  602. TAB1 = TABLE ;
  603. TAB1.'VARIABLES_INTERNES' = TABLE ;
  604. TAB1.'BLOCAGES_MECANIQUES' = CLT ;
  605. TAB1.'MODELE' = MODL1 ;
  606. TAB1.'CHARGEMENT' = CHARTOT ;
  607. TAB1.'VARIABLES_INTERNES' . 0 = VAR0 ;
  608. TAB1.'CARACTERISTIQUES' = MATR1 ;
  609. TAB1.'TEMPS_CALCULES' = LIST1 ;
  610. TAB1.'TEMPS_SAUVES' = LIST1 ;
  611. *
  612. TMASAU=table;
  613. tab1 . 'MES_SAUVEGARDES'=TMASAU;
  614. TMASAU .'DEFTO'=VRAI;
  615. TMASAU .'DEFIN'=VRAI;
  616. PASAPAS TAB1 ;
  617. *
  618. *
  619. * -----------------------*
  620. * Controle des resultats *
  621. * -----------------------*
  622. TT = TAB1 . 'TEMPS' ;
  623. SS = TAB1 . 'CONTRAINTES' ;
  624. VV = TAB1 . 'VARIABLES_INTERNES' ;
  625. IN = TAB1 . 'DEFORMATIONS_INELASTIQUES' ;
  626. NCONT = 'DIME' TAB1 . 'CONTRAINTES' ;
  627. *
  628. LZEIT = 'PROG' ;
  629. LSIGX = 'PROG' ;
  630. LSIGZ = 'PROG' ;
  631. LW1 = 'PROG' ;
  632. LW2 = 'PROG' ;
  633. LW3 = 'PROG' ;
  634. LPORO = 'PROG' ;
  635. LEFX = 'PROG' ;
  636. LEFZ = 'PROG' ;
  637. *
  638. MI = 'MOTS' 'EIXX' 'EIYY' 'EIZZ' 'GIXY' 'GIXZ' 'GIYZ' ;
  639. MV = 'MOTS' 'EVXX' 'EVYY' 'EVZZ' 'GVXY' 'GVXZ' 'GVYZ' ;
  640. ME = 'MOTS' 'EPXX' 'EPYY' 'EPZZ' 'GAXY' 'GAXZ' 'GAYZ' ;
  641. *
  642. *
  643. 'REPE' BLOC NCONT ;
  644. *
  645. IND = &BLOC - 1 ;
  646. ZEIT = TT.IND ;
  647. *
  648. SIG = SS.IND ;
  649. SIG = 'RTENS' SIG MODL1 VX2 (0 1 0) ;
  650. SIGX = 'EXCO' SIG 'SMXX' ;
  651. SIGX_MAX = 'MAXI' SIGX ; SIGX_MIN = 'MINI' SIGX ;
  652. SIGZ = 'EXCO' SIG 'SMZZ' ;
  653. SIGZ_MAX = 'MAXI' SIGZ ; SIGZ_MIN = 'MINI' SIGZ ;
  654. *
  655. VI = VV.IND ;
  656. EI = IN.IND ;
  657. EI = 'CHANG' 'TYPE' ('EXCO' MI EI ME) 'DEFORMATIONS' ;
  658. *
  659. EPS_VP = 'CHANG' 'TYPE' ('EXCO' MV VI ME) 'DEFORMATIONS' ;
  660. DIF = EI - EPS_VP ;
  661. DIF = 'RTENS' DIF MODL1 VX2 (0 1 0) ;
  662. *
  663. PORO = 'MAXI' ('EXCO' VI 'PORO') ;
  664. W1 = 'MAXI' ('EXCO' VI 'W1') ;
  665. W2 = 'MAXI' ('EXCO' VI 'W2') ;
  666. W3 = 'MAXI' ('EXCO' VI 'W3') ;
  667. *
  668. LZEIT = LZEIT 'ET' ('PROG' ZEIT) ;
  669. LSIGX = LSIGX 'ET' ('PROG' SIGX_MAX) ;
  670. LSIGZ = LSIGZ 'ET' ('PROG' SIGZ_MAX) ;
  671. LW1 = LW1 'ET' ('PROG' W1) ;
  672. LW2 = LW2 'ET' ('PROG' W2) ;
  673. LW3 = LW3 'ET' ('PROG' W3) ;
  674. LEFX = LEFX 'ET' ('PROG' ('MAXI' ('EXCO' DIF 'EPXX')));
  675. LEFZ = LEFZ 'ET' ('PROG' ('MAXI' ('EXCO' DIF 'EPZZ')));
  676. LPORO = LPORO 'ET' ('PROG' PORO) ;
  677. *
  678. 'FIN' BLOC ;
  679. *
  680. * ----------------------
  681. * CONTROLE DES RESULTATS
  682. * ----------------------
  683. LSOUS = 'PROG' 500 'PAS' 500 6000 7000 'PAS' 500 (TEND - 500) ;
  684. UN = 'PROG' ('DIME' LSOUS)*1 ;
  685. *
  686. SX_CAL = 'IPOL' LSOUS LZEIT LSIGX; SX_ANA = 'IPOL' LSOUS LTIME LSX ;
  687. SZ_CAL = 'IPOL' LSOUS LZEIT LSIGZ; SZ_ANA = 'IPOL' LSOUS LTIME LSZ ;
  688. PO_CAL = 'IPOL' LSOUS LZEIT LPORO; PO_ANA = 'IPOL' LSOUS LTIME LF ;
  689. EFX_CAL = 'IPOL' LSOUS LZEIT LEFX ; EFX_ANA = 'IPOL' LSOUS LTIME LEPSFX;
  690. EFZ_CAL = 'IPOL' LSOUS LZEIT LEFZ ; EFZ_ANA = 'IPOL' LSOUS LTIME LEPSFZ;
  691. *
  692. PREX = 5E-3 ;
  693. T_SX = (SX_ANA - SX_CAL) / (SX_ANA + UN) ;
  694. T_SX = 'MAXI' ('ABS' T_SX) ;
  695. 'SI' ( T_SX '&lt;EG' PREX ) ;
  696. 'ERRE' 0 ;
  697. 'SINO' ;
  698. 'MESS' 'ERREUR MAXIMALE CONTRAINTE SELON X = ' T_SX ' > ' PREX ;
  699. 'ERRE' 5 ;
  700. 'FINS' ;
  701. *
  702. T_SZ = (SZ_ANA - SZ_CAL) / (SZ_ANA + UN) ;
  703. T_SZ = 'MAXI' ('ABS' T_SZ) ;
  704. 'SI' ( T_SZ '&lt;EG' PREX ) ;
  705. 'ERRE' 0 ;
  706. 'SINO' ;
  707. 'MESS' 'ERREUR MAXIMALE CONTRAINTE SELON Z = ' T_SZ ' > ' PREX ;
  708. 'ERRE' 5 ;
  709. 'FINS' ;
  710. *
  711. PREX = 1E-4 ;
  712. T_LF = (PO_ANA - PO_CAL) / PO_ANA ;
  713. T_LF = 'MAXI' ('ABS' T_LF) ;
  714. 'SI' ( T_LF '&lt;EG' PREX ) ;
  715. 'ERRE' 0 ;
  716. 'SINO' ;
  717. 'MESS' 'ERREUR MAXIMALE POROSITE = ' T_LF ' > ' PREX ;
  718. 'ERRE' 5 ;
  719. 'FINS' ;
  720. *
  721. WRUPT = (2.*XGFTR1) / XLTR1 ;
  722. ERUPT = WRUPT / LZ ;
  723. NONZERO = (ERUPT / 1E6) * UN ;
  724. PREX = 5E-2 ;
  725. T_FX = (EFX_ANA - EFX_CAL) / (EFX_ANA + NONZERO) ;
  726. T_FX = 'MAXI' ('ABS' T_FX) ;
  727. 'SI' ( T_FX '&lt;EG' PREX ) ;
  728. 'ERRE' 0 ;
  729. 'SINO' ;
  730. 'MESS' 'ERREUR MAXIMALE DEFORMATION DE FISSURATION SELON X = ' T_FX ' > ' PREX ;
  731. 'ERRE' 5 ;
  732. 'FINS' ;
  733. *
  734. PREX = 5E-2 ;
  735. T_FZ = (EFZ_ANA - EFZ_CAL) / (EFZ_ANA + NONZERO) ;
  736. T_FZ = 'MAXI' ('ABS' T_FZ) ;
  737. 'SI' ( T_FZ '&lt;EG' PREX ) ;
  738. 'ERRE' 0 ;
  739. 'SINO' ;
  740. 'MESS' 'ERREUR MAXIMALE DEFORMATION DE FISSURATION SELON Z = ' T_FZ ' > ' PREX ;
  741. 'ERRE' 5 ;
  742. 'FINS' ;
  743. *
  744. *
  745. TAB = 'TABLE' ;
  746. TAB . 'TITRE' = 'TABLE' ;
  747. TAB . 'TITRE' . 1 = 'Solution Analytique' ;
  748. TAB . 'TITRE' . 2 = 'Solution Calculee' ;
  749. *
  750. *
  751. EVSIGX = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'SIGX(MPa)' (LSIGX/CONVSIG);
  752. EVSIGZ = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'SIGZ(MPa)' (LSIGZ/CONVSIG);
  753. 'SI' DESSI ;
  754. 'TITR' 'CONTRAINTE DANS LA DEUXIEME DIRECTION DE FISSURATION' ;
  755. 'DESS' (EV_SX 'ET' EVSIGX) TAB 'LEGE' ;
  756. 'TITR' 'CONTRAINTE DANS LA PREMIERE DIRECTION DE FISSURATION' ;
  757. 'DESS' (EV_SZ 'ET' EVSIGZ) TAB 'LEGE' ;
  758. 'FINSI' ;
  759. *
  760. EVPORO = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'Porosite' LPORO ;
  761. 'SI' DESSI ;
  762. 'TITR' 'POROSITE' ;
  763. 'DESS' (EV_F 'ET' EVPORO) TAB 'LEGE' ;
  764. 'FINSI' ;
  765. *
  766. EVWX = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'WX(m)' LW2 ;
  767. EVWZ = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'WZ(m)' LW1 ;
  768. 'SI' DESSI ;
  769. 'TITR' 'OUVERTURE DANS LA DEUXIEME DIRECTION DE FISSURATION' ;
  770. 'DESS' (EV_WX 'ET' EVWX) TAB 'LEGE' ;
  771. 'TITR' 'OUVERTURE DANS LA PREMIERE DIRECTION DE FISSURATION' ;
  772. 'DESS' (EV_WZ 'ET' EVWZ) TAB 'LEGE' ;
  773. 'FINSI' ;
  774. *
  775. EVEPSFX = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'Def Fiss X' LEFX ;
  776. EVEPSFZ = 'EVOL' 'MANU' 'Temps (s)' LZEIT 'Def Fiss Z' LEFZ ;
  777. 'SI' DESSI ;
  778. 'TITR' 'DEFORMATION DE FISS. DANS LA DIRECTION DE FISS. N_2' ;
  779. 'DESS' (EV_EPSFX 'ET' EVEPSFX) TAB 'LEGE' ;
  780. 'TITR' 'DEFORMATION DE FISS. DANS LA DIRECTION DE FISS. N_1' ;
  781. 'DESS' (EV_EPSFZ 'ET' EVEPSFZ) TAB 'LEGE' ;
  782. 'FINSI' ;
  783. *
  784. EVFISX = 'EVOL' 'MANU' 'WX(m)' LW2 'SIGX(MPa)' (LSIGX/CONVSIG) ;
  785. EVFISZ = 'EVOL' 'MANU' 'WZ(m)' LW1 'SIGZ(MPa)' (LSIGZ/CONVSIG) ;
  786. 'SI' DESSI ;
  787. 'TITR' 'RELATION CONTR./OUVERTURE DANS LA DIRECTION DE FISS. N_2' ;
  788. 'DESS' (EV_FISX 'ET' EVFISX) TAB 'LEGE' ;
  789. 'TITR' 'RELATION CONTR./OUVERTURE DANS LA DIRECTION DE FISS. N_1' ;
  790. 'DESS' (EV_FISZ 'ET' EVFISZ) TAB 'LEGE' ;
  791. 'FINSI' ;
  792. *
  793. 'FIN';
  794.  
  795.  
  796.  

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