Télécharger idmatr.eso

Retour à la liste

Numérotation des lignes :

  1. C IDMATR SOURCE BP208322 17/03/01 21:17:41 9325
  2.  
  3. SUBROUTINE IDMATR(MFR,IPMODL,IPNOMC,NBROBL,NBRFAC)
  4.  
  5. *--------------------------------------------------------------------*
  6. * Noms de composantes de materiaux *
  7. *--------------------------------------------------------------------*
  8. * *
  9. * ENTREES: *
  10. * MFR Numero de formulation *
  11. * IPMODL objet modele elementaire ( segment actif ) *
  12. * *
  13. * SORTIES: *
  14. * IPNOMC pointeur sur les listes de noms de composantes *
  15. * obligatoires et facultatives *
  16. * NBROBL nombre de composantes obligatoires *
  17. * NBRFAC nombre de composantes facultatives *
  18. * *
  19. *--------------------------------------------------------------------*
  20. *
  21. IMPLICIT INTEGER(I-N)
  22. IMPLICIT REAL*8(A-H,O-Z)
  23.  
  24. -INC CCOPTIO
  25.  
  26. -INC SMLMOTS
  27. POINTEUR MOOBL.MLMOTS, MOFAC.MLMOTS
  28. -INC SMMODEL
  29. POINTEUR NOMID1.NOMID
  30. *
  31. LOGICAL lozut
  32. CHARACTER*16 MOMODL(100)
  33. *
  34. IMODEL=IPMODL
  35. * Le segment existe-t-il deja?
  36. IF (lnomid(6).NE.0) THEN
  37. nomid = lnomid(6)
  38. SEGACT,nomid
  39. nbrobl = lesobl(/2)
  40. nbrfac = lesfac(/2)
  41. SEGDES,nomid
  42. IF (nbrobl+nbrfac.EQ.0) GOTO 765
  43. SEGINI,nomid1=nomid
  44. SEGDES,nomid1
  45. ipnomc=nomid1
  46. RETURN
  47. ENDIF
  48. 765 CONTINUE
  49.  
  50. MOOBL = 0
  51. MOFAC = 0
  52. JGN = 8
  53. *
  54. IRET = 1
  55. *
  56. NMAT=MATMOD(/2)
  57. NFOR=FORMOD(/2)
  58. MELE=NEFMOD
  59.  
  60. *--------------------------------------------------------------------
  61. * CAS DE LA FORMULATION THERMOHYDRIQUE
  62. *--------------------------------------------------------------------
  63. CALL PLACE(FORMOD,NFOR,ithehy,'THERMOHYDRIQUE')
  64. IF (ithehy.ne.0) then
  65. if ( matmod(1).eq.'SCHREFLER') then
  66. JGM = 20
  67. SEGINI,MOOBL
  68. MOOBL.MOTS(1)='KGG'
  69. MOOBL.MOTS(2)='KGC'
  70. MOOBL.MOTS(3)='KGT'
  71. MOOBL.MOTS(4)='KCG'
  72. MOOBL.MOTS(5)='KCC'
  73. MOOBL.MOTS(6)='KCT'
  74. MOOBL.MOTS(7)='KTG'
  75. MOOBL.MOTS(8)='KTC'
  76. MOOBL.MOTS(9)='KTT'
  77. MOOBL.MOTS(10)='CGG'
  78. MOOBL.MOTS(11)='CGC'
  79. MOOBL.MOTS(12)='CGT'
  80. MOOBL.MOTS(13)='CCG'
  81. MOOBL.MOTS(14)='CCC'
  82. MOOBL.MOTS(15)='CCT'
  83. MOOBL.MOTS(16)='CTG'
  84. MOOBL.MOTS(17)='CTC'
  85. MOOBL.MOTS(18)='CTT'
  86. MOOBL.MOTS(19)='KTGG'
  87. MOOBL.MOTS(20)='KTCG'
  88. else
  89. IRET = 0
  90. call erreur(5)
  91. endif
  92. GO TO 9999
  93. ENDIF
  94. *--------------------------------------------------------------------
  95. * CAS DE LA FORMULATION LIQUIDE ET ELEMENT DE RACCORD LITU
  96. *--------------------------------------------------------------------
  97. CALL PLACE(FORMOD,NFOR,ILIQU,'LIQUIDE')
  98. IF (ILIQU.NE.0) THEN
  99. IF (MFR.NE.41.AND.MFR.NE.43) THEN
  100. JGM = 6
  101. SEGINI,MOOBL
  102. MOOBL.MOTS(1)='RHO '
  103. MOOBL.MOTS(2)='CSON'
  104. MOOBL.MOTS(3)='RORF'
  105. MOOBL.MOTS(4)='CREF'
  106. MOOBL.MOTS(5)='LCAR'
  107. MOOBL.MOTS(6)='G '
  108. ELSEIF (MFR.EQ.41) THEN
  109. JGM = 5
  110. SEGINI,MOOBL
  111. MOOBL.MOTS(1)='RHO '
  112. MOOBL.MOTS(2)='CSON'
  113. MOOBL.MOTS(3)='RORF'
  114. MOOBL.MOTS(4)='CREF'
  115. MOOBL.MOTS(5)='LCAR'
  116. c* ELSEIF (MFR.EQ.43) THEN
  117. ELSE
  118. JGM = 3
  119. SEGINI,MOOBL
  120. MOOBL.MOTS(1)='RHO '
  121. MOOBL.MOTS(2)='LCAR'
  122. MOOBL.MOTS(3)='RORF'
  123. ENDIF
  124. GOTO 9999
  125. ENDIF
  126.  
  127. *--------------------------------------------------------------------
  128. * CAS DE LA FORMULATION THERMIQUE
  129. * CAS DE LA FORMULATION DARCY
  130. *--------------------------------------------------------------------
  131. CALL PLACE(FORMOD,NFOR,ITHER ,'THERMIQUE')
  132. CALL PLACE(FORMOD,NFOR,IDARCY,'DARCY' )
  133. IF (ITHER.NE.0 .OR. IDARCY.NE.0) THEN
  134.  
  135. IF (ITHER.NE.0) THEN
  136. C Cas particuliers de THERMIQUE CONVECTION :
  137. CALL PLACE(MATMOD,NMAT,ICONV,'CONVECTION')
  138. IF (ICONV.NE.0) THEN
  139. JGM = 1
  140. SEGINI,MOOBL
  141. MOOBL.MOTS(1)='H '
  142. GOTO 9999
  143. ENDIF
  144.  
  145. C Cas particuliers de THERMIQUE RAYONNEMENT :
  146. CALL PLACE(MATMOD,NMAT,IRAYE,'RAYONNEMENT')
  147. IF (IRAYE.NE.0) THEN
  148. C Cas particuliers de THERMIQUE RAYONNEMENT :
  149. CALL PLACE(MATMOD,NMAT,ICAVE,'CAVITE')
  150. CALL PLACE(MATMOD,NMAT,IFACA,'FAC_A_FAC')
  151. CALL PLACE(MATMOD,NMAT,IINFI,'INFINI')
  152.  
  153. IF (ICAVE.NE.0) THEN
  154. C RAYONNEMENT en CAVITE :
  155. IF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  156. JGM=2
  157. SEGINI,MOOBL
  158. MOOBL.MOTS(1)='EINF'
  159. MOOBL.MOTS(2)='ESUP'
  160. else
  161. jgm=1
  162. segini,MOOBL
  163. MOOBL.mots(1)='EMIS'
  164. endif
  165. jgm=2
  166. SEGINI,MOFAC
  167. mofac.mots(1)='CABS'
  168. mofac.mots(2)='TABS'
  169.  
  170. ELSE IF (IFACA.NE.0) THEN
  171. C RAYONNEMENT FACE_A_FACE :
  172. JGM=1
  173. SEGINI,MOOBL
  174. MOOBL.MOTS(1)='EMIS'
  175.  
  176. ELSE IF (IINFI.NE.0) THEN
  177. C RAYONNEMENT a l'INFINI :
  178. IF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  179. JGM=2
  180. SEGINI,MOOBL
  181. MOOBL.MOTS(1)='EINF'
  182. MOOBL.MOTS(2)='ESUP'
  183. ELSE
  184. JGM=1
  185. SEGINI,MOOBL
  186. MOOBL.MOTS(1)='EMIS'
  187. ENDIF
  188. jgm = 1
  189. SEGINI,MOFAC
  190. MOFAC.MOTS(1)='E_IN'
  191.  
  192. ELSE
  193. IRET = 0
  194. CALL ERREUR(5)
  195. ENDIF
  196. GOTO 9999
  197. ENDIF
  198. ENDIF
  199.  
  200. C* Cas THERMIQUE et DARCY
  201. CALL PLACE(MATMOD,NMAT,IORTH,'ORTHOTROPE')
  202. CALL PLACE(MATMOD,NMAT,IANIS,'ANISOTROPE')
  203. IF (IORTH.EQ.0.AND.IANIS.EQ.0)THEN
  204. JGM = 1
  205. SEGINI,MOOBL
  206. MOOBL.MOTS(1)='K '
  207. ELSE IF (IORTH.NE.0) THEN
  208. * ELEMENTS COQUES
  209. IF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  210. JGM=5
  211. SEGINI,MOOBL
  212. MOOBL.MOTS(1)='K1 '
  213. MOOBL.MOTS(2)='K2 '
  214. MOOBL.MOTS(3)='K3 '
  215. MOOBL.MOTS(4)='V1X '
  216. MOOBL.MOTS(5)='V1Y '
  217. ELSE IF (MFR.EQ.1.OR.MFR.EQ.45) THEN
  218. * ELEMENTS MASSIFS et HYBRIDES
  219. IF (IDIM.EQ.2) THEN
  220. IF (IFOMOD.EQ.1) THEN
  221. * ELEMENT MASSIF DE FOURIER
  222. JGM=5
  223. SEGINI,MOOBL
  224. MOOBL.MOTS(1)='K1 '
  225. MOOBL.MOTS(2)='K2 '
  226. MOOBL.MOTS(3)='V1X '
  227. MOOBL.MOTS(4)='V1Y '
  228. MOOBL.MOTS(5)='K3 '
  229. ELSE
  230. JGM=4
  231. SEGINI,MOOBL
  232. MOOBL.MOTS(1)='K1 '
  233. MOOBL.MOTS(2)='K2 '
  234. MOOBL.MOTS(3)='V1X '
  235. MOOBL.MOTS(4)='V1Y '
  236. ENDIF
  237. ELSEIF (IDIM.EQ.3) THEN
  238. JGM=9
  239. SEGINI,MOOBL
  240. MOOBL.MOTS(1)='K1 '
  241. MOOBL.MOTS(2)='K2 '
  242. MOOBL.MOTS(3)='K3 '
  243. MOOBL.MOTS(4)='V1X '
  244. MOOBL.MOTS(5)='V1Y '
  245. MOOBL.MOTS(6)='V1Z '
  246. MOOBL.MOTS(7)='V2X '
  247. MOOBL.MOTS(8)='V2Y '
  248. MOOBL.MOTS(9)='V2Z '
  249. ENDIF
  250. ENDIF
  251. ELSEIF (IANIS.NE.0) THEN
  252. * ELEMENTS MASSIFS
  253. IF (MFR.EQ.1.OR.MFR.EQ.45) THEN
  254. IF (IDIM.EQ.2) THEN
  255. IF (IFOMOD.EQ.1) THEN
  256. * ELEMENT MASSIF DE FOURIER
  257. JGM=6
  258. SEGINI,MOOBL
  259. MOOBL.MOTS(1)='K11 '
  260. MOOBL.MOTS(2)='K22 '
  261. MOOBL.MOTS(3)='K21 '
  262. MOOBL.MOTS(4)='V1X '
  263. MOOBL.MOTS(5)='V1Y '
  264. MOOBL.MOTS(6)='K33 '
  265. ELSE
  266. JGM=5
  267. SEGINI,MOOBL
  268. MOOBL.MOTS(1)='K11 '
  269. MOOBL.MOTS(2)='K22 '
  270. MOOBL.MOTS(3)='K21 '
  271. MOOBL.MOTS(4)='V1X '
  272. MOOBL.MOTS(5)='V1Y '
  273. ENDIF
  274. ELSEIF (IDIM.EQ.3) THEN
  275. JGM=12
  276. SEGINI,MOOBL
  277. MOOBL.MOTS(1)='K11 '
  278. MOOBL.MOTS(2)='K22 '
  279. MOOBL.MOTS(3)='K33 '
  280. MOOBL.MOTS(4)='K21 '
  281. MOOBL.MOTS(5)='K31 '
  282. MOOBL.MOTS(6)='K32 '
  283. MOOBL.MOTS(7)='V1X '
  284. MOOBL.MOTS(8)='V1Y '
  285. MOOBL.MOTS(9)='V1Z '
  286. MOOBL.MOTS(10)='V2X '
  287. MOOBL.MOTS(11)='V2Y '
  288. MOOBL.MOTS(12)='V2Z '
  289. ENDIF
  290. ENDIF
  291. ENDIF
  292. C*
  293. C* Cas THERMIQUE CONDUCTION, THERMIQUE PHASE ou THERMIQUE ADVECTION :
  294. IF (ITHER.NE.0) THEN
  295.  
  296. CALL PLACE(MATMOD,NMAT,IPHA,'PHASE')
  297. IF (IPHA.NE.0) THEN
  298. JGM0 = MOOBL.mots(/2)
  299. JGM = JGM0+4
  300. SEGADJ,MOOBL
  301. MOOBL.MOTS(JGM0+1)='RHO '
  302. MOOBL.MOTS(JGM0+2)='C '
  303. MOOBL.MOTS(JGM0+3)='QLAT'
  304. MOOBL.MOTS(JGM0+4)='TPHA'
  305. JGM=1
  306. SEGINI,MOFAC
  307. MOFAC.MOTS(1)='H '
  308. GOTO 9999
  309. ENDIF
  310.  
  311. call place(MATMOD,NMAT,IADVE,'ADVECTION')
  312. if (iadve .ne. 0) then
  313.  
  314. C Cas des Tuyaux 1D (MFR=79)
  315. C ===========================
  316. IF (MFR .EQ. 79) THEN
  317. jgm = 2 + 1
  318. SEGINI,MOFAC
  319. MOFAC.mots(1)='RHO '
  320. MOFAC.mots(2)='C '
  321. MOFAC.mots(3)='VITE'
  322.  
  323. C Cas Massif (MFR=1)
  324. C ===========================
  325. ELSEIF (MFR .EQ. 1) THEN
  326.  
  327.  
  328. C Bidimensionnel PLAN DPGE
  329. C ===========================
  330. IF (IFOUR.EQ.-3) THEN
  331. jgm = 2 + 3
  332. SEGINI,MOFAC
  333. MOFAC.mots(1)='RHO '
  334. MOFAC.mots(2)='C '
  335. MOFAC.mots(3)='UX '
  336. MOFAC.mots(4)='UY '
  337. MOFAC.mots(5)='UZ '
  338.  
  339. C Bidimensionnel PLAN (CP/DP)
  340. C ===========================
  341. ELSE IF (IFOUR.EQ.-2 .OR. IFOUR.EQ.-1) THEN
  342. jgm = 2 + 2
  343. SEGINI,MOFAC
  344. MOFAC.mots(1)='RHO '
  345. MOFAC.mots(2)='C '
  346. MOFAC.mots(3)='UX '
  347. MOFAC.mots(4)='UY '
  348.  
  349. C Axisymetrie
  350. C ===========================
  351. ELSE IF (IFOUR .EQ. 0) THEN
  352. jgm = 2 + 2
  353. SEGINI,MOFAC
  354. MOFAC.mots(1)='RHO '
  355. MOFAC.mots(2)='C '
  356. MOFAC.mots(3)='UR '
  357. MOFAC.mots(4)='UZ '
  358.  
  359. C Fourier
  360. C ===========================
  361. ELSE IF (IFOUR .EQ. 1) THEN
  362. CALL ERREUR(21)
  363. RETURN
  364. C jgm = 2 + 3
  365. C SEGINI,MOFAC
  366. C MOFAC.mots(1)='RHO '
  367. C MOFAC.mots(2)='C '
  368. C MOFAC.mots(3)='UR '
  369. C MOFAC.mots(4)='UZ '
  370. C MOFAC.mots(5)='UT '
  371.  
  372. C Tridimensionnel
  373. C ===========================
  374. ELSE IF (IFOUR .EQ. 2) THEN
  375. jgm = 2 + 3
  376. SEGINI,MOFAC
  377. MOFAC.mots(1)='RHO '
  378. MOFAC.mots(2)='C '
  379. MOFAC.mots(3)='UX '
  380. MOFAC.mots(4)='UY '
  381. MOFAC.mots(5)='UZ '
  382.  
  383. C Unidimensionnel (1D)
  384. C ===========================
  385. ELSE IF (IFOUR.GE.3 .AND. IFOUR.LE.15) THEN
  386. IF (IFOUR.LE.6) THEN
  387. jgm = 2 + 1
  388. SEGINI,MOFAC
  389. MOFAC.mots(1)='RHO '
  390. MOFAC.mots(2)='C '
  391. MOFAC.mots(3)='UX '
  392. ELSE IF (IFOUR.EQ.7 .OR. IFOUR.EQ.8) THEN
  393. jgm = 2 + 2
  394. C Verifier l'utilite des compsantes au dela de 4
  395. SEGINI,MOFAC
  396. MOFAC.mots(1)='RHO '
  397. MOFAC.mots(2)='C '
  398. MOFAC.mots(3)='UX '
  399. MOFAC.mots(4)='UY '
  400. ELSE IF (IFOUR.EQ.9 .OR. IFOUR.EQ.10) THEN
  401. jgm = 2 + 2
  402. SEGINI,MOFAC
  403. C Verifier l'utilite des compsantes au dela de 4
  404. MOFAC.mots(1)='RHO '
  405. MOFAC.mots(2)='C '
  406. MOFAC.mots(3)='UX '
  407. MOFAC.mots(4)='UZ '
  408. ELSE IF (IFOUR.EQ.11) THEN
  409. jgm = 2 + 3
  410. SEGINI,MOFAC
  411. C Verifier l'utilite des compsantes au dela de 4
  412. MOFAC.mots(1)='RHO '
  413. MOFAC.mots(2)='C '
  414. MOFAC.mots(3)='UX '
  415. MOFAC.mots(4)='UY '
  416. MOFAC.mots(5)='UZ '
  417. ELSE IF (IFOUR.EQ.12.OR.IFOUR.EQ.13.OR.IFOUR.EQ.15) THEN
  418. jgm = 2 + 1
  419. SEGINI,MOFAC
  420. MOFAC.mots(1)='RHO '
  421. MOFAC.mots(2)='C '
  422. MOFAC.mots(3)='UR '
  423. ELSE IF (IFOUR.EQ.14) THEN
  424. jgm = 2 + 2
  425. SEGINI,MOFAC
  426. C Verifier l'utilite des compsantes au dela de 4
  427. MOFAC.mots(1)='RHO '
  428. MOFAC.mots(2)='C '
  429. MOFAC.mots(3)='UR '
  430. MOFAC.mots(4)='UZ '
  431. ENDIF
  432. ENDIF
  433. ENDIF
  434.  
  435. GOTO 9999
  436. endif
  437.  
  438. C composantes facultatives THERMIQUE CONDUCTION seule
  439. JGM=3
  440. SEGINI,MOFAC
  441. MOFAC.MOTS(1)='RHO '
  442. MOFAC.MOTS(2)='C '
  443. MOFAC.MOTS(3)='H '
  444. ENDIF
  445. GOTO 9999
  446. ENDIF
  447.  
  448. *--------------------------------------------------------------------
  449. * CAS DE LA FORMULATION MECANIQUE
  450. *--------------------------------------------------------------------
  451. CALL PLACE(FORMOD,NFOR,IMECA,'MECANIQUE')
  452. IF (IMECA.NE.0) THEN
  453. *
  454. CALL MODLIN(MOMODL,NMOD)
  455. CALL PLACE(MOMODL,NMOD,IRET,MATMOD(1))
  456. IF (IRET.EQ.0) GOTO 9999
  457. IF (NMAT.GE.2) THEN
  458.  
  459. CALL MODELA(MOMODL,NMOD)
  460. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(2))
  461. if ((IPLAC.EQ.9.OR.IPLAC.EQ.10).AND.NMAT.GT.2) then
  462. INMAT = 3
  463. goto 19
  464. endif
  465.  
  466. IF (IPLAC.NE.0) THEN
  467. INMAT=3
  468. IF (IPLAC.EQ.1) THEN
  469. INMAT=3
  470. GOTO 10
  471. ENDIF
  472. IF (IPLAC.EQ.2) THEN
  473. *
  474. * MATERIAU ELASTIQUE ORTHOTROPE
  475. *
  476. IF (MFR.EQ.75) THEN
  477. *
  478. * JOINT UNIDIMENSIONNEL JOI1
  479. *
  480. IF(IFOUR.EQ.2)THEN
  481. JGM=12
  482. SEGINI,MOOBL
  483. MOOBL.MOTS(1)='V1X '
  484. MOOBL.MOTS(2)='V1Y '
  485. MOOBL.MOTS(3)='V1Z '
  486. MOOBL.MOTS(4)='V2X '
  487. MOOBL.MOTS(5)='V2Y '
  488. MOOBL.MOTS(6)='V2Z '
  489. MOOBL.MOTS(7)='KN '
  490. MOOBL.MOTS(8)='KS1 '
  491. MOOBL.MOTS(9)='KS2 '
  492. MOOBL.MOTS(10)='QN '
  493. MOOBL.MOTS(11)='QS1 '
  494. MOOBL.MOTS(12)='QS2 '
  495. *
  496. JGM=10
  497. SEGINI,MOFAC
  498. MOFAC.MOTS(1)='MASS'
  499. MOFAC.MOTS(2)='JX '
  500. MOFAC.MOTS(3)='JY '
  501. MOFAC.MOTS(4)='JZ '
  502. MOFAC.MOTS(5)='ALPN'
  503. MOFAC.MOTS(6)='ALP1'
  504. MOFAC.MOTS(7)='ALP2'
  505. MOFAC.MOTS(8)='ALQN'
  506. MOFAC.MOTS(9)='ALQ1'
  507. MOFAC.MOTS(10)='ALQ2'
  508. *
  509. ELSEIF(IFOUR.EQ.-2.OR.IFOUR.EQ.-1)THEN
  510. JGM=5
  511. SEGINI,MOOBL
  512. MOOBL.MOTS(1)='V1X '
  513. MOOBL.MOTS(2)='V1Y '
  514. MOOBL.MOTS(3)='KN '
  515. MOOBL.MOTS(4)='KS '
  516. MOOBL.MOTS(5)='QS '
  517. *
  518. JGM=6
  519. SEGINI,MOFAC
  520. MOFAC.MOTS(1)='MASS'
  521. MOFAC.MOTS(2)='JZ'
  522. MOFAC.MOTS(4)='ALPN'
  523. MOFAC.MOTS(5)='ALPS'
  524. MOFAC.MOTS(6)='ALQS'
  525. ENDIF
  526. *
  527. ELSEIF (MFR.EQ.3) THEN
  528. *
  529. * COQUES MINCES
  530. *
  531. JGM=6
  532. SEGINI,MOOBL
  533. MOOBL.MOTS(1)='YG1 '
  534. MOOBL.MOTS(2)='YG2 '
  535. MOOBL.MOTS(3)='NU12'
  536. MOOBL.MOTS(4)='G12 '
  537. MOOBL.MOTS(5)='V1X '
  538. MOOBL.MOTS(6)='V1Y '
  539. *
  540. IF(IFOUR.EQ.-2) THEN
  541. JGM=4
  542. ELSE
  543. JGM=3
  544. ENDIF
  545. SEGINI,MOFAC
  546. MOFAC.MOTS(1)='ALP1'
  547. MOFAC.MOTS(2)='ALP2'
  548. MOFAC.MOTS(3)='RHO '
  549. IF(IFOUR.EQ.-2) MOFAC.MOTS(4)='DIM3'
  550. ELSEIF (MFR.EQ.9.OR.MFR.EQ.5) THEN
  551. *
  552. * COQUES AVEC CISAILLEMENT TRANSVERSE
  553. *
  554. JGM=8
  555. SEGINI,MOOBL
  556. MOOBL.MOTS(1)='YG1 '
  557. MOOBL.MOTS(2)='YG2 '
  558. MOOBL.MOTS(3)='NU12'
  559. MOOBL.MOTS(4)='G12 '
  560. MOOBL.MOTS(5)='G23 '
  561. MOOBL.MOTS(6)='G13 '
  562. MOOBL.MOTS(7)='V1X '
  563. MOOBL.MOTS(8)='V1Y '
  564. *
  565. JGM=3
  566. SEGINI,MOFAC
  567. MOFAC.MOTS(1)='RHO '
  568. MOFAC.MOTS(2)='ALP1'
  569. MOFAC.MOTS(3)='ALP2'
  570. ELSEIF (MFR.EQ.1.OR.MFR.EQ.31) THEN
  571. *
  572. * ELEMENTS MASSIFS
  573. *
  574. IF(IDIM.EQ.3)THEN
  575. * ELEMENTS 3D
  576. JGM=15
  577. SEGINI,MOOBL
  578. MOOBL.MOTS(1)='YG1 '
  579. MOOBL.MOTS(2)='YG2 '
  580. MOOBL.MOTS(3)='YG3 '
  581. MOOBL.MOTS(4)='NU12'
  582. MOOBL.MOTS(5)='NU23'
  583. MOOBL.MOTS(6)='NU13'
  584. MOOBL.MOTS(7)='G12 '
  585. MOOBL.MOTS(8)='G23 '
  586. MOOBL.MOTS(9)='G13 '
  587. MOOBL.MOTS(10)='V1X '
  588. MOOBL.MOTS(11)='V1Y '
  589. MOOBL.MOTS(12)='V1Z '
  590. MOOBL.MOTS(13)='V2X '
  591. MOOBL.MOTS(14)='V2Y '
  592. MOOBL.MOTS(15)='V2Z '
  593. *
  594. JGM=4
  595. SEGINI,MOFAC
  596. MOFAC.MOTS(1)='RHO '
  597. MOFAC.MOTS(2)='ALP1'
  598. MOFAC.MOTS(3)='ALP2'
  599. MOFAC.MOTS(4)='ALP3'
  600. ELSEIF (IDIM.EQ.2) THEN
  601. IF(IFOUR.EQ.-2)THEN
  602. * CONTRAINTE PLANE
  603. JGM=9
  604. SEGINI,MOOBL
  605. MOOBL.MOTS(1)='YG1 '
  606. MOOBL.MOTS(2)='YG2 '
  607. MOOBL.MOTS(3)='NU12'
  608. MOOBL.MOTS(4)='G12 '
  609. MOOBL.MOTS(5)='V1X '
  610. MOOBL.MOTS(6)='V1Y '
  611. MOOBL.MOTS(7)='YG3 '
  612. MOOBL.MOTS(8)='NU23'
  613. MOOBL.MOTS(9)='NU13'
  614. *
  615. JGM=4
  616. SEGINI,MOFAC
  617. MOFAC.MOTS(1)='RHO '
  618. MOFAC.MOTS(2)='ALP1'
  619. MOFAC.MOTS(3)='ALP2'
  620. MOFAC.MOTS(4)='DIM3'
  621. ELSEIF (IFOUR.EQ.-1.OR.IFOUR.EQ.0.OR.IFOUR.EQ.-3) THEN
  622. * DEFORMATION PLANE ,AXISYMETRIE
  623. JGM=9
  624. SEGINI,MOOBL
  625. MOOBL.MOTS(1)='YG1 '
  626. MOOBL.MOTS(2)='YG2 '
  627. MOOBL.MOTS(3)='YG3 '
  628. MOOBL.MOTS(4)='NU12'
  629. MOOBL.MOTS(5)='NU23'
  630. MOOBL.MOTS(6)='NU13'
  631. MOOBL.MOTS(7)='G12 '
  632. MOOBL.MOTS(8)='V1X '
  633. MOOBL.MOTS(9)='V1Y '
  634. *
  635. JGM=4
  636. SEGINI,MOFAC
  637. MOFAC.MOTS(1)='RHO '
  638. MOFAC.MOTS(2)='ALP1'
  639. MOFAC.MOTS(3)='ALP2'
  640. MOFAC.MOTS(4)='ALP3'
  641. ELSEIF (IFOUR.EQ.1) THEN
  642. * AXISYMETRIE DE FOURIER
  643. c JGM=11
  644. JGM=15
  645. SEGINI,MOOBL
  646. MOOBL.MOTS(1)='YG1 '
  647. MOOBL.MOTS(2)='YG2 '
  648. MOOBL.MOTS(3)='YG3 '
  649. MOOBL.MOTS(4)='NU12'
  650. MOOBL.MOTS(5)='NU23'
  651. MOOBL.MOTS(6)='NU13'
  652. MOOBL.MOTS(7)='G12 '
  653. MOOBL.MOTS(8)='G23 '
  654. MOOBL.MOTS(9)='G13 '
  655. MOOBL.MOTS(10)='V1X '
  656. MOOBL.MOTS(11)='V1Y '
  657. *bp
  658. MOOBL.MOTS(12)='V1Z '
  659. MOOBL.MOTS(13)='V2X '
  660. MOOBL.MOTS(14)='V2Y '
  661. MOOBL.MOTS(15)='V2Z '
  662. *
  663. JGM=4
  664. SEGINI,MOFAC
  665. MOFAC.MOTS(1)='RHO '
  666. MOFAC.MOTS(2)='ALP1'
  667. MOFAC.MOTS(3)='ALP2'
  668. MOFAC.MOTS(4)='ALP3'
  669. ENDIF
  670. ELSEIF (IDIM.EQ.1) THEN
  671. C= Dans le cas UNID SPHErique, on doit avoir YG2=YG3 et NU12=NU13
  672. C= et dans le cas thermomecanique ALP2=ALP3.
  673. JGM=6
  674. SEGINI,MOOBL
  675. MOOBL.MOTS(1)='YG1 '
  676. MOOBL.MOTS(2)='YG2 '
  677. MOOBL.MOTS(3)='YG3 '
  678. MOOBL.MOTS(4)='NU12'
  679. MOOBL.MOTS(5)='NU23'
  680. MOOBL.MOTS(6)='NU13'
  681. IF (IFOUR.EQ.6) THEN
  682. JGM=2
  683. SEGINI,MOFAC
  684. ELSEIF (IFOUR.EQ.5.OR.IFOUR.EQ.10) THEN
  685. JGM=3
  686. SEGINI,MOFAC
  687. MOFAC.MOTS(3)='ALP3'
  688. ELSEIF (IFOUR.EQ.4.OR.IFOUR.EQ.8.OR.
  689. . IFOUR.EQ.13) THEN
  690. JGM=3
  691. SEGINI,MOFAC
  692. MOFAC.MOTS(3)='ALP2'
  693. ELSE
  694. JGM=4
  695. SEGINI,MOFAC
  696. MOFAC.MOTS(3)='ALP2'
  697. MOFAC.MOTS(4)='ALP3'
  698. ENDIF
  699. MOFAC.MOTS(1)='RHO '
  700. MOFAC.MOTS(2)='ALP1'
  701. ENDIF
  702. ELSEIF (MFR.EQ.35) THEN
  703. * ELEMENTS JOINTS
  704. IF (IFOUR.EQ.2) THEN
  705. JGM=5
  706. SEGINI,MOOBL
  707. MOOBL.MOTS(1)='KS1 '
  708. MOOBL.MOTS(2)='KS2 '
  709. MOOBL.MOTS(3)='KN '
  710. MOOBL.MOTS(4)='V1X '
  711. MOOBL.MOTS(5)='V1Y '
  712. *
  713. JGM=2
  714. SEGINI,MOFAC
  715. MOFAC.MOTS(1)='RHO '
  716. MOFAC.MOTS(2)='ALPN'
  717. ENDIF
  718. ENDIF
  719. ELSEIF (IPLAC.EQ.3)THEN
  720. *
  721. * MATERIAU ANISOTROPE ELASTIQUE
  722. *
  723. IF(MFR.EQ.75)THEN
  724. *
  725. * JOINT UNIDIMESIONNEL JOI1
  726. *
  727. IF (IFOUR.EQ.2) THEN
  728. JGM=27
  729. SEGINI,MOOBL
  730. MOOBL.MOTS(1)='V1X '
  731. MOOBL.MOTS(2)='V1Y '
  732. MOOBL.MOTS(3)='V1Z '
  733. MOOBL.MOTS(4)='V2X '
  734. MOOBL.MOTS(5)='V2Y '
  735. MOOBL.MOTS(6)='V2Z '
  736. MOOBL.MOTS(7)='D11 '
  737. MOOBL.MOTS(8)='D22 '
  738. MOOBL.MOTS(9)='D33 '
  739. MOOBL.MOTS(10)='D44 '
  740. MOOBL.MOTS(11)='D55 '
  741. MOOBL.MOTS(12)='D66 '
  742. MOOBL.MOTS(13)='D21 '
  743. MOOBL.MOTS(14)='D31 '
  744. MOOBL.MOTS(15)='D32 '
  745. MOOBL.MOTS(16)='D41 '
  746. MOOBL.MOTS(17)='D42 '
  747. MOOBL.MOTS(18)='D43 '
  748. MOOBL.MOTS(19)='D51 '
  749. MOOBL.MOTS(20)='D52 '
  750. MOOBL.MOTS(21)='D53 '
  751. MOOBL.MOTS(22)='D54 '
  752. MOOBL.MOTS(23)='D61 '
  753. MOOBL.MOTS(24)='D62 '
  754. MOOBL.MOTS(25)='D63 '
  755. MOOBL.MOTS(26)='D64 '
  756. MOOBL.MOTS(27)='D65 '
  757. *
  758. JGM=10
  759. SEGINI,MOFAC
  760. * MASS: masse totale de l'élément joint
  761. MOFAC.MOTS(1)='MASS'
  762. MOFAC.MOTS(2)='JX '
  763. MOFAC.MOTS(3)='JY '
  764. MOFAC.MOTS(4)='JZ '
  765. MOFAC.MOTS(5)='ALP1'
  766. MOFAC.MOTS(6)='ALP2'
  767. MOFAC.MOTS(7)='ALP3'
  768. MOFAC.MOTS(8)='ALQ1'
  769. MOFAC.MOTS(9)='ALQ2'
  770. MOFAC.MOTS(10)='ALQ3'
  771. *
  772. ELSEIF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1) THEN
  773. JGM=8
  774. SEGINI,MOOBL
  775. MOOBL.MOTS(1)='V1X '
  776. MOOBL.MOTS(2)='V1Y '
  777. MOOBL.MOTS(3)='D11 '
  778. MOOBL.MOTS(4)='D22 '
  779. MOOBL.MOTS(5)='D33 '
  780. MOOBL.MOTS(6)='D21 '
  781. MOOBL.MOTS(7)='D31 '
  782. MOOBL.MOTS(8)='D32 '
  783. *
  784. JGM=5
  785. SEGINI,MOFAC
  786. * MASS: masse totale de l'élément joint
  787. MOFAC.MOTS(1)='MASS'
  788. MOFAC.MOTS(2)='JZ '
  789. MOFAC.MOTS(3)='ALP1'
  790. MOFAC.MOTS(4)='ALP2'
  791. MOFAC.MOTS(5)='ALQ3'
  792. ENDIF
  793. ENDIF
  794. *
  795. * ELEMENTS MASSIFS
  796. *
  797. IF(MFR.EQ.1.OR.MFR.EQ.31)THEN
  798. IF(IDIM.EQ.3)THEN
  799. * ELEMENTS 3D
  800. JGM=27
  801. SEGINI,MOOBL
  802. MOOBL.MOTS(1)='D11 '
  803. MOOBL.MOTS(2)='D21 '
  804. MOOBL.MOTS(3)='D22 '
  805. MOOBL.MOTS(4)='D31 '
  806. MOOBL.MOTS(5)='D32 '
  807. MOOBL.MOTS(6)='D33 '
  808. MOOBL.MOTS(7)='D41 '
  809. MOOBL.MOTS(8)='D42 '
  810. MOOBL.MOTS(9)='D43 '
  811. MOOBL.MOTS(10)='D44 '
  812. MOOBL.MOTS(11)='D51 '
  813. MOOBL.MOTS(12)='D52 '
  814. MOOBL.MOTS(13)='D53 '
  815. MOOBL.MOTS(14)='D54 '
  816. MOOBL.MOTS(15)='D55 '
  817. MOOBL.MOTS(16)='D61 '
  818. MOOBL.MOTS(17)='D62 '
  819. MOOBL.MOTS(18)='D63 '
  820. MOOBL.MOTS(19)='D64 '
  821. MOOBL.MOTS(20)='D65 '
  822. MOOBL.MOTS(21)='D66 '
  823. MOOBL.MOTS(22)='V1X '
  824. MOOBL.MOTS(23)='V1Y '
  825. MOOBL.MOTS(24)='V1Z '
  826. MOOBL.MOTS(25)='V2X '
  827. MOOBL.MOTS(26)='V2Y '
  828. MOOBL.MOTS(27)='V2Z '
  829. *
  830. JGM=7
  831. SEGINI,MOFAC
  832. MOFAC.MOTS(1)='RHO '
  833. MOFAC.MOTS(2)='ALP1'
  834. MOFAC.MOTS(3)='ALP2'
  835. MOFAC.MOTS(4)='ALP3'
  836. MOFAC.MOTS(5)='AL12'
  837. MOFAC.MOTS(6)='AL13'
  838. MOFAC.MOTS(7)='AL23'
  839. ELSEIF (IDIM.EQ.2) THEN
  840. IF (IFOUR.EQ.-2) THEN
  841. * CONTRAINTE PLANE
  842. JGM=12
  843. SEGINI,MOOBL
  844. MOOBL.MOTS(1)='D11 '
  845. MOOBL.MOTS(2)='D21 '
  846. MOOBL.MOTS(3)='D22 '
  847. MOOBL.MOTS(4)='D41 '
  848. MOOBL.MOTS(5)='D42 '
  849. MOOBL.MOTS(6)='D44 '
  850. MOOBL.MOTS(7)='V1X '
  851. MOOBL.MOTS(8)='V1Y '
  852. MOOBL.MOTS(9)='D31 '
  853. MOOBL.MOTS(10)='D32 '
  854. MOOBL.MOTS(11)='D33 '
  855. MOOBL.MOTS(12)='D43 '
  856. *
  857. JGM=5
  858. SEGINI,MOFAC
  859. MOFAC.MOTS(1)='RHO '
  860. MOFAC.MOTS(2)='ALP1'
  861. MOFAC.MOTS(3)='ALP2'
  862. MOFAC.MOTS(4)='AL12'
  863. MOFAC.MOTS(5)='DIM3'
  864. ELSEIF (IFOUR.EQ.-1.OR.IFOUR.EQ.0.OR.IFOUR.EQ.-3) THEN
  865. * DEFORMATION PLANE ,AXISYMETRIE
  866. JGM=12
  867. SEGINI,MOOBL
  868. MOOBL.MOTS(1)='D11 '
  869. MOOBL.MOTS(2)='D21 '
  870. MOOBL.MOTS(3)='D22 '
  871. MOOBL.MOTS(4)='D31 '
  872. MOOBL.MOTS(5)='D32 '
  873. MOOBL.MOTS(6)='D33 '
  874. MOOBL.MOTS(7)='D41 '
  875. MOOBL.MOTS(8)='D42 '
  876. MOOBL.MOTS(9)='D43 '
  877. MOOBL.MOTS(10)='D44 '
  878. MOOBL.MOTS(11)='V1X '
  879. MOOBL.MOTS(12)='V1Y '
  880. *
  881. JGM=5
  882. SEGINI,MOFAC
  883. MOFAC.MOTS(1)='RHO '
  884. MOFAC.MOTS(2)='ALP1'
  885. MOFAC.MOTS(3)='ALP2'
  886. MOFAC.MOTS(4)='AL12'
  887. MOFAC.MOTS(5)='ALP3'
  888. ELSEIF (IFOUR.EQ.1) THEN
  889. * AXISYMETRIE DE FOURIER
  890. JGM=15
  891. SEGINI,MOOBL
  892. MOOBL.MOTS(1)='D11 '
  893. MOOBL.MOTS(2)='D21 '
  894. MOOBL.MOTS(3)='D22 '
  895. MOOBL.MOTS(4)='D31 '
  896. MOOBL.MOTS(5)='D32 '
  897. MOOBL.MOTS(6)='D33 '
  898. MOOBL.MOTS(7)='D41 '
  899. MOOBL.MOTS(8)='D42 '
  900. MOOBL.MOTS(9)='D43 '
  901. MOOBL.MOTS(10)='D44 '
  902. MOOBL.MOTS(11)='D55 '
  903. MOOBL.MOTS(12)='D65 '
  904. MOOBL.MOTS(13)='D66 '
  905. MOOBL.MOTS(14)='V1X '
  906. MOOBL.MOTS(15)='V1Y '
  907. *
  908. JGM=5
  909. SEGINI,MOFAC
  910. MOFAC.MOTS(1)='RHO '
  911. MOFAC.MOTS(2)='ALP1'
  912. MOFAC.MOTS(3)='ALP2'
  913. MOFAC.MOTS(4)='AL12'
  914. MOFAC.MOTS(5)='ALP3'
  915. ENDIF
  916. ENDIF
  917. ENDIF
  918. ELSEIF (IPLAC.EQ.4) THEN
  919. IF (MFR.EQ.33) THEN
  920. *
  921. * MILIEU POREUX ISOTROPE
  922. *
  923. JGM=12
  924. SEGINI,MOOBL
  925. MOOBL.MOTS(1) ='YOUN'
  926. MOOBL.MOTS(2) ='NU '
  927. MOOBL.MOTS(3) ='RHO '
  928. MOOBL.MOTS(4) ='ALPH'
  929. MOOBL.MOTS(5) ='COB '
  930. MOOBL.MOTS(6) ='MOB '
  931. MOOBL.MOTS(7) ='ALPM'
  932. MOOBL.MOTS(8) ='PERM'
  933. MOOBL.MOTS(9) ='VISC'
  934. MOOBL.MOTS(10)='KF '
  935. MOOBL.MOTS(11)='RHOF'
  936. MOOBL.MOTS(12)='ALPF'
  937. *
  938. IF (IFOUR.EQ.-2) THEN
  939. JGM=1
  940. SEGINI,MOFAC
  941. MOFAC.MOTS(1)='DIM3'
  942. ENDIF
  943.  
  944. ENDIF
  945. ELSEIF (IPLAC.EQ.5) THEN
  946. IF (MFR.EQ.37) THEN
  947. *
  948. * MILIEU HOMOGENEISE
  949. *
  950. JGM=16
  951. SEGINI,MOOBL
  952. MOOBL.MOTS( 1)='B11 '
  953. MOOBL.MOTS( 2)='B22 '
  954. MOOBL.MOTS( 3)='B12 '
  955. MOOBL.MOTS( 4)='ROF '
  956. MOOBL.MOTS( 5)='ROS '
  957. MOOBL.MOTS( 6)='YOUN'
  958. MOOBL.MOTS( 7)='CSON'
  959. MOOBL.MOTS( 8)='RORF'
  960. MOOBL.MOTS( 9)='CREF'
  961. MOOBL.MOTS(10)='LCAR'
  962. MOOBL.MOTS(11)='E111'
  963. MOOBL.MOTS(12)='E112'
  964. MOOBL.MOTS(13)='E121'
  965. MOOBL.MOTS(14)='E122'
  966. MOOBL.MOTS(15)='E221'
  967. MOOBL.MOTS(16)='E222'
  968. ENDIF
  969. ELSEIF (IPLAC.EQ.6) THEN
  970. C
  971. C MATERIAU ELASTIQUE UNIDIRECTIONNEL
  972. C
  973. IF ((MFR.EQ.1.OR.MFR.EQ.31).AND.IDIM.EQ.3) THEN
  974. JGM=7
  975. SEGINI,MOOBL
  976. MOOBL.MOTS(1)='YOUN'
  977. MOOBL.MOTS(2)='V1X '
  978. MOOBL.MOTS(3)='V1Y '
  979. MOOBL.MOTS(4)='V1Z '
  980. MOOBL.MOTS(5)='V2X '
  981. MOOBL.MOTS(6)='V2Y '
  982. MOOBL.MOTS(7)='V2Z '
  983. ELSE
  984. JGM=3
  985. SEGINI,MOOBL
  986. MOOBL.MOTS(1)='YOUN'
  987. MOOBL.MOTS(2)='V1X '
  988. MOOBL.MOTS(3)='V1Y '
  989. ENDIF
  990. *
  991. IF((MFR.EQ.1.OR.MFR.EQ.3.OR.MFR.EQ.31).AND.
  992. . IFOUR.EQ.-2) THEN
  993. JGM=3
  994. ELSE
  995. JGM=2
  996. ENDIF
  997. SEGINI,MOFAC
  998. MOFAC.MOTS(1)='RHO '
  999. MOFAC.MOTS(2)='ALPH'
  1000. IF((MFR.EQ.1.OR.MFR.EQ.3.OR.MFR.EQ.31).AND
  1001. + .IFOUR.EQ.-2) MOFAC.MOTS(3)='DIM3'
  1002.  
  1003. ELSEIF (IPLAC.EQ.7) THEN
  1004. C
  1005. C MODELE ET MATERIAU DE LA SECTION DU MODELE A FIBRE
  1006. C
  1007. JGM=2
  1008. SEGINI,MOOBL
  1009. MOOBL.MOTS(1)='MODS'
  1010. MOOBL.MOTS(2)='MATS'
  1011. JGM=1
  1012. SEGINI,MOFAC
  1013. MOFAC.MOTS(1)='MANO'
  1014. C ---- IPLAC 8: Ajoute par Jiang, 22/08/1995 et fleuret 28/05/96
  1015. ELSEIF (IPLAC.EQ.8) THEN
  1016. C
  1017. C MODELE ET MATERIAU POUR LE CABLE PRECONTRAINT
  1018. C
  1019. JGM=1
  1020. SEGINI,MOOBL
  1021. MOOBL.MOTS(1)='YOUN'
  1022. JGM=8
  1023. SEGINI,MOFAC
  1024. MOFAC.MOTS(1)='FF'
  1025. MOFAC.MOTS(2)='PHIF'
  1026. MOFAC.MOTS(3)='GANC'
  1027. MOFAC.MOTS(4)='RMU0'
  1028. MOFAC.MOTS(5)='FPRG'
  1029. MOFAC.MOTS(6)='RH10'
  1030. MOFAC.MOTS(7)='ALPH'
  1031. MOFAC.MOTS(8)='RHO '
  1032.  
  1033. C
  1034. C MODAL
  1035. C
  1036. ELSEIF (IPLAC.EQ.9) THEN
  1037. JGM=3
  1038. SEGINI,MOOBL
  1039. MOOBL.MOTS(1)='FREQ'
  1040. MOOBL.MOTS(2)='MASS'
  1041. MOOBL.MOTS(3)='DEFO'
  1042. JGM = 9
  1043. SEGINI,MOFAC
  1044. MOFAC.MOTS(1) = 'AMOR'
  1045. MOFAC.MOTS(2) = 'CGRA'
  1046. MOFAC.MOTS(3) = 'MADE'
  1047. MOFAC.MOTS(4) = 'RICR'
  1048. MOFAC.MOTS(5) = 'MAIB'
  1049. MOFAC.MOTS(6) = 'MACR'
  1050. MOFAC.MOTS(7) = 'AMCR'
  1051. MOFAC.MOTS(8) = 'ALP0'
  1052. MOFAC.MOTS(9) = 'ECRO'
  1053.  
  1054. ELSEIF (IPLAC.EQ.10) THEN
  1055. C
  1056. C STATIQUE
  1057. C
  1058. JGM=3
  1059. SEGINI,MOOBL
  1060. MOOBL.MOTS(1)='DEFO'
  1061. MOOBL.MOTS(2)='RIDE'
  1062. MOOBL.MOTS(3)='MADE'
  1063. JGM = 8
  1064. SEGINI,MOFAC
  1065. MOFAC.MOTS(1) = 'AMOR'
  1066. MOFAC.MOTS(2) = 'RICR'
  1067. MOFAC.MOTS(3) = 'MAIA'
  1068. MOFAC.MOTS(4) = 'MAIB'
  1069. MOFAC.MOTS(5) = 'MACR'
  1070. MOFAC.MOTS(6) = 'AMCR'
  1071. MOFAC.MOTS(7) = 'BET0'
  1072. MOFAC.MOTS(8) = 'ECRO'
  1073.  
  1074. ELSEIF (IPLAC.EQ.11) THEN
  1075. C
  1076. C ZONE_COHESIVE
  1077. C
  1078. JGM=2
  1079. SEGINI,MOOBL
  1080. MOOBL.MOTS(1)='KS'
  1081. MOOBL.MOTS(2)='KN'
  1082.  
  1083. ENDIF
  1084. INMAT=3
  1085. GOTO 20
  1086.  
  1087. ELSE
  1088. INMAT=2
  1089. GOTO 10
  1090. ENDIF
  1091. ENDIF
  1092. INMAT=0
  1093. 10 CONTINUE
  1094. *
  1095. * MATERIAU ELASTIQUE ISOTROPE
  1096. *
  1097. IF (MFR.EQ.35) THEN
  1098. * VALABLE EN 2D COMME EN 3D
  1099. JGM=2
  1100. SEGINI,MOOBL
  1101. MOOBL.MOTS(1)='KS '
  1102. MOOBL.MOTS(2)='KN '
  1103. *
  1104. JGM=2
  1105. SEGINI,MOFAC
  1106. MOFAC.MOTS(1)='RHO '
  1107. MOFAC.MOTS(2)='ALPN'
  1108. *
  1109. ELSE IF (MFR.EQ.78) THEN
  1110. * VALABLE EN 2D COMME EN 3D
  1111. JGM=2
  1112. SEGINI,MOOBL
  1113. MOOBL.MOTS(1)='KS '
  1114. MOOBL.MOTS(2)='KN '
  1115. *
  1116. * JOINT CISAILLEMENT (2D)
  1117. *
  1118. ELSEIF (MFR.EQ.53) THEN
  1119. * VALABLE EN 2D "COMME EN 3D"
  1120.  
  1121. JGM=1
  1122. SEGINI,MOOBL
  1123. MOOBL.MOTS(1)='KS '
  1124. *
  1125. JGM=2
  1126. SEGINI,MOFAC
  1127. MOFAC.MOTS(1)='RHO '
  1128. MOFAC.MOTS(2)='ALPN'
  1129. *
  1130. * TOUS LES AUTRES CAS
  1131. *
  1132. ELSE
  1133. JGM=2
  1134. SEGINI,MOOBL
  1135. MOOBL.MOTS(1)='YOUN'
  1136. MOOBL.MOTS(2)='NU '
  1137. *
  1138. IF((MFR.EQ.1.OR.MFR.EQ.3.OR.MFR.EQ.31.OR.MFR.EQ.63).AND.
  1139. . IFOUR.EQ.-2) THEN
  1140. JGM=4
  1141. ELSE
  1142. JGM=3
  1143. ENDIF
  1144. SEGINI,MOFAC
  1145. MOFAC.MOTS(1)='RHO '
  1146. MOFAC.MOTS(2)='ALPH'
  1147. IF((MFR.EQ.1.OR.MFR.EQ.3.OR.MFR.EQ.31.OR.MFR.EQ.63).AND.
  1148. . IFOUR.EQ.-2) THEN
  1149. MOFAC.MOTS(3)='DIM3'
  1150. MOFAC.MOTS(4)='VISQ'
  1151. ELSE
  1152. MOFAC.MOTS(3)='VISQ'
  1153. ENDIF
  1154. ENDIF
  1155. *
  1156. IF (INMAT.EQ.0) GOTO 9999
  1157. *
  1158. 19 CONTINUE
  1159. 20 CONTINUE
  1160. DO jm = 1,matmod(/2)
  1161. IF (matmod(jm).eq.'IMPEDANCE') THEN
  1162. imate = imatee
  1163. INMAT = INMAT + 1
  1164. JGM = 0
  1165. SEGINI,MOOBL
  1166. JGM = 0
  1167. SEGINI,MOFAC
  1168. IF(CMATEE.EQ.'IMPELAST') THEN
  1169. *IMPE_ELAS
  1170. JGM0 = MOOBL.MOTS(/2)
  1171. JGM = JGM0+1
  1172. SEGADJ,MOOBL
  1173. MOOBL.MOTS(JGM0 + 1) ='RAID'
  1174. JGM0 = MOFAC.MOTS(/2)
  1175. JGM = JGM0+4
  1176. SEGADJ,MOFAC
  1177. MOFAC.MOTS(JGM0+1) = 'AMOR'
  1178. MOFAC.MOTS(JGM0+2) = 'ZNU'
  1179. MOFAC.MOTS(JGM0+3) = 'MASS'
  1180. MOFAC.MOTS(JGM0+4) = 'ALPH'
  1181. GOTO 22
  1182. ELSEIF (CMATEE.EQ.'IMPVOIGT'.or.CMATEE.EQ.'IMPREUSS') THEN
  1183. *IMPE_VOIGT ou IMPE_REUSS
  1184. JGM0 = MOOBL.MOTS(/2)
  1185. JGM = JGM0+2
  1186. SEGADJ,MOOBL
  1187. MOOBL.MOTS(JGM0 + 1) ='RAID'
  1188. MOOBL.MOTS(JGM0 + 2) ='VISC'
  1189. JGM0 = MOFAC.MOTS(/2)
  1190. JGM = JGM0+2
  1191. SEGADJ,MOFAC
  1192. MOFAC.MOTS(JGM0+1) = 'MASS'
  1193. MOFAC.MOTS(JGM0+2) = 'AMOR'
  1194. GOTO 22
  1195. ELSEIF (CMATEE.EQ.'IMPCOMPL') then
  1196. *IMPE_COMPLEXE
  1197. JGM0 = MOOBL.MOTS(/2)
  1198. JGM = JGM0+1
  1199. SEGADJ,MOOBL
  1200. MOOBL.MOTS(JGM0 + 1) ='MOCO'
  1201. JGM0 = MOFAC.MOTS(/2)
  1202. JGM = MOFAC.MOTS(/2)+4
  1203. SEGADJ,MOFAC
  1204. MOFAC.MOTS(JGM0+1) = 'RAID'
  1205. MOFAC.MOTS(JGM0+2) = 'VISC'
  1206. MOFAC.MOTS(JGM0+3) = 'MASS'
  1207. MOFAC.MOTS(JGM0+4) = 'AMOR'
  1208. GOTO 22
  1209. ELSE
  1210. ENDIF
  1211. 22 CONTINUE
  1212. * if (mele.eq.45) then
  1213. JGM0 = MOFAC.MOTS(/2)
  1214. JGM = JGM0+3
  1215. SEGADJ,MOFAC
  1216. IF(CMATEE.EQ.'IMPELAST') THEN
  1217. MOFAC.MOTS(JGM0+1) = MOFAC.MOTS(JGM0-2)
  1218. MOFAC.MOTS(JGM0+2) = MOFAC.MOTS(JGM0-1)
  1219. MOFAC.MOTS(JGM0+3) = MOFAC.MOTS(JGM0)
  1220. MOFAC.MOTS(JGM0-2) = 'CPLE'
  1221. MOFAC.MOTS(JGM0-1) = 'INER'
  1222. MOFAC.MOTS(JGM0) = 'AROT'
  1223. ELSE
  1224. MOFAC.MOTS(JGM0+1) = 'CPLE'
  1225. MOFAC.MOTS(JGM0+2) = 'INER'
  1226. MOFAC.MOTS(JGM0+3) = 'AROT'
  1227. ENDIF
  1228. * endif
  1229. IF (NMAT.GE.INMAT) inmat = inmat+1
  1230. * GOTO 9999
  1231. ENDIF
  1232. ENDDO
  1233. *
  1234. IF (NMAT.GE.INMAT) THEN
  1235. CALL MODNLI(MOMODL,NMOD)
  1236. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1237. IF (IPLAC.EQ.1) THEN
  1238. INMAT=INMAT+1
  1239. CALL MODPLA(MOMODL,NMOD)
  1240. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1241. IF (IPLAC.EQ.0) THEN
  1242. * ISOTROPE
  1243. IPLAC=1
  1244. * ELSE
  1245. * INMAT=INMAT+1
  1246. ENDIF
  1247. CALL IDPLAS(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1248. ELSEIF (IPLAC.EQ.2) THEN
  1249. INMAT=INMAT+1
  1250. CALL MODFLU(MOMODL,NMOD)
  1251. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1252. IF (IPLAC.EQ.0) THEN
  1253. * NORTON
  1254. IPLAC=1
  1255. * ELSE
  1256. * INMAT=INMAT+1
  1257. ENDIF
  1258. CALL IDFLUA(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1259. ELSEIF (IPLAC.EQ.3) THEN
  1260. INMAT=INMAT+1
  1261. CALL MODVIS(MOMODL,NMOD)
  1262. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1263. IF (IPLAC.EQ.0) THEN
  1264. * CHABOCHE
  1265. IPLAC=2
  1266. * ELSE
  1267. * INMAT=INMAT+1
  1268. ENDIF
  1269. C
  1270. C Cas particulier des modeles GATT_MONERIE et UO2
  1271. C 'RHO ' et 'ALPH' sont obligatoires
  1272. C
  1273. IF (IPLAC.EQ.18.OR.IPLAC.EQ.19) THEN
  1274. JGA = MOOBL.MOTS(/2)
  1275. JGM=JGA+2
  1276. SEGADJ,MOOBL
  1277. MOOBL.MOTS(JGA+1)='RHO '
  1278. MOOBL.MOTS(JGA+2)='ALPH'
  1279. JGA=MOFAC.MOTS(/2)
  1280. JGM=JGA-2
  1281. IF (JGM.GT.0) THEN
  1282. DO 200 I=1,JGM
  1283. MOFAC.MOTS(I)=MOFAC.MOTS(I+2)
  1284. 200 CONTINUE
  1285. ENDIF
  1286. SEGADJ,MOFAC
  1287. C ===
  1288. C Modeles SYMONDS & COWPER SYCO1 et SYCO2
  1289. C ===
  1290. ELSEIF (IPLAC.EQ.28) THEN
  1291. JGA=MOOBL.MOTS(/2)
  1292. JGM=JGA+1
  1293. SEGADJ,MOOBL
  1294. MOOBL.MOTS(JGA+1)='TRAC'
  1295.  
  1296. ELSEIF (IPLAC.EQ.29) THEN
  1297. JGA=MOOBL.MOTS(/2)
  1298. JGM=JGA+1
  1299. SEGADJ,MOOBL
  1300. MOOBL.MOTS(JGA+1)='TRAC'
  1301. ENDIF
  1302. CALL IDVISC(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1303. C
  1304. ELSEIF (IPLAC.EQ.4) THEN
  1305. INMAT=INMAT+1
  1306. CALL MODEND(MOMODL,NMOD)
  1307. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1308. IF (IPLAC.EQ.0) THEN
  1309. * MAZARS
  1310. IPLAC=1
  1311. * ELSE
  1312. * INMAT=INMAT+1
  1313. ENDIF
  1314. CALL IDENDO(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1315. ELSEIF (IPLAC.EQ.5) THEN
  1316. INMAT=INMAT+1
  1317. CALL MODPLE(MOMODL,NMOD)
  1318. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1319. IF (IPLAC.EQ.0) THEN
  1320. * TRIAXIAL P/Y
  1321. IPLAC=1
  1322. * ELSE
  1323. * INMAT=INMAT+1
  1324. ENDIF
  1325. CALL IDPLEN(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1326. ELSEIF (IPLAC.EQ.6) THEN
  1327. INMAT=INMAT+1
  1328. CALL MODENL(MOMODL,NMOD)
  1329. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  1330. IF (IPLAC.EQ.0) THEN
  1331. * ISOTROPE
  1332. IPLAC=1
  1333. * ELSE
  1334. * INMAT=INMAT+1
  1335. ENDIF
  1336. CALL IDELNL(MFR,MOOBL,MOFAC,IPLAC,IRET)
  1337. ELSEIF (IPLAC.EQ.7) THEN
  1338. C Pas de composantes supplementaires pour une loi 'VISCO_EXTERNE'
  1339. IRET = 1
  1340. ELSEIF(IPLAC.EQ.0.AND.IMATEE.EQ.31) THEN
  1341. GOTO 9999
  1342. ELSE
  1343. GOTO 9999
  1344. ENDIF
  1345. C IRET code retour de IDPLAS,IDFLUA,IDVISC,IDENDO,IDPLEN,IDELNL
  1346. C
  1347. IF (IRET.EQ.0) GOTO 9999
  1348. ENDIF
  1349. *
  1350. GOTO 9999
  1351. ENDIF
  1352. *--------------------------------------------------------------------
  1353. * CAS DE LA FORMULATION POREUX
  1354. *--------------------------------------------------------------------
  1355. CALL PLACE(FORMOD,NFOR,IPORE,'POREUX')
  1356. IF (IPORE.NE.0) THEN
  1357. *
  1358. CALL MODLIN(MOMODL,NMOD)
  1359. CALL PLACE(MOMODL,NMOD,IRET,MATMOD(1))
  1360. IF (IRET.EQ.0) GOTO 9999
  1361. *
  1362. * D'ABORD : CAS NON ISOTROPE
  1363. *
  1364. IF (NMAT.GE.2) THEN
  1365. CALL MODELA(MOMODL,NMOD)
  1366. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(2))
  1367. IF (IPLAC.NE.0) THEN
  1368. INMAT=3
  1369. IF (IPLAC.EQ.1) THEN
  1370. INMAT=3
  1371. GOTO 30
  1372. ENDIF
  1373. IF (IPLAC.EQ.2) THEN
  1374. *
  1375. * MATERIAU ELASTIQUE ORTHOTROPE
  1376. *
  1377. IF (MFR.EQ.33) THEN
  1378. *
  1379. * ELEMENTS MASSIFS
  1380. *
  1381. IF(IDIM.EQ.3)THEN
  1382. * ELEMENTS 3D
  1383. JGM=19
  1384. SEGINI,MOOBL
  1385. MOOBL.MOTS(1)='YG1 '
  1386. MOOBL.MOTS(2)='YG2 '
  1387. MOOBL.MOTS(3)='YG3 '
  1388. MOOBL.MOTS(4)='NU12'
  1389. MOOBL.MOTS(5)='NU23'
  1390. MOOBL.MOTS(6)='NU13'
  1391. MOOBL.MOTS(7)='G12 '
  1392. MOOBL.MOTS(8)='G23 '
  1393. MOOBL.MOTS(9)='G13 '
  1394. MOOBL.MOTS(10)='V1X '
  1395. MOOBL.MOTS(11)='V1Y '
  1396. MOOBL.MOTS(12)='V1Z '
  1397. MOOBL.MOTS(13)='V2X '
  1398. MOOBL.MOTS(14)='V2Y '
  1399. MOOBL.MOTS(15)='V2Z '
  1400. MOOBL.MOTS(16)='COB1'
  1401. MOOBL.MOTS(17)='COB2'
  1402. MOOBL.MOTS(18)='COB3'
  1403. MOOBL.MOTS(19)='MOB '
  1404. *
  1405. JGM=12
  1406. SEGINI,MOFAC
  1407. MOFAC.MOTS(1)='RHO '
  1408. MOFAC.MOTS(2)='ALP1'
  1409. MOFAC.MOTS(3)='ALP2'
  1410. MOFAC.MOTS(4)='ALP3'
  1411. MOFAC.MOTS(5)='ALPM'
  1412. MOFAC.MOTS(6)='PER1'
  1413. MOFAC.MOTS(7)='PER2'
  1414. MOFAC.MOTS(8)='PER3'
  1415. MOFAC.MOTS(9)='VISC'
  1416. MOFAC.MOTS(10)='KF '
  1417. MOFAC.MOTS(11)='RHOF'
  1418. MOFAC.MOTS(12)='ALPF'
  1419. ELSEIF (IDIM.EQ.2) THEN
  1420. IF(IFOUR.EQ.-2)THEN
  1421. * CONTRAINTE PLANE
  1422. JGM=12
  1423. SEGINI,MOOBL
  1424. MOOBL.MOTS(1)='YG1 '
  1425. MOOBL.MOTS(2)='YG2 '
  1426. MOOBL.MOTS(3)='NU12'
  1427. MOOBL.MOTS(4)='G12 '
  1428. MOOBL.MOTS(5)='V1X '
  1429. MOOBL.MOTS(6)='V1Y '
  1430. MOOBL.MOTS(7)='COB1'
  1431. MOOBL.MOTS(8)='COB2'
  1432. MOOBL.MOTS(9)='MOB '
  1433. MOOBL.MOTS(10)='YG3 '
  1434. MOOBL.MOTS(11)='NU23'
  1435. MOOBL.MOTS(12)='NU13'
  1436. *
  1437. JGM=11
  1438. SEGINI,MOFAC
  1439. MOFAC.MOTS(1)='RHO '
  1440. MOFAC.MOTS(2)='ALP1'
  1441. MOFAC.MOTS(3)='ALP2'
  1442. MOFAC.MOTS(4)='ALPM'
  1443. MOFAC.MOTS(5)='PER1'
  1444. MOFAC.MOTS(6)='PER2'
  1445. MOFAC.MOTS(7)='VISC'
  1446. MOFAC.MOTS(8)='KF '
  1447. MOFAC.MOTS(9)='RHOF'
  1448. MOFAC.MOTS(10)='ALPF'
  1449. MOFAC.MOTS(11)='DIM3'
  1450. ELSEIF (IFOUR.EQ.-1.OR.IFOUR.EQ.0.OR.IFOUR.EQ.-3) THEN
  1451. * DEFORMATION PLANE ,AXISYMETRIE
  1452. JGM=13
  1453. SEGINI,MOOBL
  1454. MOOBL.MOTS(1)='YG1 '
  1455. MOOBL.MOTS(2)='YG2 '
  1456. MOOBL.MOTS(3)='YG3 '
  1457. MOOBL.MOTS(4)='NU12'
  1458. MOOBL.MOTS(5)='NU23'
  1459. MOOBL.MOTS(6)='NU13'
  1460. MOOBL.MOTS(7)='G12 '
  1461. MOOBL.MOTS(8)='V1X '
  1462. MOOBL.MOTS(9)='V1Y '
  1463. MOOBL.MOTS(10)='COB1'
  1464. MOOBL.MOTS(11)='COB2'
  1465. MOOBL.MOTS(12)='COB3'
  1466. MOOBL.MOTS(13)='MOB '
  1467. *
  1468. JGM=11
  1469. SEGINI,MOFAC
  1470. MOFAC.MOTS(1)='RHO '
  1471. MOFAC.MOTS(2)='ALP1'
  1472. MOFAC.MOTS(3)='ALP2'
  1473. MOFAC.MOTS(4)='ALP3'
  1474. MOFAC.MOTS(5)='ALPM'
  1475. MOFAC.MOTS(6)='PER1'
  1476. MOFAC.MOTS(7)='PER2'
  1477. MOFAC.MOTS(8)='VISC'
  1478. MOFAC.MOTS(9)='KF '
  1479. MOFAC.MOTS(10)='RHOF'
  1480. MOFAC.MOTS(11)='ALPF'
  1481. *
  1482. ELSEIF (IFOUR.EQ.1) THEN
  1483. * AXISYMETRIE DE FOURIER
  1484. JGM=15
  1485. SEGINI,MOOBL
  1486. MOOBL.MOTS(1)='YG1 '
  1487. MOOBL.MOTS(2)='YG2 '
  1488. MOOBL.MOTS(3)='YG3 '
  1489. MOOBL.MOTS(4)='NU12'
  1490. MOOBL.MOTS(5)='NU23'
  1491. MOOBL.MOTS(6)='NU13'
  1492. MOOBL.MOTS(7)='G12 '
  1493. MOOBL.MOTS(8)='G23 '
  1494. MOOBL.MOTS(9)='G13 '
  1495. MOOBL.MOTS(10)='V1X '
  1496. MOOBL.MOTS(11)='V1Y '
  1497. MOOBL.MOTS(12)='COB1'
  1498. MOOBL.MOTS(13)='COB2'
  1499. MOOBL.MOTS(14)='COB3'
  1500. MOOBL.MOTS(15)='MOB '
  1501. *
  1502. JGM=12
  1503. SEGINI,MOFAC
  1504. MOFAC.MOTS(1)='RHO '
  1505. MOFAC.MOTS(2)='ALP1'
  1506. MOFAC.MOTS(3)='ALP2'
  1507. MOFAC.MOTS(4)='ALP3'
  1508. MOFAC.MOTS(5)='ALPM'
  1509. MOFAC.MOTS(6)='PER1'
  1510. MOFAC.MOTS(7)='PER2'
  1511. MOFAC.MOTS(8)='PER3'
  1512. MOFAC.MOTS(9)='VISC'
  1513. MOFAC.MOTS(10)='KF '
  1514. MOFAC.MOTS(11)='RHOF'
  1515. MOFAC.MOTS(12)='ALPF'
  1516. ENDIF
  1517. ENDIF
  1518. ELSE
  1519. *
  1520. * CAS NON PREVU
  1521. *
  1522. IRET = 0
  1523. GOTO 9999
  1524. ENDIF
  1525. ELSEIF (IPLAC.EQ.3)THEN
  1526. *
  1527. * MATERIAU ANISOTROPE ELASTIQUE
  1528. *
  1529. IF(MFR.EQ.33)THEN
  1530. *
  1531. * ELEMENTS MASSIFS
  1532. *
  1533. IF(IDIM.EQ.3)THEN
  1534. * ELEMENTS 3D
  1535. JGM=34
  1536. SEGINI,MOOBL
  1537. MOOBL.MOTS(1)='D11 '
  1538. MOOBL.MOTS(2)='D21 '
  1539. MOOBL.MOTS(3)='D22 '
  1540. MOOBL.MOTS(4)='D31 '
  1541. MOOBL.MOTS(5)='D32 '
  1542. MOOBL.MOTS(6)='D33 '
  1543. MOOBL.MOTS(7)='D41 '
  1544. MOOBL.MOTS(8)='D42 '
  1545. MOOBL.MOTS(9)='D43 '
  1546. MOOBL.MOTS(10)='D44 '
  1547. MOOBL.MOTS(11)='D51 '
  1548. MOOBL.MOTS(12)='D52 '
  1549. MOOBL.MOTS(13)='D53 '
  1550. MOOBL.MOTS(14)='D54 '
  1551. MOOBL.MOTS(15)='D55 '
  1552. MOOBL.MOTS(16)='D61 '
  1553. MOOBL.MOTS(17)='D62 '
  1554. MOOBL.MOTS(18)='D63 '
  1555. MOOBL.MOTS(19)='D64 '
  1556. MOOBL.MOTS(20)='D65 '
  1557. MOOBL.MOTS(21)='D66 '
  1558. MOOBL.MOTS(22)='V1X '
  1559. MOOBL.MOTS(23)='V1Y '
  1560. MOOBL.MOTS(24)='V1Z '
  1561. MOOBL.MOTS(25)='V2X '
  1562. MOOBL.MOTS(26)='V2Y '
  1563. MOOBL.MOTS(27)='V2Z '
  1564. MOOBL.MOTS(28)='COB1'
  1565. MOOBL.MOTS(29)='COB2'
  1566. MOOBL.MOTS(30)='COB3'
  1567. MOOBL.MOTS(31)='CO12'
  1568. MOOBL.MOTS(32)='CO13'
  1569. MOOBL.MOTS(33)='CO23'
  1570. MOOBL.MOTS(34)='MOB '
  1571. *
  1572. JGM=18
  1573. SEGINI,MOFAC
  1574. MOFAC.MOTS(1)='RHO '
  1575. MOFAC.MOTS(2)='ALP1'
  1576. MOFAC.MOTS(3)='ALP2'
  1577. MOFAC.MOTS(4)='ALP3'
  1578. MOFAC.MOTS(5)='AL12'
  1579. MOFAC.MOTS(6)='AL13'
  1580. MOFAC.MOTS(7)='AL23'
  1581. MOFAC.MOTS(8)='ALPM'
  1582. MOFAC.MOTS(9 )='PER1'
  1583. MOFAC.MOTS(10)='PER2'
  1584. MOFAC.MOTS(11)='PER3'
  1585. MOFAC.MOTS(12)='PE12'
  1586. MOFAC.MOTS(13)='PE13'
  1587. MOFAC.MOTS(14)='PE23'
  1588. MOFAC.MOTS(15)='VISC'
  1589. MOFAC.MOTS(16)='KF '
  1590. MOFAC.MOTS(17)='RHOF'
  1591. MOFAC.MOTS(18)='ALPF'
  1592. ELSEIF (IDIM.EQ.2) THEN
  1593. IF (IFOUR.EQ.-2) THEN
  1594. * CONTRAINTE PLANE
  1595. JGM=16
  1596. SEGINI,MOOBL
  1597. MOOBL.MOTS(1)='D11 '
  1598. MOOBL.MOTS(2)='D21 '
  1599. MOOBL.MOTS(3)='D22 '
  1600. MOOBL.MOTS(4)='D41 '
  1601. MOOBL.MOTS(5)='D42 '
  1602. MOOBL.MOTS(6)='D44 '
  1603. MOOBL.MOTS(7)='V1X '
  1604. MOOBL.MOTS(8)='V1Y '
  1605. MOOBL.MOTS(9 )='COB1'
  1606. MOOBL.MOTS(10)='COB2'
  1607. MOOBL.MOTS(11)='CO12'
  1608. MOOBL.MOTS(12)='MOB '
  1609. MOOBL.MOTS(13)='D31 '
  1610. MOOBL.MOTS(14)='D32 '
  1611. MOOBL.MOTS(15)='D33 '
  1612. MOOBL.MOTS(16)='D43 '
  1613.  
  1614. *
  1615. JGM=13
  1616. SEGINI,MOFAC
  1617. MOFAC.MOTS(1)='RHO '
  1618. MOFAC.MOTS(2)='ALP1'
  1619. MOFAC.MOTS(3)='ALP2'
  1620. MOFAC.MOTS(4)='AL12'
  1621. MOFAC.MOTS(5)='ALPM'
  1622. MOFAC.MOTS(6)='PER1'
  1623. MOFAC.MOTS(7)='PER2'
  1624. MOFAC.MOTS(8)='PE12'
  1625. MOFAC.MOTS(9)='VISC'
  1626. MOFAC.MOTS(10)='KF '
  1627. MOFAC.MOTS(11)='RHOF'
  1628. MOFAC.MOTS(12)='ALPF'
  1629. MOFAC.MOTS(13)='DIM3'
  1630. *
  1631. ELSEIF (IFOUR.EQ.-1.OR.IFOUR.EQ.0.OR.IFOUR.EQ.-3) THEN
  1632. * DEFORMATION PLANE ,AXISYMETRIE
  1633. JGM=17
  1634. SEGINI,MOOBL
  1635. MOOBL.MOTS(1)='D11 '
  1636. MOOBL.MOTS(2)='D21 '
  1637. MOOBL.MOTS(3)='D22 '
  1638. MOOBL.MOTS(4)='D31 '
  1639. MOOBL.MOTS(5)='D32 '
  1640. MOOBL.MOTS(6)='D33 '
  1641. MOOBL.MOTS(7)='D41 '
  1642. MOOBL.MOTS(8)='D42 '
  1643. MOOBL.MOTS(9)='D43 '
  1644. MOOBL.MOTS(10)='D44 '
  1645. MOOBL.MOTS(11)='V1X '
  1646. MOOBL.MOTS(12)='V1Y '
  1647. MOOBL.MOTS(13)='COB1'
  1648. MOOBL.MOTS(14)='COB2'
  1649. MOOBL.MOTS(15)='CO12'
  1650. MOOBL.MOTS(16)='COB3'
  1651. MOOBL.MOTS(17)='MOB '
  1652. *
  1653. JGM=13
  1654. SEGINI,MOFAC
  1655. MOFAC.MOTS(1)='RHO '
  1656. MOFAC.MOTS(2)='ALP1'
  1657. MOFAC.MOTS(3)='ALP2'
  1658. MOFAC.MOTS(4)='AL12'
  1659. MOFAC.MOTS(5)='ALP3'
  1660. MOFAC.MOTS(6)='ALPM'
  1661. MOFAC.MOTS(7)='PER1'
  1662. MOFAC.MOTS(8)='PER2'
  1663. MOFAC.MOTS(9)='PE12'
  1664. MOFAC.MOTS(10)='VISC'
  1665. MOFAC.MOTS(11)='KF '
  1666. MOFAC.MOTS(12)='RHOF'
  1667. MOFAC.MOTS(13)='ALPF'
  1668. *
  1669. ELSEIF (IFOUR.EQ.1) THEN
  1670. * AXISYMETRIE DE FOURIER
  1671. JGM=20
  1672. SEGINI,MOOBL
  1673. MOOBL.MOTS(1)='D11 '
  1674. MOOBL.MOTS(2)='D21 '
  1675. MOOBL.MOTS(3)='D22 '
  1676. MOOBL.MOTS(4)='D31 '
  1677. MOOBL.MOTS(5)='D32 '
  1678. MOOBL.MOTS(6)='D33 '
  1679. MOOBL.MOTS(7)='D41 '
  1680. MOOBL.MOTS(8)='D42 '
  1681. MOOBL.MOTS(9)='D43 '
  1682. MOOBL.MOTS(10)='D44 '
  1683. MOOBL.MOTS(11)='D55 '
  1684. MOOBL.MOTS(12)='D65 '
  1685. MOOBL.MOTS(13)='D66 '
  1686. MOOBL.MOTS(14)='V1X '
  1687. MOOBL.MOTS(15)='V1Y '
  1688. MOOBL.MOTS(16)='COB1'
  1689. MOOBL.MOTS(17)='COB2'
  1690. MOOBL.MOTS(18)='CO12'
  1691. MOOBL.MOTS(19)='COB3'
  1692. MOOBL.MOTS(20)='MOB '
  1693. *
  1694. JGM=14
  1695. SEGINI,MOFAC
  1696. MOFAC.MOTS(1)='RHO '
  1697. MOFAC.MOTS(2)='ALP1'
  1698. MOFAC.MOTS(3)='ALP2'
  1699. MOFAC.MOTS(4)='AL12'
  1700. MOFAC.MOTS(5)='ALP3'
  1701. MOFAC.MOTS(6)='ALPM'
  1702. MOFAC.MOTS(7)='PER1'
  1703. MOFAC.MOTS(8)='PER2'
  1704. MOFAC.MOTS(9)='PE12'
  1705. MOFAC.MOTS(10)='PER3'
  1706. MOFAC.MOTS(11)='VISC'
  1707. MOFAC.MOTS(12)='KF '
  1708. MOFAC.MOTS(13)='RHOF'
  1709. MOFAC.MOTS(14)='ALPF'
  1710. ENDIF
  1711. ENDIF
  1712. ELSE
  1713. *
  1714. * CAS NON PREVU
  1715. *
  1716. IRET = 0
  1717. GOTO 9999
  1718. ENDIF
  1719.  
  1720. ELSEIF (IPLAC.EQ.6) THEN
  1721. C
  1722. C MATERIAU ELASTIQUE UNIDIRECTIONNEL
  1723. C
  1724. IF(MFR.EQ.33)THEN
  1725. IF (IDIM.EQ.3) THEN
  1726. JGM=9
  1727. SEGINI,MOOBL
  1728. MOOBL.MOTS(1)='YOUN'
  1729. MOOBL.MOTS(2)='V1X '
  1730. MOOBL.MOTS(3)='V1Y '
  1731. MOOBL.MOTS(4)='V1Z '
  1732. MOOBL.MOTS(5)='V2X '
  1733. MOOBL.MOTS(6)='V2Y '
  1734. MOOBL.MOTS(7)='V2Z '
  1735. MOOBL.MOTS(8)='COB '
  1736. MOOBL.MOTS(9)='MOB '
  1737. ELSE
  1738. JGM=5
  1739. SEGINI,MOOBL
  1740. MOOBL.MOTS(1)='YOUN'
  1741. MOOBL.MOTS(2)='V1X '
  1742. MOOBL.MOTS(3)='V1Y '
  1743. MOOBL.MOTS(4)='COB '
  1744. MOOBL.MOTS(5)='MOB '
  1745. ENDIF
  1746. *
  1747. IF(IFOUR.EQ.-2) THEN
  1748. JGM=9
  1749. ELSE
  1750. JGM=8
  1751. ENDIF
  1752. SEGINI,MOFAC
  1753. MOFAC.MOTS(1)='RHO '
  1754. MOFAC.MOTS(2)='ALPH'
  1755. MOFAC.MOTS(3)='ALPM'
  1756. MOFAC.MOTS(4)='PERM'
  1757. MOFAC.MOTS(5)='VISC'
  1758. MOFAC.MOTS(6)='KF '
  1759. MOFAC.MOTS(7)='RHOF'
  1760. MOFAC.MOTS(8)='ALPF'
  1761. IF(IFOUR.EQ.-2) MOFAC.MOTS(9)='DIM3'
  1762. ELSE
  1763. *
  1764. * CAS NON PREVU
  1765. *
  1766. IRET = 0
  1767. GO TO 9999
  1768. ENDIF
  1769. *
  1770. ENDIF
  1771. INMAT=3
  1772. GOTO 40
  1773. ELSE
  1774. INMAT=2
  1775. GOTO 30
  1776. ENDIF
  1777. ENDIF
  1778. INMAT=0
  1779. 30 CONTINUE
  1780. *
  1781. * CAS MATERIAU POREUX ELASTIQUE ISOTROPE
  1782. *
  1783. IF(MELE.GE.79.AND.MELE.LE.83)THEN
  1784. *
  1785. JGM=4
  1786. SEGINI,MOOBL
  1787. MOOBL.MOTS(1) ='YOUN'
  1788. MOOBL.MOTS(2) ='NU '
  1789. MOOBL.MOTS(3) ='COB '
  1790. MOOBL.MOTS(4) ='MOB '
  1791. *
  1792. IF(IFOUR.EQ.-2) THEN
  1793. JGM=9
  1794. ELSE
  1795. JGM=8
  1796. ENDIF
  1797. SEGINI,MOFAC
  1798. MOFAC.MOTS(1)='RHOF'
  1799. MOFAC.MOTS(2)='ALPF'
  1800. MOFAC.MOTS(3)='ALPM'
  1801. MOFAC.MOTS(4)='PERM'
  1802. MOFAC.MOTS(5)='VISC'
  1803. MOFAC.MOTS(6)='KF '
  1804. MOFAC.MOTS(7)='RHO '
  1805. MOFAC.MOTS(8)='ALPH'
  1806. IF(IFOUR.EQ.-2) MOFAC.MOTS(9)='DIM3'
  1807. *
  1808. ELSEIF(MELE.GE.108.AND.MELE.LE.110)THEN
  1809. *
  1810. * CAS DES JOINTS POREUX ISOTROPES (VALABLE EN 2D COMME EN 3D)
  1811. *
  1812. JGM=4
  1813. SEGINI,MOOBL
  1814. MOOBL.MOTS(1)='KS '
  1815. MOOBL.MOTS(2)='KN '
  1816. MOOBL.MOTS(3)='COB '
  1817. MOOBL.MOTS(4)='MOB '
  1818. *
  1819. JGM=4
  1820. SEGINI,MOFAC
  1821. MOFAC.MOTS(1)='PERT'
  1822. MOFAC.MOTS(2)='PERH'
  1823. MOFAC.MOTS(3)='PERB'
  1824. MOFAC.MOTS(4)='VISC'
  1825. *
  1826. ELSEIF(MELE.GE.173.AND.MELE.LE.177)THEN
  1827. *
  1828. JGM=10
  1829. SEGINI,MOOBL
  1830. MOOBL.MOTS(1) ='YOUN'
  1831. MOOBL.MOTS(2) ='NU '
  1832. MOOBL.MOTS(3) ='COP1'
  1833. MOOBL.MOTS(4) ='COP2'
  1834. MOOBL.MOTS(5) ='CPP1'
  1835. MOOBL.MOTS(6) ='CPP2'
  1836. MOOBL.MOTS(7) ='KK11'
  1837. MOOBL.MOTS(8) ='KK12'
  1838. MOOBL.MOTS(9) ='KK21'
  1839. MOOBL.MOTS(10)='KK22'
  1840. *
  1841. IF(IFOUR.EQ.-2) THEN
  1842. JGM=9
  1843. ELSE
  1844. JGM=8
  1845. ENDIF
  1846. SEGINI,MOFAC
  1847. MOFAC.MOTS(1)='RHOF'
  1848. MOFAC.MOTS(2)='ALPF'
  1849. MOFAC.MOTS(3)='ALPM'
  1850. MOFAC.MOTS(4)='PK11'
  1851. MOFAC.MOTS(5)='PK12'
  1852. MOFAC.MOTS(6)='PK21'
  1853. MOFAC.MOTS(7)='PK22'
  1854. MOFAC.MOTS(8)='ALPH'
  1855. IF(IFOUR.EQ.-2) MOFAC.MOTS(9)='DIM3'
  1856. *
  1857. ELSEIF(MELE.GE.185.AND.MELE.LE.187)THEN
  1858. *
  1859. * CAS DES JOINTS POREUX ISOTROPES (VALABLE EN 2D COMME EN 3D)
  1860. *
  1861. JGM=10
  1862. SEGINI,MOOBL
  1863. MOOBL.MOTS(1)='KS '
  1864. MOOBL.MOTS(2)='KN '
  1865. MOOBL.MOTS(3)='COP1'
  1866. MOOBL.MOTS(4)='COP2'
  1867. MOOBL.MOTS(5)='CPP1'
  1868. MOOBL.MOTS(6)='CPP2'
  1869. MOOBL.MOTS(7)='KK11'
  1870. MOOBL.MOTS(8)='KK12'
  1871. MOOBL.MOTS(9)='KK21'
  1872. MOOBL.MOTS(10)='KK22'
  1873. *
  1874. IF(IFOUR.EQ.-2) THEN
  1875. JGM=18
  1876. ELSE
  1877. JGM=17
  1878. ENDIF
  1879. SEGINI,MOFAC
  1880. MOFAC.MOTS(1)='RHOF'
  1881. MOFAC.MOTS(2)='ALPF'
  1882. MOFAC.MOTS(3)='ALPM'
  1883. MOFAC.MOTS(4)='PT11'
  1884. MOFAC.MOTS(5)='PH11'
  1885. MOFAC.MOTS(6)='PB11'
  1886. MOFAC.MOTS(7)='PT12'
  1887. MOFAC.MOTS(8)='PH12'
  1888. MOFAC.MOTS(9)='PB12'
  1889. MOFAC.MOTS(10)='PT21'
  1890. MOFAC.MOTS(11)='PH21'
  1891. MOFAC.MOTS(12)='PB21'
  1892. MOFAC.MOTS(13)='PT22'
  1893. MOFAC.MOTS(14)='PH22'
  1894. MOFAC.MOTS(15)='PB22'
  1895. MOFAC.MOTS(16)='RHO '
  1896. MOFAC.MOTS(17)='ALPH'
  1897. IF(IFOUR.EQ.-2) MOFAC.MOTS(18)='DIM3'
  1898.  
  1899. *
  1900. ELSEIF(MELE.GE.178.AND.MELE.LE.182)THEN
  1901. *
  1902. JGM=17
  1903. SEGINI,MOOBL
  1904. MOOBL.MOTS(1)='YOUN'
  1905. MOOBL.MOTS(2)='NU '
  1906. MOOBL.MOTS(3)='COP1'
  1907. MOOBL.MOTS(4)='COP2'
  1908. MOOBL.MOTS(5)='COP3'
  1909. MOOBL.MOTS(6)='CPP1'
  1910. MOOBL.MOTS(7)='CPP2'
  1911. MOOBL.MOTS(8)='CPP3'
  1912. MOOBL.MOTS(9)='KK11'
  1913. MOOBL.MOTS(10)='KK12'
  1914. MOOBL.MOTS(11)='KK13'
  1915. MOOBL.MOTS(12)='KK21'
  1916. MOOBL.MOTS(13)='KK22'
  1917. MOOBL.MOTS(14)='KK23'
  1918. MOOBL.MOTS(15)='KK31'
  1919. MOOBL.MOTS(16)='KK32'
  1920. MOOBL.MOTS(17)='KK33'
  1921. *
  1922. IF(IFOUR.EQ.-2) THEN
  1923. JGM=15
  1924. ELSE
  1925. JGM=14
  1926. ENDIF
  1927. SEGINI,MOFAC
  1928. MOFAC.MOTS(1)='RHOF'
  1929. MOFAC.MOTS(2)='ALPF'
  1930. MOFAC.MOTS(3)='ALPM'
  1931. MOFAC.MOTS(4)='PK11'
  1932. MOFAC.MOTS(5)='PK12'
  1933. MOFAC.MOTS(6)='PK13'
  1934. MOFAC.MOTS(7)='PK21'
  1935. MOFAC.MOTS(8)='PK22'
  1936. MOFAC.MOTS(9)='PK23'
  1937. MOFAC.MOTS(10)='PK31'
  1938. MOFAC.MOTS(11)='PK32'
  1939. MOFAC.MOTS(12)='PK33'
  1940. MOFAC.MOTS(13)='RHO '
  1941. MOFAC.MOTS(14)='ALPH'
  1942. IF(IFOUR.EQ.-2) MOFAC.MOTS(15)='DIM3'
  1943. *
  1944. ELSEIF(MELE.GE.188.AND.MELE.LE.190)THEN
  1945. *
  1946. * CAS DES JOINTS POREUX ISOTROPES (VALABLE EN 2D COMME EN 3D)
  1947. *
  1948. JGM=17
  1949. SEGINI,MOOBL
  1950. MOOBL.MOTS(1)='KS '
  1951. MOOBL.MOTS(2)='KN '
  1952. MOOBL.MOTS(3)='COP1'
  1953. MOOBL.MOTS(4)='COP2'
  1954. MOOBL.MOTS(5)='COP3'
  1955. MOOBL.MOTS(6)='CPP1'
  1956. MOOBL.MOTS(7)='CPP2'
  1957. MOOBL.MOTS(8)='CPP3'
  1958. MOOBL.MOTS(9)='KK11'
  1959. MOOBL.MOTS(10)='KK12'
  1960. MOOBL.MOTS(11)='KK13'
  1961. MOOBL.MOTS(12)='KK21'
  1962. MOOBL.MOTS(13)='KK22'
  1963. MOOBL.MOTS(14)='KK23'
  1964. MOOBL.MOTS(15)='KK31'
  1965. MOOBL.MOTS(16)='KK32'
  1966. MOOBL.MOTS(17)='KK33'
  1967. *
  1968. IF(IFOUR.EQ.-2) THEN
  1969. JGM=33
  1970. ELSE
  1971. JGM=32
  1972. ENDIF
  1973. SEGINI,MOFAC
  1974. MOFAC.MOTS(1)='RHOF'
  1975. MOFAC.MOTS(2)='ALPF'
  1976. MOFAC.MOTS(3)='ALPM'
  1977. MOFAC.MOTS(4)='PT11'
  1978. MOFAC.MOTS(5)='PH11'
  1979. MOFAC.MOTS(6)='PB11'
  1980. MOFAC.MOTS(7)='PT12'
  1981. MOFAC.MOTS(8)='PH12'
  1982. MOFAC.MOTS(9)='PB12'
  1983. MOFAC.MOTS(10)='PT13'
  1984. MOFAC.MOTS(11)='PH13'
  1985. MOFAC.MOTS(12)='PB13'
  1986. MOFAC.MOTS(13)='PT21'
  1987. MOFAC.MOTS(14)='PH21'
  1988. MOFAC.MOTS(15)='PB21'
  1989. MOFAC.MOTS(16)='PT22'
  1990. MOFAC.MOTS(17)='PH22'
  1991. MOFAC.MOTS(18)='PB22'
  1992. MOFAC.MOTS(19)='PT23'
  1993. MOFAC.MOTS(20)='PH23'
  1994. MOFAC.MOTS(21)='PB23'
  1995. MOFAC.MOTS(22)='PT31'
  1996. MOFAC.MOTS(23)='PH31'
  1997. MOFAC.MOTS(24)='PB31'
  1998. MOFAC.MOTS(25)='PT32'
  1999. MOFAC.MOTS(26)='PH32'
  2000. MOFAC.MOTS(27)='PB32'
  2001. MOFAC.MOTS(28)='PT33'
  2002. MOFAC.MOTS(29)='PH33'
  2003. MOFAC.MOTS(30)='PB33'
  2004. MOFAC.MOTS(31)='RHO '
  2005. MOFAC.MOTS(32)='ALPH'
  2006. IF(IFOUR.EQ.-2) MOFAC.MOTS(33)='DIM3'
  2007.  
  2008. ENDIF
  2009. *
  2010. IF (INMAT.EQ.0) THEN
  2011. ** IRET = 0
  2012. GOTO 9999
  2013. ENDIF
  2014. *
  2015. 40 CONTINUE
  2016. IF (NMAT.GE.INMAT) THEN
  2017. CALL MODNLI(MOMODL,NMOD)
  2018. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  2019. IF (IPLAC.EQ.1) THEN
  2020. INMAT=INMAT+1
  2021. CALL MODPLA(MOMODL,NMOD)
  2022. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  2023. IF (IPLAC.EQ.0) THEN
  2024. * ISOTROPE
  2025. IPLAC=1
  2026. * ELSE
  2027. * INMAT=INMAT+1
  2028. ENDIF
  2029. CALL IDPLAS(MFR,MOOBL,MOFAC,IPLAC,IRET)
  2030. IF (IRET.EQ.0) GOTO 9999
  2031. ELSEIF (IPLAC.EQ.2) THEN
  2032. INMAT=INMAT+1
  2033. CALL MODFLU(MOMODL,NMOD)
  2034. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  2035. IF (IPLAC.EQ.0) THEN
  2036. * NORTON
  2037. IPLAC=1
  2038. * ELSE
  2039. * INMAT=INMAT+1
  2040. ENDIF
  2041. CALL IDFLUA(MFR,MOOBL,MOFAC,IPLAC,IRET)
  2042. IF (IRET.EQ.0) GOTO 9999
  2043. ELSEIF (IPLAC.EQ.3) THEN
  2044. INMAT=INMAT+1
  2045. CALL MODVIS(MOMODL,NMOD)
  2046. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  2047. IF (IPLAC.EQ.0) THEN
  2048. * CHABOCHE
  2049. IPLAC=2
  2050. * ELSE
  2051. * INMAT=INMAT+1
  2052. ENDIF
  2053. CALL IDVISC(MFR,MOOBL,MOFAC,IPLAC,IRET)
  2054. IF (IRET.EQ.0) GOTO 9999
  2055. ELSEIF (IPLAC.EQ.4) THEN
  2056. INMAT=INMAT+1
  2057. CALL MODEND(MOMODL,NMOD)
  2058. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(INMAT))
  2059. IF (IPLAC.EQ.0) THEN
  2060. * MAZARS
  2061. IPLAC=1
  2062. * ELSE
  2063. * INMAT=INMAT+1
  2064. ENDIF
  2065. CALL IDENDO(MFR,MOOBL,MOFAC,IPLAC,IRET)
  2066. IF (IRET.EQ.0) GOTO 9999
  2067. ELSE
  2068. * GOTO 9999
  2069. ENDIF
  2070. *
  2071. * En cas de creation de materiaux combinant plusieurs materiaux
  2072. * deja existant Ex ELASTIQUE ISOTROPE PLASTIQUE PARFAIT FLUAGE N
  2073. * GOTO 40
  2074. *
  2075. * GOTO 9999
  2076. ENDIF
  2077. GOTO 9999
  2078. ENDIF
  2079.  
  2080. *--------------------------------------------------------------------
  2081. * CAS DE LA FORMULATION CONTACT
  2082. *--------------------------------------------------------------------
  2083. CALL PLACE(FORMOD,NFOR,ICONT,'CONTACT')
  2084. IF (ICONT.NE.0) THEN
  2085. CALL MODFRO(MOMODL,NMOD)
  2086. iplla =0
  2087. do iou = 1,NMAT
  2088. CALL PLACE(MOMODL(1),5,IPLAC,MATMOD(iou))
  2089. iplla = max(iplac,iplla)
  2090. enddo
  2091. IF (iplla.EQ.0) THEN
  2092. IRET = 0
  2093. GOTO 9999
  2094. ENDIF
  2095. * JGM=1
  2096. * SEGINI,MOFAC
  2097. * MOFAC.MOTS(1)='JEU'
  2098. CALL IDFRO(MOOBL,MOFAC,iplla,IRET)
  2099. GOTO 9999
  2100. ENDIF
  2101.  
  2102. *--------------------------------------------------------------------
  2103. * CAS DE LA FORMULATION MAGNETODYNAMIQUE
  2104. *--------------------------------------------------------------------
  2105. CALL PLACE(FORMOD,NFOR,ICONV,'MAGNETODYNAMIQUE')
  2106. IF (ICONV.NE.0) THEN
  2107. *
  2108. * FORMULATION EN COQUES
  2109. IF(MFR.EQ.3) THEN
  2110. CALL PLACE(MATMOD,NMAT,ISOT,'ISOTROPE')
  2111. IF(ISOT.NE.0) THEN
  2112. JGM=3
  2113. SEGINI,MOOBL
  2114. MOOBL.MOTS(1)='ETA'
  2115. MOOBL.MOTS(2)='PERM'
  2116. MOOBL.MOTS(3)='EPAI'
  2117. ELSE
  2118. CALL PLACE(MATMOD,NMAT,IORTH,'ORTHOTROPE')
  2119. IF(IORTH.NE.0) THEN
  2120. JGM=4
  2121. SEGINI,MOOBL
  2122. MOOBL.MOTS(1)='ETA1'
  2123. MOOBL.MOTS(2)='ETA2'
  2124. MOOBL.MOTS(3)='PERM'
  2125. MOOBL.MOTS(4)='EPAI'
  2126. ENDIF
  2127. ENDIF
  2128. ENDIF
  2129. *
  2130. GOTO 9999
  2131. ENDIF
  2132. *--------------------------------------------------------------------
  2133. * CAS DE LA FORMULATION FISSURE
  2134. *--------------------------------------------------------------------
  2135. CALL PLACE(FORMOD,NFOR,ICONV,'FISSURE')
  2136. IF (ICONV.NE.0) THEN
  2137. *
  2138. * si POISEU_BLASIUS ou POISEU_COLEBROOK ou par defaut
  2139. JGM=1
  2140. SEGINI,MOOBL
  2141. MOOBL.MOTS(1)='RUGO'
  2142. * si FROTTEMENT1 ou FROTTEMENT2
  2143. CALL PLACE(MATMOD,NMAT,IFT1,'FROTTEMENT1')
  2144. CALL PLACE(MATMOD,NMAT,IFT2,'FROTTEMENT2')
  2145. IF(IFT1.NE.0.OR.IFT2.NE.0) THEN
  2146. JGM=7
  2147. SEGADJ,MOOBL
  2148. MOOBL.MOTS(2)='REC'
  2149. MOOBL.MOTS(3)='FK'
  2150. MOOBL.MOTS(4)='FA'
  2151. MOOBL.MOTS(5)='FB'
  2152. MOOBL.MOTS(6)='FC'
  2153. MOOBL.MOTS(7)='FD'
  2154. ELSE
  2155. * si FROTTEMENT3 ou FROTTEMENT4
  2156. CALL PLACE(MATMOD,NMAT,IFT1,'FROTTEMENT3')
  2157. CALL PLACE(MATMOD,NMAT,IFT2,'FROTTEMENT4')
  2158. IF(IFT1.NE.0.OR.IFT2.NE.0) THEN
  2159. JGM=2
  2160. SEGADJ,MOOBL
  2161. MOOBL.MOTS(2)='FK'
  2162. ENDIF
  2163. ENDIF
  2164. GOTO 9999
  2165. ENDIF
  2166.  
  2167. *--------------------------------------------------------------------
  2168. * CAS DE LA FORMULATION MELANGE
  2169. *--------------------------------------------------------------------
  2170. CALL PLACE(FORMOD,NFOR,ICONV,'MELANGE')
  2171. IF (ICONV.NE.0) THEN
  2172. CALL MODMEL(MOMODL,NMOD)
  2173. CALL PLACE(MOMODL,NMOD,IPLAC,MATMOD(1))
  2174. if (iplac.eq.0) then
  2175. iret = 0
  2176. goto 9999
  2177. endif
  2178. INMAT=1
  2179. *
  2180. * a priori elements massifs ou coques : pas de verif
  2181. *
  2182. IF (IPLAC.NE.3.AND.IPLAC.NE.4) THEN
  2183. jgm = 0
  2184. segini,moobl
  2185. segini,mofac
  2186. CALL IDMETA(MFR,MOOBL,MOFAC,IPLAC,IRET)
  2187. IF (IRET.EQ.0) GOTO 9999
  2188. * construit les noms de composante en PARALLELE ou en SERIE
  2189. c* ELSEIF (iplac.eq.3.or.iplac.eq.4) THEN
  2190. ELSE
  2191. jgm = imodel.ivamod(/1)
  2192. segini,moobl
  2193. kc1 = 0
  2194. do ic1 = 1,jgm
  2195. if (tymode(ic1).eq.'IMODEL') then
  2196. imode2 = ivamod(ic1)
  2197. segact imode2
  2198. lozut = .false.
  2199. if (kc1.ge.1) then
  2200. do kkc1 = 1, kc1
  2201. if (imode2.conmod(17:20).eq.moobl.mots(kkc1)) then
  2202. lozut = .true.
  2203. endif
  2204. enddo
  2205. endif
  2206. if (.not.lozut) then
  2207. kc1 = kc1 + 1
  2208. moobl.mots(kc1) = imode2.conmod(17:20)
  2209. endif
  2210. segdes imode2
  2211. endif
  2212. enddo
  2213. jgm = kc1
  2214. segadj,moobl
  2215. ENDIF
  2216. GOTO 9999
  2217. ENDIF
  2218.  
  2219. *--------------------------------------------------------------------
  2220. * CAS DE LA FORMULATION LIAISON
  2221. *--------------------------------------------------------------------
  2222. CALL PLACE(FORMOD,NFOR,ICONV,'LIAISON')
  2223. IF (ICONV.NE.0) THEN
  2224. iplac = imatee
  2225. if (iplac.eq.0) then
  2226. iret = 0
  2227. goto 9999
  2228. endif
  2229. *
  2230. JGM = 0
  2231. SEGINI,MOOBL
  2232. SEGINI,MOFAC
  2233. * 'SORT' facultatif dans tous les cas
  2234. IF (iplac.EQ.1) THEN
  2235. *PO_PL_FL
  2236. JGM0 = MOOBL.MOTS(/2)
  2237. JGM = JGM0+7
  2238. SEGADJ,MOOBL
  2239. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2240. MOOBL.MOTS(JGM0 + 2) ='INER'
  2241. MOOBL.MOTS(JGM0 + 3) ='CONV'
  2242. MOOBL.MOTS(JGM0 + 4) ='VISC'
  2243. MOOBL.MOTS(JGM0 + 5) ='PELO'
  2244. MOOBL.MOTS(JGM0 + 6) ='PRAP'
  2245. MOOBL.MOTS(JGM0 + 7) ='JFLU'
  2246. ELSEIF (iplac.eq.2) then
  2247. *PO_PL_FR
  2248. JGM0 = MOOBL.MOTS(/2)
  2249. JGM = JGM0+7
  2250. SEGADJ,MOOBL
  2251. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2252. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2253. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2254. MOOBL.MOTS(JGM0 + 4) ='GLIS'
  2255. MOOBL.MOTS(JGM0 + 5) ='ADHE'
  2256. MOOBL.MOTS(JGM0 + 6) ='RTAN'
  2257. MOOBL.MOTS(JGM0 + 7) ='ATAN'
  2258. JGM0 = MOFAC.MOTS(/2)
  2259. JGM = JGM0 +2
  2260. SEGADJ,MOFAC
  2261. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2262. MOFAC.MOTS(JGM0+2) = 'LOIC'
  2263.  
  2264. ELSEIF (iplac.eq.3) then
  2265. *PO_PL
  2266. JGM0 = MOOBL.MOTS(/2)
  2267. JGM = JGM0+3
  2268. SEGADJ,MOOBL
  2269. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2270. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2271. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2272. JGM0 = MOFAC.MOTS(/2)
  2273. JGM = JGM0+4
  2274. SEGADJ,MOFAC
  2275. MOFAC.MOTS(JGM0+1) = 'LOIC'
  2276. MOFAC.MOTS(JGM0+2) = 'PERM'
  2277. MOFAC.MOTS(JGM0 + 3) ='SPLA'
  2278. MOFAC.MOTS(JGM0 + 4) ='AMOR'
  2279.  
  2280. ELSEIF (iplac.eq.4) then
  2281. *PO_PO_FR
  2282. JGM0 = MOOBL.MOTS(/2)
  2283. JGM = JGM0 + 8
  2284. SEGADJ,MOOBL
  2285. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2286. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2287. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2288. MOOBL.MOTS(JGM0 + 4) ='POIB'
  2289. MOOBL.MOTS(JGM0 + 5) ='ADHE'
  2290. MOOBL.MOTS(JGM0 + 6) ='RTAN'
  2291. MOOBL.MOTS(JGM0 + 7) ='ATAN'
  2292. MOOBL.MOTS(JGM0 + 8) ='GLIS'
  2293. JGM0 = MOFAC.MOTS(/2)
  2294. JGM = JGM0 + 3
  2295. SEGADJ,MOFAC
  2296. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2297. MOFAC.MOTS(JGM0+2) = 'LOIC'
  2298. MOFAC.MOTS(JGM0+3) = 'MODE'
  2299.  
  2300. ELSEIF (iplac.eq.5) then
  2301. *PO_PO_DP
  2302. JGM0 = MOOBL.MOTS(/2)
  2303. JGM = JGM0 + 6
  2304. SEGADJ,MOOBL
  2305. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2306. MOOBL.MOTS(JGM0 + 2) ='ECRO'
  2307. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2308. MOOBL.MOTS(JGM0 + 4) ='POIB'
  2309. MOOBL.MOTS(JGM0 + 5) ='PERM'
  2310. MOOBL.MOTS(JGM0 + 6) = 'LOIC'
  2311. JGM0 = MOFAC.MOTS(/2)
  2312. JGM = JGM0 + 1
  2313. SEGADJ,MOFAC
  2314. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2315.  
  2316. ELSEIF (iplac.eq.6) then
  2317. *PO_PO_RP
  2318. JGM0 = MOOBL.MOTS(/2)
  2319. JGM = JGM0 + 6
  2320. SEGADJ,MOOBL
  2321. MOOBL.MOTS(JGM0 + 1) ='AXRO'
  2322. MOOBL.MOTS(JGM0 + 2) ='ECRO'
  2323. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2324. MOOBL.MOTS(JGM0 + 4) ='POIB'
  2325. MOOBL.MOTS(JGM0 + 5) ='PERM'
  2326. MOOBL.MOTS(JGM0 + 6) = 'LOIC'
  2327. JGM0 = MOFAC.MOTS(/2)
  2328. JGM = JGM0 + 2
  2329. SEGADJ,MOFAC
  2330. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2331. MOFAC.MOTS(JGM0+2) = 'ELAS'
  2332.  
  2333. ELSEIF (iplac.eq.7) then
  2334. *PO_PO
  2335. JGM0 = MOOBL.MOTS(/2)
  2336. JGM = JGM0 + 5
  2337. SEGADJ,MOOBL
  2338. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2339. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2340. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2341. MOOBL.MOTS(JGM0 + 4) ='POIB'
  2342. MOOBL.MOTS(JGM0 + 5) ='PERM'
  2343. JGM0 = MOFAC.MOTS(/2)
  2344. JGM = JGM0 + 2
  2345. SEGADJ,MOFAC
  2346. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2347. MOFAC.MOTS(JGM0+2) = 'LOIC'
  2348.  
  2349. ELSEIF (iplac.eq.8) then
  2350. *PO_CE_MO
  2351. JGM0 = MOOBL.MOTS(/2)
  2352. JGM = JGM0 + 8
  2353. SEGADJ,MOOBL
  2354. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2355. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2356. MOOBL.MOTS(JGM0 + 3) ='PCER'
  2357. MOOBL.MOTS(JGM0 + 4) ='RAYO'
  2358. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2359. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2360. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2361. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2362. JGM0 = MOFAC.MOTS(/2)
  2363. JGM = JGM0 + 2
  2364. SEGADJ,MOFAC
  2365. MOFAC.MOTS(JGM0+1) = 'CINT'
  2366. MOFAC.MOTS(JGM0+2) = 'AMOR'
  2367.  
  2368. ELSEIF (iplac.eq.9) then
  2369. *PO_CE_FR
  2370. JGM0 = MOOBL.MOTS(/2)
  2371. JGM = JGM0 + 8
  2372. SEGADJ,MOOBL
  2373. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2374. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2375. MOOBL.MOTS(JGM0 + 3) ='EXCE'
  2376. MOOBL.MOTS(JGM0 + 4) ='RAYO'
  2377. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2378. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2379. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2380. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2381. JGM0 = MOFAC.MOTS(/2)
  2382. JGM = JGM0 + 2
  2383. SEGADJ,MOFAC
  2384. MOFAC.MOTS(JGM0+1) = 'CINT'
  2385. MOFAC.MOTS(JGM0+2) = 'AMOR'
  2386.  
  2387. ELSEIF (iplac.eq.10) then
  2388. *PO_CE
  2389. JGM0 = MOOBL.MOTS(/2)
  2390. JGM = JGM0 + 4
  2391. SEGADJ,MOOBL
  2392. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2393. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2394. MOOBL.MOTS(JGM0 + 3) ='EXCE'
  2395. MOOBL.MOTS(JGM0 + 4) ='RAYO'
  2396. JGM0 = MOFAC.MOTS(/2)
  2397. JGM = JGM0 + 1
  2398. SEGADJ,MOFAC
  2399. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2400.  
  2401. ELSEIF (iplac.eq.11) then
  2402. *CE_PL_FR
  2403. JGM0 = MOOBL.MOTS(/2)
  2404. JGM = JGM0 + 8
  2405. SEGADJ,MOOBL
  2406. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2407. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2408. MOOBL.MOTS(JGM0 + 3) ='JEU'
  2409. MOOBL.MOTS(JGM0 + 4) ='RAYS'
  2410. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2411. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2412. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2413. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2414. JGM0 = MOFAC.MOTS(/2)
  2415. JGM = JGM0+1
  2416. SEGADJ,MOFAC
  2417. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2418.  
  2419. ELSEIF (iplac.eq.12) then
  2420. *CE_CE_FR
  2421. JGM0 = MOOBL.MOTS(/2)
  2422. JGM = JGM0 + 9
  2423. SEGADJ,MOOBL
  2424. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2425. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2426. MOOBL.MOTS(JGM0 + 3) ='EXCE'
  2427. MOOBL.MOTS(JGM0 + 4) ='RAYS'
  2428. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2429. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2430. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2431. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2432. MOOBL.MOTS(JGM0 + 9) ='RAYB'
  2433. JGM0 = MOFAC.MOTS(/2)
  2434. JGM = JGM0 + 2
  2435. SEGADJ,MOFAC
  2436. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2437. MOFAC.MOTS(JGM0+2) = 'CINT'
  2438.  
  2439. ELSEIF (iplac.eq.13.or.iplac.eq.14) then
  2440. *PR_PR_IN ou PR_PR_EX
  2441. JGM0 = MOOBL.MOTS(/2)
  2442. JGM = JGM0 + 5
  2443. SEGADJ,MOOBL
  2444. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2445. MOOBL.MOTS(JGM0 + 2) ='RAID'
  2446. MOOBL.MOTS(JGM0 + 3) ='PFIX'
  2447. MOOBL.MOTS(JGM0 + 4) ='PMOB'
  2448. MOOBL.MOTS(JGM0 + 5) ='ERAI'
  2449.  
  2450. ELSEIF (iplac.eq.15) then
  2451. *LI_LI_FR
  2452. JGM0 = MOOBL.MOTS(/2)
  2453. JGM = JGM0 + 9
  2454. SEGADJ,MOOBL
  2455. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2456. MOOBL.MOTS(JGM0 + 2) ='LIMA'
  2457. MOOBL.MOTS(JGM0 + 3) ='LIES'
  2458. MOOBL.MOTS(JGM0 + 4) ='RAID'
  2459. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2460. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2461. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2462. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2463. MOOBL.MOTS(JGM0 + 9) ='JEU'
  2464. JGM0 = MOFAC.MOTS(/2)
  2465. JGM = JGM0 + 3
  2466. SEGADJ,MOFAC
  2467. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2468. MOFAC.MOTS(JGM0+2) = 'RECH'
  2469. MOFAC.MOTS(JGM0+3) = 'SYME'
  2470.  
  2471. ELSEIF (iplac.eq.16) then
  2472. *LI_CE_FR
  2473. JGM0 = MOOBL.MOTS(/2)
  2474. JGM = JGM0 + 8
  2475. SEGADJ,MOOBL
  2476. MOOBL.MOTS(JGM0 + 1) ='NORM'
  2477. MOOBL.MOTS(JGM0 + 2) ='LIMA'
  2478. MOOBL.MOTS(JGM0 + 3) ='LIES'
  2479. MOOBL.MOTS(JGM0 + 4) ='RAID'
  2480. MOOBL.MOTS(JGM0 + 5) ='GLIS'
  2481. MOOBL.MOTS(JGM0 + 6) ='ADHE'
  2482. MOOBL.MOTS(JGM0 + 7) ='RTAN'
  2483. MOOBL.MOTS(JGM0 + 8) ='ATAN'
  2484. JGM0 = MOFAC.MOTS(/2)
  2485. JGM = JGM0 + 5
  2486. SEGADJ,MOFAC
  2487. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2488. MOFAC.MOTS(JGM0+2) = 'RECH'
  2489. MOFAC.MOTS(JGM0+3) = 'RAYO'
  2490. MOFAC.MOTS(JGM0+4) = 'ACTN'
  2491. MOFAC.MOTS(JGM0+5) = 'INVE'
  2492.  
  2493. ELSEIF (iplac.eq.17) then
  2494. *PA_FL_RO
  2495. JGM0 = MOOBL.MOTS(/2)
  2496. JGM = MOOBL.MOTS(/2)+10
  2497. SEGADJ,MOOBL
  2498. MOOBL.MOTS(JGM0 + 1) ='LONG'
  2499. MOOBL.MOTS(JGM0 + 2) ='RAYO'
  2500. MOOBL.MOTS(JGM0 + 3) ='VISC'
  2501. MOOBL.MOTS(JGM0 + 4) ='RHOF'
  2502. MOOBL.MOTS(JGM0 + 5) ='PADM'
  2503. MOOBL.MOTS(JGM0 + 6) ='VROT'
  2504. MOOBL.MOTS(JGM0 + 7) ='EPSI'
  2505. MOOBL.MOTS(JGM0 + 8) ='PHII'
  2506. MOOBL.MOTS(JGM0 + 9) ='AFFI'
  2507. MOOBL.MOTS(JGM0 + 10) ='TLOB'
  2508. JGM0 = MOFAC.MOTS(/2)
  2509. JGM = JGM0 + 1
  2510. SEGADJ,MOFAC
  2511. MOFAC.MOTS(JGM0+1) = 'AMOR'
  2512.  
  2513. ELSEIF (iplac.eq.23) then
  2514. *NEWMARK MODAL
  2515. JGM0 = MOOBL.MOTS(/2)
  2516. JGM = MOOBL.MOTS(/2)+1
  2517. SEGADJ,MOOBL
  2518. MOOBL.MOTS(JGM0 + 1) ='JEU'
  2519. JGM0 = MOFAC.MOTS(/2)
  2520. JGM = JGM0 + 3
  2521. SEGADJ,MOFAC
  2522. MOFAC.MOTS(JGM0+1) = 'EXCE'
  2523. MOFAC.MOTS(JGM0+2) = 'FROT'
  2524. MOFAC.MOTS(JGM0+3) = 'MOFR'
  2525. ENDIF
  2526. * 'SORT' facultatif dans tous les cas
  2527. JGM0 = MOFAC.MOTS(/2)
  2528. JGM = JGM0+1
  2529. SEGADJ,MOFAC
  2530. MOFAC.MOTS(JGM0+1) = 'SORT'
  2531. GOTO 9999
  2532. ENDIF
  2533.  
  2534. *--------------------------------------------------------------------
  2535. * CAS DE LA FORMULATION ELECTROSTATIQUE
  2536. *--------------------------------------------------------------------
  2537. CALL PLACE(FORMOD,NFOR,IELEC,'ELECTROSTATIQUE')
  2538. IF (IELEC.NE.0) THEN
  2539. C -- Permittivite isotrope
  2540. IF (IMATEE.EQ.1) THEN
  2541. C* IF (CMATEE.EQ.'ISOTROPE') THEN
  2542. C* IF (MATMOD(1).EQ.'ISOTROPE ') THEN
  2543. JGM = 1
  2544. SEGINI,MOOBL
  2545. MOOBL.MOTS(1)='PEL '
  2546. C -- Permittivite orthotrope
  2547. ELSEIF (IMATEE.EQ.2) THEN
  2548. C* ELSEIF (CMATEE.EQ.'ORTHOTRO') THEN
  2549. C* ELSEIF (MATMOD(1).EQ.'ORTHOTROPE ') THEN
  2550. C ---- Elements massifs bidimensionnels PLAN et AXISYMETRIQUE
  2551. IF (IDIM.EQ.2) THEN
  2552. IF (IFOMOD.NE.1) THEN
  2553. JGM = 4
  2554. SEGINI,MOOBL
  2555. MOOBL.MOTS(1) = 'PE1 '
  2556. MOOBL.MOTS(2) = 'PE2 '
  2557. MOOBL.MOTS(3) = 'V1X '
  2558. MOOBL.MOTS(4) = 'V1Y '
  2559. C ---- Elements massifs bidimensionnels FOURIER
  2560. ELSE
  2561. JGM = 5
  2562. SEGINI,MOOBL
  2563. MOOBL.MOTS(1) = 'PE1 '
  2564. MOOBL.MOTS(2) = 'PE2 '
  2565. MOOBL.MOTS(3) = 'PE3 '
  2566. MOOBL.MOTS(4) = 'V1X '
  2567. MOOBL.MOTS(5) = 'V1Y '
  2568. ENDIF
  2569. C ---- Elements massifs TRIDimensionnels
  2570. ELSEIF (IDIM.EQ.3) THEN
  2571. JGM = 9
  2572. SEGINI,MOOBL
  2573. MOOBL.MOTS(1) = 'PE1 '
  2574. MOOBL.MOTS(2) = 'PE2 '
  2575. MOOBL.MOTS(3) = 'PE3 '
  2576. MOOBL.MOTS(4) = 'V1X '
  2577. MOOBL.MOTS(5) = 'V1Y '
  2578. MOOBL.MOTS(6) = 'V1Z '
  2579. MOOBL.MOTS(7) = 'V2X '
  2580. MOOBL.MOTS(8) = 'V2Y '
  2581. MOOBL.MOTS(9) = 'V2Z '
  2582. ENDIF
  2583. C -- Permittivite anisotrope
  2584. ELSEIF (IMATEE.EQ.3) THEN
  2585. C* ELSEIF (CMATEE.EQ.'ANISOTRO') THEN
  2586. C* ELSEIF (MATMOD(1).EQ.'ANISOTROPE ') THEN
  2587. C ---- Elements massifs bidimensionnels PLAN et AXISYMETRIQUE
  2588. IF (IDIM.EQ.2) THEN
  2589. IF (IFOMOD.NE.1) THEN
  2590. JGM = 5
  2591. SEGINI,MOOBL
  2592. MOOBL.MOTS(1) = 'PE11 '
  2593. MOOBL.MOTS(2) = 'PE22 '
  2594. MOOBL.MOTS(3) = 'PE21 '
  2595. MOOBL.MOTS(4) = 'V1X '
  2596. MOOBL.MOTS(5) = 'V1Y '
  2597. C ---- Elements massifs bidimensionnels FOURIER
  2598. ELSE
  2599. JGM = 6
  2600. SEGINI,MOOBL
  2601. MOOBL.MOTS(1) = 'PE11 '
  2602. MOOBL.MOTS(2) = 'PE22 '
  2603. MOOBL.MOTS(3) = 'PE21 '
  2604. MOOBL.MOTS(4) = 'PE33 '
  2605. MOOBL.MOTS(5) = 'V1X '
  2606. MOOBL.MOTS(6) = 'V1Y '
  2607. ENDIF
  2608. <