Télécharger idendo.eso

Retour à la liste

Numérotation des lignes :

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

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