Télécharger iddefo.eso

Retour à la liste

Numérotation des lignes :

iddefo
  1. C IDDEFO SOURCE OF166741 24/10/07 21:15:24 12016
  2.  
  3. C=======================================================================
  4. C= RECHERCHE DES NOMS DE COMPOSANTES DE DEFORMATIONS =
  5. C= ------------------------------------------------- =
  6. C= =
  7. C= Entrees : =
  8. C= IPMODL pointeur ACTIF sur objet IMODEL =
  9. C= IFOU valeur de IFOUR de CCOPTIO =
  10. C= =
  11. C= Sorties : =
  12. C= IPNOMC pointeur de type NOMID sur les listes de noms de =
  13. C= composantes OBLigatoires et FACultatives =
  14. C= NBROBL nombre de composantes OBLigatoires =
  15. C= NBRFAC nombre de composantes FACultatives =
  16. C=======================================================================
  17.  
  18. SUBROUTINE IDDEFO (IPMODL,IFOU,IPNOMC,NBROBL,NBRFAC)
  19.  
  20. IMPLICIT INTEGER(I-N)
  21. IMPLICIT REAL*8(A-H,O-Z)
  22.  
  23. -INC PPARAM
  24. -INC CCOPTIO
  25. C==DEB= FORMULATION HHO == Include specifique ==========================
  26. -INC CCHHOPA
  27. C==FIN= FORMULATION HHO ================================================
  28.  
  29. -INC SMMODEL
  30. POINTEUR nomid1.nomid
  31.  
  32. NBROBL=0
  33. NBRFAC=0
  34. NOMID=0
  35.  
  36. IMODEL=IPMODL
  37. MELE=NEFMOD
  38. MFR=NUMMFR(MELE)
  39.  
  40. IF (FORMOD(1).eq.'MECANIQUE') THEN
  41. DO imat = 1 , matmod(/2)
  42. if (matmod(imat).eq.'IMPEDANCE') then
  43. MFR2 = infele(13)
  44. if (mfr2.eq.26.or.mfr2.eq.28) mfr = mfr2
  45.  
  46. C Recuperation du NOMID des composantes primales
  47. NOMID1=IMODEL.LNOMID(1)
  48. nbrobl=NOMID1.LESOBL(/2)
  49. nbrfac=NOMID1.LESFAC(/2)
  50. segini,NOMID
  51. do io = 1,nbrobl
  52. LESOBL(io)='E'//NOMID1.LESOBL(io)(1:3)
  53. enddo
  54. do io = 1,nbrfac
  55. LESFAC(io)='E'//NOMID1.LESFAC(io)(1:3)
  56. enddo
  57.  
  58. IPNOMC=NOMID
  59.  
  60. RETURN
  61. endif
  62. ENDDO
  63. ENDIF
  64. IF (FORMOD(1).EQ.'ELECTROSTATIQUE ') MFR = 71
  65. IF (FORMOD(1).EQ.'DIFFUSION ') MFR = 73
  66.  
  67. NFOR = FORMOD(/2)
  68. CALL PLACE(FORMOD,NFOR,ITHHY,'THERMOHYDRIQUE ')
  69. CALL PLACE(FORMOD,NFOR,ITHER,'THERMIQUE ')
  70. CALL PLACE(FORMOD,NFOR,IMAGN,'MAGNETODYNAMIQUE')
  71. CALL PLACE(FORMOD,NFOR,IMETA,'METALLURGIE ')
  72.  
  73. mfr2 = 0
  74. IF (ITHHY.EQ.1) mfr2=65
  75. IF (ITHER.eq.1) mfr2=29
  76. IF (IMAGN.eq.1) mfr2=69
  77. IF (IMETA.eq.1) mfr2=70
  78. IF (mfr2.ne.0) go to 100
  79.  
  80. C Coque integree ou pas ?
  81. NPINT=INFMOD(1)
  82. *
  83. * -1/ MACRO ELEMENT
  84. *
  85. IF (MFR.EQ.61)THEN
  86. IF (IFOU.EQ.-1.OR.IFOU.EQ.-2) THEN
  87. *
  88. * 0-A/ CONTRAINTES PLANES - DEFORMATIONS PLANES
  89. *
  90. NBROBL=5
  91. SEGINI NOMID
  92. LESOBL(1)='EPS1'
  93. LESOBL(2)='CZ1 '
  94. LESOBL(3)='GXY '
  95. LESOBL(4)='EPS2'
  96. LESOBL(5)='CZ2 '
  97. ENDIF
  98. c
  99. c element coaxial COS2 (3D pour liaison acier-beton)
  100. c
  101. ELSE IF ( MFR.EQ.78) THEN
  102. NBROBL=3
  103. SEGINI NOMID
  104. LESOBL(1)='GLIT'
  105. LESOBL(2)='GLIN'
  106. LESOBL(3)='GLIM'
  107. c
  108. C 1 - Element JOINT
  109. C ===================
  110. ELSE IF (MFR.EQ.35) THEN
  111. C =====
  112. C 1.1 - Tridimensionnel
  113. C =====
  114. IF (IFOU.EQ.2) THEN
  115. NBROBL=3
  116. SEGINI,NOMID
  117. LESOBL(1)='DRS1'
  118. LESOBL(2)='DRS2'
  119. LESOBL(3)='DRN '
  120. C =====
  121. C 1.2 - Bidimensionnel PLAN (CP/DP/DPGE) et Axisymetrie
  122. C =====
  123. ELSE IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1).OR.
  124. . (IFOU.EQ.0)) THEN
  125. NBROBL=2
  126. SEGINI,NOMID
  127. LESOBL(1)='DRSN'
  128. LESOBL(2)='DRN '
  129. ENDIF
  130.  
  131. C 2 - Element JOINT CISAILLEMENT (2D)
  132. C Bidimensionnel PLAN (CP/DP/DPGE)
  133. C ======================================
  134. ELSE IF (MFR.EQ.53) THEN
  135. IF ((IFOU.EQ.-3).OR.(IFOU.EQ.-2).OR.(IFOU.EQ.-1)) THEN
  136. NBROBL=2
  137. SEGINI,NOMID
  138. LESOBL(1)='DRS1'
  139. LESOBL(2)='DRS2'
  140. ENDIF
  141.  
  142. C 3 - Element JOINT GENERALISE
  143. C ==============================
  144. ELSE IF (MFR.EQ.55) THEN
  145. C =====
  146. C 3.1 - Bidimensionnel PLAN (CP/DP/DPGE)
  147. C =====
  148. IF ((IFOU.EQ.-2).OR.(IFOU.EQ.-1).OR.(IFOU.EQ.-3)) THEN
  149. NBROBL=4
  150. SEGINI,NOMID
  151. LESOBL(1)='DRSN'
  152. LESOBL(2)='DRN '
  153. LESOBL(3)='EPTT'
  154. LESOBL(4)='EPZZ'
  155. C =====
  156. C 3.2 - Tridimensionnel
  157. C =====
  158. ELSE IF (IFOU.EQ.2) THEN
  159. NBROBL=6
  160. SEGINI,NOMID
  161. LESOBL(1)='DRS1'
  162. LESOBL(2)='DRS2'
  163. LESOBL(3)='DRN '
  164. LESOBL(4)='EPTT'
  165. LESOBL(5)='EPUU'
  166. LESOBL(6)='GATU'
  167. ENDIF
  168.  
  169. C 4 - Elements MASSIFS/INCOMPRESSIBLES/XFEM/HHO
  170. C ===============================================
  171. ELSE IF (MFR.EQ.1.OR.MFR.EQ.31.OR.MFR.EQ.63.OR.
  172. & MFR.EQ.HHO_MFR_ELEMENT) THEN
  173. C =====
  174. C 4.1 - Bidimensionnel PLAN (CP/DP/DPGE)
  175. C =====
  176. IF (IFOU.EQ.-3.OR.IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  177. NBROBL=4
  178. SEGINI,NOMID
  179. LESOBL(1)='EPXX'
  180. LESOBL(2)='EPYY'
  181. LESOBL(3)='EPZZ'
  182. LESOBL(4)='GAXY'
  183. C =====
  184. C 4.2 - Axisymetrie
  185. C =====
  186. ELSE IF (IFOU.EQ.0) THEN
  187. NBROBL=4
  188. SEGINI,NOMID
  189. LESOBL(1)='EPRR'
  190. LESOBL(2)='EPZZ'
  191. LESOBL(3)='EPTT'
  192. LESOBL(4)='GARZ'
  193. C =====
  194. C 4.3 - Fourier
  195. C =====
  196. ELSE IF (IFOU.EQ.1) THEN
  197. NBROBL=6
  198. SEGINI,NOMID
  199. LESOBL(1)='EPRR'
  200. LESOBL(2)='EPZZ'
  201. LESOBL(3)='EPTT'
  202. LESOBL(4)='GARZ'
  203. LESOBL(5)='GART'
  204. LESOBL(6)='GAZT'
  205. C =====
  206. C 4.4 - Tridimensionnel
  207. C =====
  208. ELSE IF (IFOU.EQ.2) THEN
  209. NBROBL=6
  210. SEGINI,NOMID
  211. LESOBL(1)='EPXX'
  212. LESOBL(2)='EPYY'
  213. LESOBL(3)='EPZZ'
  214. LESOBL(4)='GAXY'
  215. LESOBL(5)='GAXZ'
  216. LESOBL(6)='GAYZ'
  217. C =====
  218. C 4.5 - Unidimensionnel (1D)
  219. C =====
  220. ELSE IF (IFOU.GE.3.AND.IFOU.LE.15.AND.MFR.EQ.1) THEN
  221. NBROBL=3
  222. SEGINI,NOMID
  223. IF (IFOU.LE.11) THEN
  224. LESOBL(1)='EPXX'
  225. LESOBL(2)='EPYY'
  226. LESOBL(3)='EPZZ'
  227. ELSE IF (IFOU.GE.12.AND.IFOU.LE.14) THEN
  228. LESOBL(1)='EPRR'
  229. LESOBL(2)='EPZZ'
  230. LESOBL(3)='EPTT'
  231. ELSE IF (IFOU.EQ.15) THEN
  232. LESOBL(1)='EPRR'
  233. C Voir TC pour LESOBL(2)='EPFF' ?
  234. LESOBL(2)='EPZZ'
  235. LESOBL(3)='EPTT'
  236. ENDIF
  237. ENDIF
  238.  
  239. C 5 - Elements COQUES
  240. C =====================
  241. ELSE IF (MFR.EQ.3.OR.MFR.EQ.39) THEN
  242. IF (NPINT.EQ.0) THEN
  243. C =====
  244. C 5.1 - Tridimensionnel et Fourier
  245. C =====
  246. IF (IFOU.EQ.2.OR.IFOU.EQ.1) THEN
  247. NBROBL=6
  248. SEGINI,NOMID
  249. LESOBL(1)='EPSS'
  250. LESOBL(2)='EPTT'
  251. LESOBL(3)='GAST'
  252. LESOBL(4)='RTSS'
  253. LESOBL(5)='RTTT'
  254. LESOBL(6)='RTST'
  255. C =====
  256. C 5.2 - Axisymetrie
  257. C =====
  258. ELSE IF (IFOU.EQ.0) THEN
  259. NBROBL=4
  260. SEGINI,NOMID
  261. LESOBL(1)='EPSS'
  262. LESOBL(2)='EPTT'
  263. LESOBL(3)='RTSS'
  264. LESOBL(4)='RTTT'
  265. C =====
  266. C 5.3 - Bidimensionnel PLAN (CP/DP/DPGE)
  267. C =====
  268. ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  269. NBROBL=4
  270. SEGINI,NOMID
  271. LESOBL(1)='EPSS'
  272. LESOBL(2)='EPZZ'
  273. LESOBL(3)='RTSS'
  274. LESOBL(4)='RTZZ'
  275. ENDIF
  276. ELSE
  277. C =====
  278. C 5.4 - Tridimensionnel - Cas particulier
  279. C =====
  280. IF (MFR.EQ.3.AND.IFOU.EQ.2) THEN
  281. NBROBL=4
  282. SEGINI,NOMID
  283. LESOBL(1)='EPSS'
  284. LESOBL(2)='EPTT'
  285. LESOBL(3)='EPNN'
  286. LESOBL(4)='GAST'
  287. ENDIF
  288. ENDIF
  289.  
  290. C 6 - Elements de COQUE EPAISSE
  291. C Tridimensionnel, axisymetrie et Fourier
  292. C =============================================
  293. ELSE IF (MFR.EQ.5) THEN
  294. NBROBL=5
  295. SEGINI,NOMID
  296. LESOBL(1)='EPSS'
  297. LESOBL(2)='EPTT'
  298. LESOBL(3)='GAST'
  299. LESOBL(4)='GASN'
  300. LESOBL(5)='GATN'
  301.  
  302. C 7 - LIA2: Element 3D de liaison a 2 noeuds
  303. C =============================================
  304. ELSE IF (MFR.EQ.51) THEN
  305. NBROBL=6
  306. SEGINI,NOMID
  307. LESOBL(1)='EPS '
  308. LESOBL(2)='GXY '
  309. LESOBL(3)='GXZ '
  310. LESOBL(4)='CX '
  311. LESOBL(5)='CY '
  312. LESOBL(6)='CZ '
  313. C 7bis - JOI1: Element 3D de liaison a 2 noeuds
  314. C =============================================
  315. ELSE IF (MFR.EQ.75) THEN
  316. IF (IFOU.EQ.2) THEN
  317. NBROBL=6
  318. SEGINI,NOMID
  319. LESOBL(1)='EXX '
  320. LESOBL(2)='GXY '
  321. LESOBL(3)='GXZ '
  322. LESOBL(4)='CXX '
  323. LESOBL(5)='CXY '
  324. LESOBL(6)='CXZ '
  325. ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  326. NBROBL=3
  327. SEGINI,NOMID
  328. LESOBL(1)='EXX '
  329. LESOBL(2)='GXY '
  330. LESOBL(3)='CXZ '
  331. ENDIF
  332.  
  333. C 8 - BAEX : BARRE EXCENTREE
  334. C ============================
  335. ELSE IF (MFR.EQ.49) THEN
  336. NBROBL=1
  337. SEGINI,NOMID
  338. LESOBL(1)='EPSS'
  339.  
  340. C 9 - Elements POUTRE et TUYAU
  341. C ==============================
  342. ELSE IF (MFR.EQ.7.OR.MFR.EQ.13) THEN
  343. C =====
  344. C 9.1 - Tridimensionnel
  345. C =====
  346. IF (IFOU.EQ.2) THEN
  347. NBROBL=6
  348. SEGINI,NOMID
  349. LESOBL(1)='EPS '
  350. LESOBL(2)='GXY '
  351. LESOBL(3)='GXZ '
  352. LESOBL(4)='CX '
  353. LESOBL(5)='CY '
  354. LESOBL(6)='CZ '
  355. C =====
  356. C 9.2 - Bidimensionnel PLAN (CP/DP/DPGE)
  357. C =====
  358. ELSE IF (IFOU.EQ.-3.OR.IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  359. NBROBL=3
  360. SEGINI,NOMID
  361. LESOBL(1)='EPS '
  362. LESOBL(2)='GXY '
  363. LESOBL(3)='CZ '
  364. ENDIF
  365.  
  366. C 10 - Element de COQUE en CISAILLEMENT TRANSVERSE
  367. C ==================================================
  368. ELSE IF (MFR.EQ.9) THEN
  369. IF (NPINT.EQ.0) THEN
  370. C ======
  371. C 10.1 - Tridimensionnel
  372. C ======
  373. IF (IFOU.EQ.2) THEN
  374. NBROBL=8
  375. SEGINI,NOMID
  376. LESOBL(1)='EPSS'
  377. LESOBL(2)='EPTT'
  378. LESOBL(3)='GAST'
  379. LESOBL(4)='RTSS'
  380. LESOBL(5)='RTTT'
  381. LESOBL(6)='RTST'
  382. LESOBL(7)='GASN'
  383. LESOBL(8)='GATN'
  384. ENDIF
  385. ENDIF
  386.  
  387. C 11 - Elements LINESPRING (tridimensionnel)
  388. C ============================================
  389. ELSE IF (MFR.EQ.15) THEN
  390. IF (IFOU.EQ.2) THEN
  391. NBROBL=6
  392. SEGINI,NOMID
  393. LESOBL(1)='EPZZ'
  394. LESOBL(2)='GAXZ'
  395. LESOBL(3)='GAYZ'
  396. LESOBL(4)='RTXX'
  397. LESOBL(5)='RTZZ'
  398. LESOBL(6)='DJP '
  399. ENDIF
  400.  
  401. C 12 - Elements de MEMBRANE
  402. C ===========================
  403. ELSE IF (MFR.EQ.25) THEN
  404. NBROBL=3
  405. SEGINI,NOMID
  406. LESOBL(1)='EPSS'
  407. LESOBL(2)='EPTT'
  408. LESOBL(3)='GAST'
  409.  
  410. C 13 - Formulation UNIAXIALE
  411. C =============================
  412. ELSE IF (MFR.EQ.27) THEN
  413. NBROBL=1
  414. SEGINI,NOMID
  415. LESOBL(1)='EPSS'
  416.  
  417. C 14 - Formulation THERMIQUE
  418. C ============================
  419. ELSE IF (MFR.EQ.29) THEN
  420. C ======
  421. C 14.1 - Tridimensionnel
  422. C ======
  423. IF (IFOU.EQ.2) THEN
  424. NBROBL=3
  425. SEGINI,NOMID
  426. LESOBL(1)='GRDX'
  427. LESOBL(2)='GRDY'
  428. LESOBL(3)='GRDZ'
  429. C ======
  430. C 14.2 - Bidimensionnel PLAN (CP/DP/DPGE)
  431. C ======
  432. ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  433. NBROBL=2
  434. SEGINI,NOMID
  435. LESOBL(1)='GRDX'
  436. LESOBL(2)='GRDY'
  437. C ======
  438. C 14.3 - Axisymetrie et Fourier
  439. C ======
  440. ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN
  441. NBROBL=2
  442. SEGINI,NOMID
  443. LESOBL(1)='GRDX'
  444. LESOBL(2)='GRDY'
  445. C*OF LESOBL(1)='GRDR'
  446. C*OF LESOBL(2)='GRDZ'
  447. C ======
  448. C 14.4 - Unidimensionnel (1D)
  449. C ======
  450. ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN
  451. NBROBL=1
  452. SEGINI,NOMID
  453. C*OF IF (IFOU.LE.11) THEN
  454. LESOBL(1)='GRDX'
  455. C*OF ELSE
  456. C*OF LESOBL(1)='GRDR'
  457. C*OF ENDIF
  458. ENDIF
  459.  
  460. C 15 - Formulation POREUX
  461. C =========================
  462. ELSE IF (MFR.EQ.33) THEN
  463. C =====
  464. C 15.A - Elements POREUX
  465. C ======
  466. IF (MELE.GE.79.AND.MELE.LE.83) THEN
  467. C ========
  468. C 15.A.1 - Bidimensionnel PLAN (CP/DP)
  469. C ========
  470. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  471. NBROBL=5
  472. SEGINI,NOMID
  473. LESOBL(1)='EPXX'
  474. LESOBL(2)='EPYY'
  475. LESOBL(3)='EPZZ'
  476. LESOBL(4)='GAXY'
  477. LESOBL(5)='PRES'
  478. C ========
  479. C 15.A.2 - Axisymetrie
  480. C ========
  481. ELSE IF (IFOU.EQ.0) THEN
  482. NBROBL=5
  483. SEGINI,NOMID
  484. LESOBL(1)='EPRR'
  485. LESOBL(2)='EPZZ'
  486. LESOBL(3)='EPTT'
  487. LESOBL(4)='GARZ'
  488. LESOBL(5)='PRES'
  489. C ========
  490. C 15.A.3 - Fourier
  491. C ========
  492. ELSE IF (IFOU.EQ.1) THEN
  493. NBROBL=7
  494. SEGINI,NOMID
  495. LESOBL(1)='EPRR'
  496. LESOBL(2)='EPZZ'
  497. LESOBL(3)='EPTT'
  498. LESOBL(4)='GARZ'
  499. LESOBL(5)='GART'
  500. LESOBL(6)='GAZT'
  501. LESOBL(7)='PRES'
  502. C ========
  503. C 15.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  504. C ========
  505. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  506. NBROBL=7
  507. SEGINI,NOMID
  508. LESOBL(1)='EPXX'
  509. LESOBL(2)='EPYY'
  510. LESOBL(3)='EPZZ'
  511. LESOBL(4)='GAXY'
  512. LESOBL(5)='GAXZ'
  513. LESOBL(6)='GAYZ'
  514. LESOBL(7)='PRES'
  515. ENDIF
  516. C ======
  517. C 15.B - Elements JOINT POREUX
  518. C ======
  519. ELSE IF (MELE.GE.108.AND.MELE.LE.110) THEN
  520. C ========
  521. C 15.B.1 - Tridimensionnel
  522. C ========
  523. IF (IFOU.EQ.2) THEN
  524. NBROBL=4
  525. SEGINI,NOMID
  526. LESOBL(1)='DRS1'
  527. LESOBL(2)='DRS2'
  528. LESOBL(3)='DRN '
  529. LESOBL(4)='PRES'
  530. C ========
  531. C 15.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie
  532. C ========
  533. ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN
  534. NBROBL=3
  535. SEGINI,NOMID
  536. LESOBL(1)='DRSN'
  537. LESOBL(2)='DRN '
  538. LESOBL(3)='PRES'
  539. ENDIF
  540. ENDIF
  541.  
  542. C 16 - Formulation POREUX type Q
  543. C ================================
  544. ELSE IF (MFR.EQ.57) THEN
  545. C =====
  546. C 16.A - Elements POREUX Q
  547. C ======
  548. IF (MELE.GE.173.AND.MELE.LE.177) THEN
  549. C ========
  550. C 16.A.1 - Bidimensionnel PLAN (CP/DP)
  551. C ========
  552. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  553. NBROBL=6
  554. SEGINI,NOMID
  555. LESOBL(1)='EPXX'
  556. LESOBL(2)='EPYY'
  557. LESOBL(3)='EPZZ'
  558. LESOBL(4)='GAXY'
  559. LESOBL(5)='PRES'
  560. LESOBL(6)='PREQ'
  561. C ========
  562. C 16.A.2 - Axisymetrie
  563. C ========
  564. ELSE IF (IFOU.EQ.0) THEN
  565. NBROBL=6
  566. SEGINI,NOMID
  567. LESOBL(1)='EPRR'
  568. LESOBL(2)='EPZZ'
  569. LESOBL(3)='EPTT'
  570. LESOBL(4)='GARZ'
  571. LESOBL(5)='PRES'
  572. LESOBL(6)='PREQ'
  573. C ========
  574. C 16.A.3 - Fourier
  575. C ========
  576. ELSE IF (IFOU.EQ.1) THEN
  577. NBROBL=8
  578. SEGINI,NOMID
  579. LESOBL(1)='EPRR'
  580. LESOBL(2)='EPZZ'
  581. LESOBL(3)='EPTT'
  582. LESOBL(4)='GARZ'
  583. LESOBL(5)='GART'
  584. LESOBL(6)='GAZT'
  585. LESOBL(7)='PRES'
  586. LESOBL(8)='PREQ'
  587. C ========
  588. C 16.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  589. C ========
  590. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  591. NBROBL=8
  592. SEGINI,NOMID
  593. LESOBL(1)='EPXX'
  594. LESOBL(2)='EPYY'
  595. LESOBL(3)='EPZZ'
  596. LESOBL(4)='GAXY'
  597. LESOBL(5)='GAXZ'
  598. LESOBL(6)='GAYZ'
  599. LESOBL(7)='PRES'
  600. LESOBL(8)='PREQ'
  601. ENDIF
  602. C ======
  603. C 16.B - Elements JOINT POREUX Q
  604. C ======
  605. ELSE IF (MELE.GE.185.AND.MELE.LE.187) THEN
  606. C ========
  607. C 16.B.1 - Tridimensionnel
  608. C ========
  609. IF (IFOU.EQ.2) THEN
  610. NBROBL=5
  611. SEGINI,NOMID
  612. LESOBL(1)='DRS1'
  613. LESOBL(2)='DRS2'
  614. LESOBL(3)='DRN '
  615. LESOBL(4)='PRES'
  616. LESOBL(5)='PREQ'
  617. C ========
  618. C 16.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie
  619. C ========
  620. ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN
  621. NBROBL=4
  622. SEGINI,NOMID
  623. LESOBL(1)='DRSN'
  624. LESOBL(2)='DRN '
  625. LESOBL(3)='PRES'
  626. LESOBL(4)='PREQ'
  627. ENDIF
  628. ENDIF
  629.  
  630. C 17 - Formulation POREUX type R
  631. C ================================
  632. ELSE IF (MFR.EQ.59) THEN
  633. C =====
  634. C 17.A - Elements POREUX R
  635. C ======
  636. IF (MELE.GE.178.AND.MELE.LE.182) THEN
  637. C ========
  638. C 17.A.1 - Bidimensionnel PLAN (CP/DP)
  639. C ========
  640. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  641. NBROBL=7
  642. SEGINI NOMID
  643. LESOBL(1)='EPXX'
  644. LESOBL(2)='EPYY'
  645. LESOBL(3)='EPZZ'
  646. LESOBL(4)='GAXY'
  647. LESOBL(5)='PRES'
  648. LESOBL(6)='PREQ'
  649. LESOBL(7)='TPT '
  650. C ========
  651. C 17.A.2 - Axisymetrie
  652. C ========
  653. ELSE IF (IFOU.EQ.0) THEN
  654. NBROBL=7
  655. SEGINI NOMID
  656. LESOBL(1)='EPRR'
  657. LESOBL(2)='EPZZ'
  658. LESOBL(3)='EPTT'
  659. LESOBL(4)='GARZ'
  660. LESOBL(5)='PRES'
  661. LESOBL(6)='PREQ'
  662. LESOBL(7)='TPT '
  663. C ========
  664. C 17.A.3 - Fourier
  665. C ========
  666. ELSE IF (IFOU.EQ.1) THEN
  667. NBROBL=9
  668. SEGINI,NOMID
  669. LESOBL(1)='EPRR'
  670. LESOBL(2)='EPZZ'
  671. LESOBL(3)='EPTT'
  672. LESOBL(4)='GARZ'
  673. LESOBL(5)='GART'
  674. LESOBL(6)='GAZT'
  675. LESOBL(7)='PRES'
  676. LESOBL(8)='PREQ'
  677. LESOBL(9)='TPT '
  678. C ========
  679. C 17.A.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  680. C ========
  681. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  682. NBROBL=9
  683. SEGINI,NOMID
  684. LESOBL(1)='EPXX'
  685. LESOBL(2)='EPYY'
  686. LESOBL(3)='EPZZ'
  687. LESOBL(4)='GAXY'
  688. LESOBL(5)='GAXZ'
  689. LESOBL(6)='GAYZ'
  690. LESOBL(7)='PRES'
  691. LESOBL(8)='PREQ'
  692. LESOBL(9)='TPT '
  693. ENDIF
  694. C ======
  695. C 17.B - Elements JOINT POREUX R
  696. C ======
  697. ELSE IF (MELE.GE.188.AND.MELE.LE.190) THEN
  698. C ========
  699. C 17.B.1 - Tridimensionnel
  700. C ========
  701. IF (IFOU.EQ.2) THEN
  702. NBROBL=6
  703. SEGINI,NOMID
  704. LESOBL(1)='DRS1'
  705. LESOBL(2)='DRS2'
  706. LESOBL(3)='DRN '
  707. LESOBL(4)='PRES'
  708. LESOBL(5)='PREQ'
  709. LESOBL(6)='TPT '
  710. C ========
  711. C 17.B.2 - Bidimensionnel PLAN (CP/DP) et Axisymetrie
  712. C ========
  713. ELSE IF (IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN
  714. NBROBL=5
  715. SEGINI,NOMID
  716. LESOBL(1)='DRSN'
  717. LESOBL(2)='DRN '
  718. LESOBL(3)='PRES'
  719. LESOBL(4)='PREQ'
  720. LESOBL(5)='TPT '
  721. ENDIF
  722. ENDIF
  723.  
  724. C 18 - Elements TUYAU FISSURE (tridimensionnel)
  725. C ===============================================
  726. ELSE IF (MFR.EQ.17) THEN
  727. IF (IFOU.EQ.2) THEN
  728. NBROBL=8
  729. SEGINI,NOMID
  730. LESOBL(1)='EPS '
  731. LESOBL(2)='GXY '
  732. LESOBL(3)='GXZ '
  733. LESOBL(4)='CX '
  734. LESOBL(5)='CY '
  735. LESOBL(6)='CZ '
  736. LESOBL(7)='EPS7'
  737. LESOBL(8)='EPS8'
  738. ENDIF
  739.  
  740. C 19 - Elements de SECTION/FIBRE
  741. C ================================
  742. ELSE IF (MFR.EQ.47) THEN
  743. C ======
  744. C 19.1 - Bidimensionnel PLAN (CP/DP/DPGE)
  745. C ======
  746. IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  747. NBROBL=2
  748. SEGINI,NOMID
  749. LESOBL(1)='EPXX'
  750. LESOBL(2)='GAXY'
  751. C ======
  752. C 19.2 - Tridimensionnel
  753. C ======
  754. ELSE IF (IFOU.EQ.2) THEN
  755. NBROBL=3
  756. SEGINI,NOMID
  757. LESOBL(1)='EPXX'
  758. LESOBL(2)='GAXY'
  759. LESOBL(3)='GAXZ'
  760. ENDIF
  761.  
  762. C 20 - Elements de zones cohesives
  763. C ==================================
  764. ELSE IF (MFR.EQ.77) THEN
  765. C =====
  766. C 20.1 - Tridimensionnel
  767. C =====
  768. IF (IFOU.GT.0) THEN
  769. NBROBL=3
  770. SEGINI,NOMID
  771. LESOBL(1)='DRS1'
  772. LESOBL(2)='DRS2'
  773. LESOBL(3)='DRN '
  774. C =====
  775. C 20.2 - Bidimensionnel PLAN (CP/DP/DPGE) et Axisymetrie
  776. C =====
  777. ELSE IF (IFOU.LE.0) THEN
  778. NBROBL=2
  779. SEGINI,NOMID
  780. LESOBL(1)='DRSN'
  781. LESOBL(2)='DRN '
  782. ENDIF
  783.  
  784. C 21 - Formulation ELECTROSTATIQUE (base MASSIF)
  785. C ==================================
  786. ELSE IF (MFR.EQ.71) THEN
  787. C ======
  788. C 21.1 - Tridimensionnel
  789. C ======
  790. IF (IFOU.EQ.2) THEN
  791. NBROBL=3
  792. SEGINI,NOMID
  793. LESOBL(1)='EELX '
  794. LESOBL(2)='EELY '
  795. LESOBL(3)='EELZ '
  796. C ======
  797. C 21.2 - Bidimensionnel PLAN (CP/DP/DPGE)
  798. C ======
  799. ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  800. NBROBL=2
  801. SEGINI,NOMID
  802. LESOBL(1)='EELX '
  803. LESOBL(2)='EELY '
  804. C ======
  805. C 21.3 - Axisymetrie et Fourier
  806. C ======
  807. ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN
  808. NBROBL=2
  809. SEGINI,NOMID
  810. LESOBL(1)='EELR '
  811. LESOBL(2)='EELZ '
  812. C ======
  813. C 21.4 - Unidimensionnel (1D)
  814. C ======
  815. ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN
  816. NBROBL=1
  817. SEGINI,NOMID
  818. IF (IFOU.LE.11) THEN
  819. LESOBL(1)='EELX '
  820. ELSE
  821. LESOBL(1)='EELR '
  822. ENDIF
  823. ENDIF
  824.  
  825. C 22 - Formulation DIFFUSION (Nomid VIDE)
  826. C ========================================
  827. ELSE IF (MFR.EQ.73) THEN
  828.  
  829. C*DEB = Merci de conserver ces lignes ! (Developpements futurs)
  830. C*XC ======
  831. C*XC 22.0 - BARRE
  832. C*XC ======
  833. C*X IF (MELE.EQ.46) THEN
  834. C*X NBROBL=1
  835. C*X SEGINI,NOMID
  836. C*X LESOBL(1)='GS '
  837. C*X ELSE
  838. C*XC ======
  839. C*XC 22.1 - Tridimensionnel
  840. C*XC ======
  841. C*X IF (IFOU.EQ.2) THEN
  842. C*X NBROBL=3
  843. C*X SEGINI,NOMID
  844. C*X LESOBL(1)='GX '
  845. C*X LESOBL(2)='GY '
  846. C*X LESOBL(3)='GZ '
  847. C*XC ======
  848. C*XC 22.2 - Bidimensionnel PLAN (CP/DP/DPGE)
  849. C*XC ======
  850. C*X ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  851. C*X NBROBL=2
  852. C*X SEGINI,NOMID
  853. C*X LESOBL(1)='GX '
  854. C*X LESOBL(2)='GY '
  855. C*XC ======
  856. C*XC 22.3 - Axisymetrie et Fourier
  857. C*XC ======
  858. C*X ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.0) THEN
  859. C*X NBROBL=2
  860. C*X SEGINI,NOMID
  861. C*X LESOBL(1)='GR '
  862. C*X LESOBL(2)='GZ '
  863. C*XC ======
  864. C*XC 22.4 - Unidimensionnel (1D)
  865. C*XC ======
  866. C*X ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN
  867. C*X NBROBL=1
  868. C*X SEGINI,NOMID
  869. C*X IF (IFOU.LE.11) THEN
  870. C*X LESOBL(1)='GX '
  871. C*X ELSE
  872. C*X LESOBL(1)='GR '
  873. C*X ENDIF
  874. C*X ENDIF
  875. C*X ENDIF
  876. C*XC* Ajout du nom de l'INCOnnue (DDL) contenu dans TYMODE(1)
  877. C*X DO i = 1, NBROBL
  878. C*X LESOBL(i)(3:8) = imodel.TYMODE(1)(1:6)
  879. C*X ENDDO
  880. C*FIN = Merci de conserver ces lignes ! (Developpements futurs)
  881.  
  882. ENDIF
  883.  
  884. C Par DEFAUT : (Nomid VIDE)
  885. C ===========================
  886. 100 continue
  887. IF (NOMID.EQ.0) THEN
  888. SEGINI,NOMID
  889. ELSE
  890. if (ifomod.eq.6) then
  891. nbrfa0 = nbrfac
  892. NBRFAC = NBROBL + (nbrfa0*2)
  893. segadj,nomid
  894. do imo = 1,nbrobl
  895. lesfac(nbrfa0 + imo)(2:4) = lesobl(imo)(1:3)
  896. lesfac(nbrfa0 + imo)(1:1) = 'I'
  897. enddo
  898. do imo = 1,nbrfa0
  899. lesfac(nbrfa0+nbrobl+imo)(2:4) = lesfac(imo)(1:3)
  900. lesfac(nbrfa0+nbrobl+imo)(1:1) = 'I'
  901. enddo
  902. endif
  903. ENDIF
  904.  
  905. SEGACT,NOMID*NOMOD
  906. IPNOMC=NOMID
  907.  
  908. c RETURN
  909. END
  910.  
  911.  
  912.  
  913.  

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