Télécharger iddefo.eso

Retour à la liste

Numérotation des lignes :

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

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