Télécharger idendo.eso

Retour à la liste

Numérotation des lignes :

idendo
  1. C IDENDO SOURCE MB234859 26/01/19 21:15:21 12454
  2. SUBROUTINE IDENDO (MFR,TABOBL,TABFAC,JGOBL,JGFAC,ITA,IPLAC,IRET)
  3. *--------------------------------------------------------------------*
  4. * Noms de composantes de materiaux endommageables *
  5. *--------------------------------------------------------------------*
  6. * *
  7. * ENTREES: *
  8. * ------- *
  9. * MFR numero de formulation *
  10. * TABOBL Tableau des mots OBLIGATOIRES *
  11. * TABFAC Tableau des mots FACULTATIFS *
  12. * JGOBL Taille utilisee du tableau des mots OBLIGATOIRES *
  13. * JGFAC Taille utilisee du tableau des mots FACULTATIFS *
  14. * IPLAC numero du materiau dans MODEND *
  15. * *
  16. * SORTIE : *
  17. * ------- *
  18. * *
  19. * IRET : 0 SI PROBLEME *
  20. * *
  21. *--------------------------------------------------------------------*
  22. *
  23. IMPLICIT INTEGER(I-N)
  24. IMPLICIT REAL*8(A-H,O-Z)
  25.  
  26.  
  27. -INC PPARAM
  28. -INC CCOPTIO
  29. CHARACTER*8 TABOBL(ITA),TABFAC(ITA)
  30.  
  31. IRET=1
  32. *
  33. *--------------------------------------------------------------------*
  34. * *
  35. * T Y P E E N D O M M A G E A B L E *
  36. * *
  37. *--------------------------------------------------------------------*
  38. IF (IPLAC.EQ.1) THEN
  39. *
  40. * MODELE ENDOMMAGEMENT SCALAIRE DE MAZARS
  41. *
  42. JGM0=JGOBL
  43. JGOBL=JGM0+6
  44. TABOBL(JGM0+1)= 'BETA'
  45. TABOBL(JGM0+2)= 'ACOM'
  46. TABOBL(JGM0+3)= 'BCOM'
  47. TABOBL(JGM0+4)= 'ATRA'
  48. TABOBL(JGM0+5)= 'BTRA'
  49. TABOBL(JGM0+6)= 'KTR0'
  50.  
  51. ELSE IF (IPLAC.EQ.2) THEN
  52. *
  53. * MODELE ENDOMMAGEMENT UNILATERAL LA BORDERIE
  54. *
  55. JGM0=JGOBL
  56. JGOBL=JGM0+9
  57. TABOBL(JGM0+1)= 'YS1 '
  58. TABOBL(JGM0+2)= 'YS2 '
  59. TABOBL(JGM0+3)= 'A1 '
  60. TABOBL(JGM0+4)= 'A2 '
  61. TABOBL(JGM0+5)= 'B1 '
  62. TABOBL(JGM0+6)= 'B2 '
  63. TABOBL(JGM0+7)= 'BET1'
  64. TABOBL(JGM0+8)= 'BET2'
  65. TABOBL(JGM0+9)= 'SIGF'
  66. ELSE IF (IPLAC.EQ.3) THEN
  67. *
  68. * MODELE ROTATING_CRACK
  69. *
  70. JGM0=JGOBL
  71. JGOBL=JGM0+2
  72. TABOBL(JGM0+1)= 'EPCR'
  73. TABOBL(JGM0+2)= 'MUP '
  74. ELSE IF (IPLAC.EQ.4) THEN
  75. *
  76. * MODELE SIC_SIC
  77. *
  78. JGM0=JGOBL
  79. JGOBL=JGM0+15
  80. TABOBL(JGM0+1)= 'G1DC'
  81. TABOBL(JGM0+2)= 'G1Y0'
  82. TABOBL(JGM0+3)= 'G1YC'
  83. TABOBL(JGM0+4)= 'G1P'
  84. TABOBL(JGM0+5)= 'G2DC'
  85. TABOBL(JGM0+6)= 'G2Y0'
  86. TABOBL(JGM0+7)= 'G2YC'
  87. TABOBL(JGM0+8)= 'G2P'
  88. TABOBL(JGM0+9)= 'G3DC'
  89. TABOBL(JGM0+10)= 'G3Y0'
  90. TABOBL(JGM0+11)= 'G3YC'
  91. TABOBL(JGM0+12)= 'G3P'
  92. TABOBL(JGM0+13)= 'H23'
  93. TABOBL(JGM0+14)= 'H13'
  94. TABOBL(JGM0+15)= 'H12'
  95.  
  96. JGM0=JGFAC
  97. JGFAC=JGM0+3
  98. TABFAC(JGM0+1)= 'A12'
  99. TABFAC(JGM0+2)= 'A23'
  100. TABFAC(JGM0+3)= 'A13'
  101. *
  102. ELSE IF (IPLAC.EQ.5 .OR. IPLAC .EQ. 7) THEN
  103. *
  104. * MODELE ENDOMMAGEMENT MICROPLANS
  105. *
  106. JGM0=JGOBL
  107. JGOBL=JGM0+5
  108. TABOBL(JGM0+1)= 'KTR0'
  109. TABOBL(JGM0+2)= 'BTRA'
  110. TABOBL(JGM0+3)= 'FPC '
  111. TABOBL(JGM0+4)= 'MP '
  112. TABOBL(JGM0+5)= 'ALF1'
  113. *
  114. ELSE IF (IPLAC.EQ.6) THEN
  115. *
  116. * MODELE ENDOMMAGEMENT UNILATERAL LA BORDERIE
  117. * + VISCOSITE J.F. DUBE
  118. *
  119. JGM0=JGOBL
  120. JGOBL=JGM0+13
  121. TABOBL(JGM0+1)= 'YS1 '
  122. TABOBL(JGM0+2)= 'YS2 '
  123. TABOBL(JGM0+3)= 'A1 '
  124. TABOBL(JGM0+4)= 'A2 '
  125. TABOBL(JGM0+5)= 'B1 '
  126. TABOBL(JGM0+6)= 'B2 '
  127. TABOBL(JGM0+7)= 'BET1'
  128. TABOBL(JGM0+8)= 'BET2'
  129. TABOBL(JGM0+9)= 'SIGF'
  130. TABOBL(JGM0+10)= 'M1 '
  131. TABOBL(JGM0+11)= 'M2 '
  132. TABOBL(JGM0+12)= 'ALP1'
  133. TABOBL(JGM0+13)= 'ALP2'
  134. * BCN
  135. ELSE IF (IPLAC.EQ.8) THEN
  136. *
  137. * Modified Von mises model
  138. *
  139. JGM0=JGOBL
  140. JGOBL=JGM0+5
  141. TABOBL(JGM0+1)= 'Y0 '
  142. TABOBL(JGM0+2)= 'B1 '
  143. TABOBL(JGM0+3)= 'B2 '
  144. TABOBL(JGM0+4)= 'RATI'
  145. TABOBL(JGM0+5)= 'LOI '
  146. * BCN
  147.  
  148. * RDj
  149. ELSE IF (IPLAC.EQ.9) THEN
  150. *
  151. * MODELE ENDOMMAGEMENT SCALAIRE AVEC DEFORMATION ANELASTIQUE
  152. * CRUSH_CRACK
  153. JGM0=JGOBL
  154. JGOBL=JGM0+9
  155. TABOBL(JGM0+1)= 'KCO0'
  156. TABOBL(JGM0+2)= 'KTR0'
  157. TABOBL(JGM0+3)= 'ACRU'
  158. TABOBL(JGM0+4)= 'BCRU'
  159. TABOBL(JGM0+5)= 'ACRA'
  160. TABOBL(JGM0+6)= 'BCRA'
  161. TABOBL(JGM0+7)= 'ECOM'
  162. TABOBL(JGM0+8)= 'ECOB'
  163. TABOBL(JGM0+9)= 'ETRA'
  164. * RDj
  165.  
  166. * CCd
  167. ELSE IF (IPLAC.EQ.10) THEN
  168. *
  169. *+++++++++++++++++++++++++++++++++++
  170. * MODELE DAMAGE_TENSION&COMPRESSION = DAMAGE_TC
  171. *+++++++++++++++++++++++++++++++++++
  172. *
  173. * COMPULSORY CARACTERISTICS
  174. *
  175. JGM0=JGOBL
  176. JGOBL=JGM0+15
  177. TABOBL(JGM0+1)='HLEN'
  178. TABOBL(JGM0+2)='GVAL'
  179. TABOBL(JGM0+3)='FTUL'
  180. TABOBL(JGM0+4)='REDC'
  181. TABOBL(JGM0+5)='FC01'
  182. TABOBL(JGM0+6)='RT45'
  183. TABOBL(JGM0+7)='FCU1'
  184. TABOBL(JGM0+8)='STRU'
  185. TABOBL(JGM0+9)='EXTP'
  186. TABOBL(JGM0+10)='STRP'
  187. TABOBL(JGM0+11)='EXT1'
  188. TABOBL(JGM0+12)='STR1'
  189. TABOBL(JGM0+13)='EXT2'
  190. TABOBL(JGM0+14)='STR2'
  191. TABOBL(JGM0+15)='NCRI'
  192. *
  193. * FACULTATIVE CARACTERISTICS
  194. *
  195.  
  196. JGM0=JGFAC
  197. JGFAC=JGM0+10
  198.  
  199. C WARNING !!!!!!!!!! RHO et ALPH doivent etre a la fin! voir defmat!!!
  200. DO ie1=1,JGM0
  201. TABFAC(JGFAC+1-ie1)=TABFAC(JGM0+1-ie1)
  202. ENDDO
  203. TABFAC(1) ='TANB'
  204. TABFAC(2) ='BPLC'
  205. TABFAC(3) ='TR0T'
  206. TABFAC(4) ='TR0C'
  207. TABFAC(5) ='TRUC'
  208. TABFAC(6) ='AVAT'
  209. TABFAC(7) ='BVAT'
  210. TABFAC(8) ='AVAC'
  211. TABFAC(9) ='BVAC'
  212. TABFAC(10)='DVOL'
  213. *
  214. * CCd
  215. *
  216. ELSE IF (IPLAC.EQ.11) THEN
  217. *
  218. * MODELE SICSCAL
  219. *
  220. JGM0=JGFAC
  221. JGFAC=JGM0+44
  222. TABFAC(JGM0+1)= 'H1N'
  223. TABFAC(JGM0+2)= 'H1HP'
  224. TABFAC(JGM0+3)= 'H1P'
  225. TABFAC(JGM0+4)= 'H2N'
  226. TABFAC(JGM0+5)= 'H2HP'
  227. TABFAC(JGM0+6)= 'H2P'
  228. TABFAC(JGM0+7)= 'H3N'
  229. TABFAC(JGM0+8)= 'H3P'
  230. TABFAC(JGM0+9)= 'Y0N1'
  231. TABFAC(JGM0+10)='Y0N2'
  232. TABFAC(JGM0+11)='Y0N3'
  233. TABFAC(JGM0+12)= 'YCN1'
  234. TABFAC(JGM0+13)= 'YCN2'
  235. TABFAC(JGM0+14)= 'YCN3'
  236. TABFAC(JGM0+15)='Y0T1'
  237. TABFAC(JGM0+16)='Y0T2'
  238. TABFAC(JGM0+17)='Y0T3'
  239. TABFAC(JGM0+18)='YCT1'
  240. TABFAC(JGM0+19)='YCT2'
  241. TABFAC(JGM0+20)='YCT3'
  242. TABFAC(JGM0+21)='DCT1'
  243. TABFAC(JGM0+22)='DCT2'
  244. TABFAC(JGM0+23)='DCT3'
  245. TABFAC(JGM0+24)='DCN1'
  246. TABFAC(JGM0+25)='DCN2'
  247. TABFAC(JGM0+26)='DCN3'
  248. TABFAC(JGM0+27)='PN1'
  249. TABFAC(JGM0+28)='PN2'
  250. TABFAC(JGM0+29)='PN3'
  251. TABFAC(JGM0+30)='PT1'
  252. TABFAC(JGM0+31)='PT2'
  253. TABFAC(JGM0+32)='PT3'
  254. TABFAC(JGM0+33)='B'
  255. TABFAC(JGM0+34)='DTAL'
  256. TABFAC(JGM0+35)='TER0'
  257. TABFAC(JGM0+36)='SIF1'
  258. TABFAC(JGM0+37)='SIF2'
  259. TABFAC(JGM0+38)='SIF3'
  260. TABFAC(JGM0+39)='AIF1'
  261. TABFAC(JGM0+40)='AIF2'
  262. TABFAC(JGM0+41)='AIF3'
  263. TABFAC(JGM0+42)='ETA1'
  264. TABFAC(JGM0+43)='ETA2'
  265. TABFAC(JGM0+44)='ETA3'
  266. *
  267. ELSE IF (IPLAC.EQ.12) THEN
  268. *
  269. * MODELE SICTENS
  270. *
  271. JGM0=JGFAC
  272. JGFAC=JGM0+51
  273. TABFAC(JGM0+1)= 'H1N'
  274. TABFAC(JGM0+2)= 'H1HP'
  275. TABFAC(JGM0+3)= 'H1P'
  276. TABFAC(JGM0+4)= 'H2N'
  277. TABFAC(JGM0+5)= 'H2HP'
  278. TABFAC(JGM0+6)= 'H2P'
  279. TABFAC(JGM0+7)= 'H3N'
  280. TABFAC(JGM0+8)= 'H3P'
  281. TABFAC(JGM0+9)= 'H4N'
  282. TABFAC(JGM0+10)= 'H4HP'
  283. TABFAC(JGM0+11)= 'H4P'
  284. TABFAC(JGM0+12)= 'Y01'
  285. TABFAC(JGM0+13)='Y02'
  286. TABFAC(JGM0+14)='Y03'
  287. TABFAC(JGM0+15)='Y04'
  288. TABFAC(JGM0+16)='Y05'
  289. TABFAC(JGM0+17)= 'YC1'
  290. TABFAC(JGM0+18)= 'YC2'
  291. TABFAC(JGM0+19)= 'YC3'
  292. TABFAC(JGM0+20)= 'YC4'
  293. TABFAC(JGM0+21)= 'YC5'
  294. TABFAC(JGM0+22)='DC1'
  295. TABFAC(JGM0+23)='DC2'
  296. TABFAC(JGM0+24)='DC3'
  297. TABFAC(JGM0+25)='DC4'
  298. TABFAC(JGM0+26)='DC5'
  299. TABFAC(JGM0+27)='PY1'
  300. TABFAC(JGM0+28)='PY2'
  301. TABFAC(JGM0+29)='PY3'
  302. TABFAC(JGM0+30)='PY4'
  303. TABFAC(JGM0+31)='PY5'
  304. TABFAC(JGM0+32)='B1'
  305. TABFAC(JGM0+33)='B2'
  306. TABFAC(JGM0+34)='B3'
  307. TABFAC(JGM0+35)='DTAL'
  308. TABFAC(JGM0+36)='TER0'
  309. TABFAC(JGM0+37)='SIF1'
  310. TABFAC(JGM0+38)='SIF2'
  311. TABFAC(JGM0+39)='SIF3'
  312. TABFAC(JGM0+40)='SIF4'
  313. TABFAC(JGM0+41)='SIF5'
  314. TABFAC(JGM0+42)='AIF1'
  315. TABFAC(JGM0+43)='AIF2'
  316. TABFAC(JGM0+44)='AIF3'
  317. TABFAC(JGM0+45)='AIF4'
  318. TABFAC(JGM0+46)='AIF5'
  319. TABFAC(JGM0+47)='ETA1'
  320. TABFAC(JGM0+48)='ETA2'
  321. TABFAC(JGM0+49)='ETA3'
  322. TABFAC(JGM0+50)='ETA4'
  323. TABFAC(JGM0+51)='ETA5'
  324. *
  325. ELSE IF (IPLAC.EQ.13) THEN
  326. *
  327. * MODELE DESMORAT
  328. *
  329. JGM0=JGOBL
  330. JGOBL=JGM0+6
  331. TABOBL(JGM0+1)='K0'
  332. TABOBL(JGM0+2)='A'
  333. TABOBL(JGM0+3)='a'
  334. TABOBL(JGM0+4)='etaC'
  335. TABOBL(JGM0+5)='etaT'
  336. TABOBL(JGM0+6)='Dc'
  337. JGM0=JGFAC
  338. JGFAC=JGM0+1
  339. TABFAC(JGM0+1)='k'
  340. *
  341. ELSE IF (IPLAC.EQ.14) THEN
  342. *
  343. * MODELE ENDOMMAGEMENT FATIGUE 'FATSIN'
  344. *
  345. JGM0=JGOBL
  346. JGOBL=JGM0+8
  347. TABOBL(JGM0+1)= 'KTR0'
  348. TABOBL(JGM0+2)= 'BETA'
  349. TABOBL(JGM0+3)= 'LOI '
  350. * pour la loi "L2R"
  351. TABOBL(JGM0+4)= 'C '
  352. TABOBL(JGM0+5)= 'ALFA'
  353. * pour la loi "L3R"
  354. TABOBL(JGM0+6)= 'ALF1'
  355. TABOBL(JGM0+7)= 'ALF2'
  356. TABOBL(JGM0+8)= 'ALF3'
  357. ELSE IF (IPLAC.EQ.15) THEN
  358. *
  359. * MODELE ENDOMMAGEMENT 'RICRAG'
  360. *
  361. JGM0=JGOBL
  362. JGOBL=JGM0+5
  363. TABOBL(JGM0+1)='FT '
  364. TABOBL(JGM0+2)='ALIN'
  365. TABOBL(JGM0+3)='GAM1'
  366. TABOBL(JGM0+4)='A1 '
  367. TABOBL(JGM0+5)='ALDI'
  368.  
  369. C +BR
  370. ELSE IF (IPLAC.EQ.16) THEN
  371. *
  372. * MODELE ENDOMMAGEMENT 'GLRC_DM'
  373. *
  374. JGM0=JGOBL
  375. JGOBL=JGM0+7
  376. TABOBL(JGM0+1)='YOUF'
  377. TABOBL(JGM0+2)='NUF '
  378. TABOBL(JGM0+3)='GAMT'
  379. TABOBL(JGM0+4)='GAMC'
  380. TABOBL(JGM0+5)='GAMF'
  381. TABOBL(JGM0+6)='SEUI'
  382. TABOBL(JGM0+7)='ALF '
  383.  
  384. ELSE IF (IPLAC.EQ.17) THEN
  385. *
  386. * MODELE ENDOMMAGEMENT 'RICBET'
  387. *
  388. JGM0=JGOBL
  389. JGOBL=JGM0+13
  390. TABOBL(JGM0+ 1)= 'FT '
  391. TABOBL(JGM0+ 2)= 'ALDI'
  392. TABOBL(JGM0+ 3)= 'GAM1'
  393. TABOBL(JGM0+ 4)= 'A1 '
  394. TABOBL(JGM0+ 5)= 'SREF'
  395. TABOBL(JGM0+ 6)= 'AF '
  396. TABOBL(JGM0+ 7)= 'BF '
  397. TABOBL(JGM0+ 8)= 'AG '
  398. TABOBL(JGM0+ 9)= 'BG '
  399. TABOBL(JGM0+10)= 'AC '
  400. TABOBL(JGM0+11)= 'BC '
  401. TABOBL(JGM0+12)= 'SIGU'
  402. TABOBL(JGM0+13)= 'FC '
  403.  
  404. ELSE IF (IPLAC.EQ.18) THEN
  405. *
  406. * MODELE ENDOMMAGEMENT 'RICCOQ'
  407. *
  408. JGM0=JGOBL
  409. JGOBL=JGM0+4
  410. TABOBL(JGM0+1)='FT '
  411. TABOBL(JGM0+2)='EPUT'
  412. TABOBL(JGM0+3)='FC '
  413. TABOBL(JGM0+4)='EPUC'
  414.  
  415. ELSE IF (IPLAC.EQ.19) THEN
  416. *
  417. * MODELE ENDOMMAGEMENT 'CONCYC'
  418. *
  419. JGM0=JGOBL
  420. JGOBL=JGM0+6
  421. TABOBL(JGM0+1)='NEND'
  422. TABOBL(JGM0+2)='SIGT'
  423. TABOBL(JGM0+3)='ATRA'
  424. TABOBL(JGM0+4)='BTRA'
  425. TABOBL(JGM0+5)='QP '
  426. TABOBL(JGM0+6)='CF '
  427.  
  428. C -BR
  429. ELSE IF (IPLAC.EQ.20) THEN
  430. *
  431. * MODELE ENDOMMAGEMENT 'PBEFEM'
  432. *
  433. JGM0=JGOBL
  434. JGOBL=JGM0+14
  435. TABOBL(JGM0+1) ='ALP1'
  436. TABOBL(JGM0+2) ='BET1'
  437. TABOBL(JGM0+3) ='AD1 '
  438. TABOBL(JGM0+4) ='AD2 '
  439. TABOBL(JGM0+5) ='AD3 '
  440. TABOBL(JGM0+6) ='AD4 '
  441. TABOBL(JGM0+7) ='FT '
  442. TABOBL(JGM0+8) ='XZ0 '
  443. TABOBL(JGM0+9) ='XNX '
  444. TABOBL(JGM0+10) ='XNY '
  445. TABOBL(JGM0+11) ='UCRT'
  446. TABOBL(JGM0+12) ='IND1'
  447. TABOBL(JGM0+13) ='XIE'
  448. TABOBL(JGM0+14) ='YIE'
  449.  
  450. ELSE IF (IPLAC.EQ.21) THEN
  451. *
  452. * MODELE ENDOMMAGEMENT SCALAIRE DE MAZARS RTC
  453. *
  454. JGM0=JGOBL
  455. JGOBL=JGM0+8
  456. TABOBL(JGM0+ 1)= 'BETA'
  457. TABOBL(JGM0+ 2)= 'FTRA'
  458. TABOBL(JGM0+ 3)= 'FCOM'
  459. TABOBL(JGM0+ 4)= 'KPIC'
  460. TABOBL(JGM0+ 5)= 'GFC'
  461. TABOBL(JGM0+ 6)= 'TELE'
  462. TABOBL(JGM0+ 7)= 'GFT'
  463. TABOBL(JGM0+ 8)= 'EPC2'
  464.  
  465. ELSE IF (IPLAC.EQ.22) THEN
  466. *
  467. * MODELE ENDOMMAGEMENT SCALAIRE DE MAZARS INI
  468. *
  469. JGM0=JGOBL
  470. JGOBL=JGM0+6
  471. TABOBL(JGM0+1)= 'BETA'
  472. TABOBL(JGM0+2)= 'FTRA'
  473. TABOBL(JGM0+3)= 'FCOM'
  474. TABOBL(JGM0+4)= 'KPIC'
  475. TABOBL(JGM0+5)= 'SRES'
  476. TABOBL(JGM0+6)= 'TAU'
  477.  
  478. ELSE IF (IPLAC.EQ.23) THEN
  479. *
  480. * MODELE ENDOMMAGEMENT SCALAIRE DE MAZARS LIN
  481. *
  482. JGM0=JGOBL
  483. JGOBL=JGM0+5
  484. TABOBL(JGM0+1)= 'BETA'
  485. TABOBL(JGM0+2)= 'FTRA'
  486. TABOBL(JGM0+3)= 'FCOM'
  487. TABOBL(JGM0+4)= 'KPIC'
  488. TABOBL(JGM0+5)= 'KMAX'
  489.  
  490. ELSE IF (IPLAC.EQ.24) THEN
  491. *
  492. * MODELE ENDOMMAGEMENT SCALAIRE DE MAZARS RT
  493. *
  494. JGM0=JGOBL
  495. JGOBL=JGM0+6
  496. TABOBL(JGM0+1)= 'BETA'
  497. TABOBL(JGM0+2)= 'FTRA'
  498. TABOBL(JGM0+3)= 'FCOM'
  499. TABOBL(JGM0+4)= 'KPIC'
  500. TABOBL(JGM0+5)= 'GFT'
  501. TABOBL(JGM0+6)= 'TELE'
  502. ELSE
  503. *
  504. * SI PROBLEME , ON SORT AVEC IRET A 0
  505. *
  506. IRET=0
  507. CALL ERREUR(261)
  508. ENDIF
  509. RETURN
  510. END
  511.  
  512.  
  513.  
  514.  
  515.  

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