Télécharger iddefo.eso

Retour à la liste

Numérotation des lignes :

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

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