Télécharger idendo.eso

Retour à la liste

Numérotation des lignes :

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

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