Télécharger idforc.eso

Retour à la liste

Numérotation des lignes :

idforc
  1. C IDFORC SOURCE OF166741 24/05/06 21:15:18 11082
  2.  
  3. C=======================================================================
  4. C= RECHERCHE DES NOMS DE COMPOSANTES DE FORCES =
  5. C= ------------------------------------------- =
  6. C= =
  7. C= Entrees : =
  8. C= MFR Numero de la FORMULATION element fini =
  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 IDFORC(MFR,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. C==DEB= FORMULATION HHO == Include specifique ==========================
  27. -INC CCHHOPA
  28. C==FIN= FORMULATION HHO ================================================
  29.  
  30. SEGMENT NOMID
  31. CHARACTER*8 LESOBL(NBROBL),LESFAC(NBRFAC)
  32. ENDSEGMENT
  33.  
  34. NBROBL=0
  35. NBRFAC=0
  36. NOMID=0
  37.  
  38. * formulation thermohydrique
  39. IF( MFR.EQ.65) THEN
  40. NBROBL=3
  41. SEGINI NOMID
  42. LESOBL(1)='QG '
  43. LESOBL(2)='QC '
  44. LESOBL(3)='Q '
  45. *
  46. * 0/ MACRO ELEMENT
  47. *
  48. ELSEIF (MFR.EQ.61)THEN
  49. C
  50. IF (IFOU.EQ.-1.OR.IFOU.EQ.-2) THEN
  51. *
  52. * 0-A/ CONTRAINTES PLANES - DEFORMATIONS PLANES
  53. *
  54. NBROBL=5
  55. SEGINI NOMID
  56. LESOBL(1)='FX '
  57. LESOBL(2)='FY '
  58. LESOBL(3)='MZ '
  59. LESOBL(4)='FM '
  60. LESOBL(5)='MM '
  61. ENDIF
  62.  
  63. C 1 - Elements COQUE (3), COQUE EPAISSE (5), POUTRE (7), COQUE en
  64. C CISAILLEMENT TRANSVERSE (9), TUYAU (13), LINESPRING (15), TUYAU
  65. C FISSURE (17), Barre excentree BAEX (49), LIA2 (51), JOI1(75)
  66. C ====================================================================
  67. ELSE IF (MFR.EQ. 3.OR.MFR.EQ. 5.OR.MFR.EQ. 7.OR.MFR.EQ. 9.OR.
  68. . MFR.EQ.13.OR.MFR.EQ.15.OR.MFR.EQ.17.OR.MFR.EQ.49.OR.
  69. . MFR.EQ.51.OR.MFR.EQ.75.OR.MFR.EQ.74) THEN
  70. C =====
  71. C 1.1 - Tridimensionnel
  72. C =====
  73. IF (IFOU.EQ.2) THEN
  74. NBROBL=6
  75. SEGINI,NOMID
  76. LESOBL(1)='FX '
  77. LESOBL(2)='FY '
  78. LESOBL(3)='FZ '
  79. LESOBL(4)='MX '
  80. LESOBL(5)='MY '
  81. LESOBL(6)='MZ '
  82. C =====
  83. C 1.2 - Fourier
  84. C =====
  85. ELSE IF (IFOU.EQ.1) THEN
  86. NBROBL=4
  87. SEGINI,NOMID
  88. LESOBL(1)='FR '
  89. LESOBL(2)='FZ '
  90. LESOBL(3)='FT '
  91. LESOBL(4)='MT '
  92. C =====
  93. C 1.3 - Axisymetrie
  94. C =====
  95. ELSE IF (IFOU.EQ.0) THEN
  96. NBROBL=3
  97. SEGINI,NOMID
  98. LESOBL(1)='FR '
  99. LESOBL(2)='FZ '
  100. LESOBL(3)='MT '
  101. C =====
  102. C 1.4 - Bidimensionnel PLAN (CP/DP)
  103. C =====
  104. ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2) THEN
  105. NBROBL=3
  106. SEGINI,NOMID
  107. LESOBL(1)='FX '
  108. LESOBL(2)='FY '
  109. LESOBL(3)='MZ '
  110. C =====
  111. C 1.5 - Bidimensionnel PLAN GENE
  112. C =====
  113. ELSE IF (IFOU.EQ.-3) THEN
  114. C Ici il faut distinguer les formulations
  115. IF (MFR.EQ.3 .OR. MFR.EQ.5) THEN
  116. NBROBL=6
  117. SEGINI,NOMID
  118. LESOBL(1)='FX '
  119. LESOBL(2)='FY '
  120. LESOBL(3)='MZ '
  121. LESOBL(4)='FZ '
  122. LESOBL(5)='MY '
  123. LESOBL(6)='MX '
  124. ELSE
  125. NBROBL=3
  126. SEGINI,NOMID
  127. LESOBL(1)='FX '
  128. LESOBL(2)='FY '
  129. LESOBL(3)='MZ '
  130. ENDIF
  131. ENDIF
  132.  
  133. C 2 - Elements LIQUIDE
  134. C ======================
  135. ELSE IF (MFR.EQ.11) THEN
  136. NBROBL=2
  137. SEGINI,NOMID
  138. LESOBL(1)='FP '
  139. LESOBL(2)='FPI '
  140.  
  141. C 3 - Elements TUYAU ACOUSTIQUE PUR
  142. C ===================================
  143. ELSE IF (MFR.EQ.41) THEN
  144. NBROBL=2
  145. SEGINI,NOMID
  146. LESOBL(1)='FPI '
  147. LESOBL(2)='FP '
  148.  
  149. C 4 - Element de RACCORD LITU
  150. C =============================
  151. ELSE IF (MFR.EQ.43) THEN
  152. NBROBL=5
  153. SEGINI,NOMID
  154. LESOBL(1)='FX '
  155. LESOBL(2)='FY '
  156. LESOBL(3)='FZ '
  157. LESOBL(4)='FPI '
  158. LESOBL(5)='FP '
  159.  
  160. C 5 - Elements HOMOGENEISE
  161. C ==========================
  162. ELSE IF (MFR.EQ.37) THEN
  163. C =====
  164. C 5.1 - Fourier
  165. C =====
  166. IF (IFOU.EQ.1) THEN
  167. NBROBL=6
  168. SEGINI,NOMID
  169. LESOBL(1)='FP '
  170. LESOBL(2)='FPI '
  171. LESOBL(3)='FR '
  172. LESOBL(4)='MT '
  173. LESOBL(5)='FT '
  174. LESOBL(6)='MR '
  175. C =====
  176. C 5.2 - Axisymetrie
  177. C =====
  178. ELSE IF (IFOU.EQ.0) THEN
  179. NBROBL=4
  180. SEGINI,NOMID
  181. LESOBL(1)='FP '
  182. LESOBL(2)='FPI '
  183. LESOBL(3)='FR '
  184. LESOBL(4)='MT '
  185. C =====
  186. C 5.3 - Tridimensionnel
  187. C =====
  188. ELSE IF (IFOU.EQ.2) THEN
  189. NBROBL=6
  190. SEGINI,NOMID
  191. LESOBL(1)='FP '
  192. LESOBL(2)='FPI '
  193. LESOBL(3)='FX '
  194. LESOBL(4)='MY '
  195. LESOBL(5)='FY '
  196. LESOBL(6)='MX '
  197. C =====
  198. C 5.4 - Bidimensionnel PLAN (DP/CP/DPGE)
  199. C =====
  200. ELSE
  201. NBROBL=4
  202. SEGINI,NOMID
  203. LESOBL(1)='FP '
  204. LESOBL(2)='FPI '
  205. LESOBL(3)='FX '
  206. LESOBL(4)='FY '
  207. ENDIF
  208.  
  209. C 6 - Element de SURFACE LIBRE
  210. C ==============================
  211. ELSE IF (MFR.EQ.23) THEN
  212. NBROBL=3
  213. SEGINI,NOMID
  214. LESOBL(1)='FP '
  215. LESOBL(2)='FPI '
  216. LESOBL(3)='FZ '
  217.  
  218. C 7 - Element JOINT (35),JOINT CISAILLEMENT (53),JOINT GENERALISE (55)
  219. C =====================================================================
  220. c cccccc
  221. ELSE IF (MFR.EQ.35.OR.MFR.EQ.53.OR.MFR.EQ.55.OR.MFR.EQ.78) THEN
  222. c cccccc
  223. C =====
  224. C 7.1 - Tridimensionnel
  225. C =====
  226. IF (IFOU.EQ.2) THEN
  227. NBROBL=3
  228. SEGINI,NOMID
  229. LESOBL(1)='FX '
  230. LESOBL(2)='FY '
  231. LESOBL(3)='FZ '
  232. C =====
  233. C 7.2 - Bidimensionnel PLAN (CP/DP/DPGE)
  234. C =====
  235. ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.-2.OR.IFOU.EQ.-3) THEN
  236. NBROBL=2
  237. SEGINI,NOMID
  238. LESOBL(1)='FX '
  239. LESOBL(2)='FY '
  240. C =====
  241. C 7.3 - Axisymetrie
  242. C =====
  243. ELSE IF (IFOU.EQ.0) THEN
  244. NBROBL=2
  245. SEGINI,NOMID
  246. LESOBL(1)='FR '
  247. LESOBL(2)='FZ '
  248. ENDIF
  249.  
  250. C 8 - Elements MASSIFS, de MEMBRANE (25), UNIAXIALE (27)
  251. C ========================================================
  252. ELSE IF (MFR.EQ.1.OR.MFR.EQ.25.OR.MFR.EQ.27.OR.MFR.EQ.31.OR.
  253. $ MFR.EQ.72) THEN
  254. C =====
  255. C 8.1 - Bidimensionnel PLAN (CP/DP)
  256. C =====
  257. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  258. NBROBL=2
  259. SEGINI,NOMID
  260. LESOBL(1)='FX '
  261. LESOBL(2)='FY '
  262. C =====
  263. C 8.2 - Axisymetrie
  264. C =====
  265. ELSE IF (IFOU.EQ.0) THEN
  266. NBROBL=2
  267. SEGINI,NOMID
  268. LESOBL(1)='FR '
  269. LESOBL(2)='FZ '
  270. C =====
  271. C 8.3 - Fourier
  272. C =====
  273. ELSE IF (IFOU.EQ.1) THEN
  274. NBROBL=3
  275. SEGINI,NOMID
  276. LESOBL(1)='FR '
  277. LESOBL(2)='FZ '
  278. LESOBL(3)='FT '
  279. C =====
  280. C 8.4 - Tridimensionnel
  281. C =====
  282. ELSE IF (IFOU.EQ.2) THEN
  283. NBROBL=3
  284. SEGINI,NOMID
  285. LESOBL(1)='FX '
  286. LESOBL(2)='FY '
  287. LESOBL(3)='FZ '
  288. C =====
  289. C 8.5 - Bidimensionnel PLAN DPGE
  290. C =====
  291. ELSE IF (IFOU.EQ.-3) THEN
  292. IF (MFR.EQ.72) THEN
  293. NBROBL=2
  294. SEGINI,NOMID
  295. LESOBL(1)='FX '
  296. LESOBL(2)='FY '
  297. ELSE
  298. NBROBL=5
  299. SEGINI,NOMID
  300. LESOBL(1)='FX '
  301. LESOBL(2)='FY '
  302. LESOBL(3)='FZ '
  303. LESOBL(4)='MY '
  304. LESOBL(5)='MX '
  305. ENDIF
  306. C =====
  307. C 8.6 - Unidimensionnel (1D)
  308. C =====
  309. ELSE IF (IFOU.GE.3.AND.IFOU.LE.15.AND.MFR.EQ.1) THEN
  310. IF (IFOU.LE.6) THEN
  311. NBROBL=1
  312. SEGINI,NOMID
  313. LESOBL(1)='FX '
  314. ELSE IF (IFOU.EQ.7.OR.IFOU.EQ.8) THEN
  315. NBROBL=2
  316. SEGINI,NOMID
  317. LESOBL(1)='FX '
  318. LESOBL(2)='FY '
  319. ELSE IF (IFOU.EQ.9.OR.IFOU.EQ.10) THEN
  320. NBROBL=2
  321. SEGINI,NOMID
  322. LESOBL(1)='FX '
  323. LESOBL(2)='FZ '
  324. ELSE IF (IFOU.EQ.11) THEN
  325. NBROBL=3
  326. SEGINI,NOMID
  327. LESOBL(1)='FX '
  328. LESOBL(2)='FY '
  329. LESOBL(3)='FZ '
  330. ELSE IF (IFOU.EQ.12.OR.IFOU.EQ.13.OR.IFOU.EQ.15) THEN
  331. NBROBL=1
  332. SEGINI,NOMID
  333. LESOBL(1)='FR '
  334. ELSE IF (IFOU.EQ.14) THEN
  335. NBROBL=2
  336. SEGINI,NOMID
  337. LESOBL(1)='FR '
  338. LESOBL(2)='FZ '
  339. ENDIF
  340. ENDIF
  341.  
  342. C 9 - Formulation THERMIQUE
  343. C ===========================
  344. ELSE IF (MFR.EQ.29) THEN
  345. NBROBL=1
  346. SEGINI,NOMID
  347. LESOBL(1)='Q '
  348.  
  349. C 10 - Formulation POREUX
  350. C =========================
  351. ELSE IF (MFR.EQ.33) THEN
  352. C ======
  353. C 10.1 - Bidimensionnel PLAN (CP/DP)
  354. C ======
  355. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  356. NBROBL=3
  357. SEGINI,NOMID
  358. LESOBL(1)='FX '
  359. LESOBL(2)='FY '
  360. LESOBL(3)='FP '
  361. C ======
  362. C 10.2 - Axisymetrie
  363. C ======
  364. ELSE IF (IFOU.EQ.0) THEN
  365. NBROBL=3
  366. SEGINI,NOMID
  367. LESOBL(1)='FR '
  368. LESOBL(2)='FZ '
  369. LESOBL(3)='FP '
  370. C ======
  371. C 10.3 - Fourier
  372. C ======
  373. ELSE IF (IFOU.EQ.1) THEN
  374. NBROBL=4
  375. SEGINI,NOMID
  376. LESOBL(1)='FR '
  377. LESOBL(2)='FZ '
  378. LESOBL(3)='FT '
  379. LESOBL(4)='FP '
  380. C ======
  381. C 10.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  382. C ======
  383. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  384. NBROBL=4
  385. SEGINI,NOMID
  386. LESOBL(1)='FX '
  387. LESOBL(2)='FY '
  388. LESOBL(3)='FZ '
  389. LESOBL(4)='FP '
  390. ENDIF
  391.  
  392. C 11 - Formulation POREUX type Q
  393. C ================================
  394. ELSE IF (MFR.EQ.57) THEN
  395. C ======
  396. C 11.1 - Bidimensionnel PLAN (CP/DP)
  397. C ======
  398. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  399. NBROBL=4
  400. SEGINI,NOMID
  401. LESOBL(1)='FX '
  402. LESOBL(2)='FY '
  403. LESOBL(3)='FP '
  404. LESOBL(4)='FPQ '
  405. C ======
  406. C 11.2 - Axisymetrie
  407. C ======
  408. ELSE IF (IFOU.EQ.0) THEN
  409. NBROBL=4
  410. SEGINI,NOMID
  411. LESOBL(1)='FR '
  412. LESOBL(2)='FZ '
  413. LESOBL(3)='FP '
  414. LESOBL(4)='FPQ '
  415. C ======
  416. C 11.3 - Fourier
  417. C ======
  418. ELSE IF (IFOU.EQ.1) THEN
  419. NBROBL=5
  420. SEGINI,NOMID
  421. LESOBL(1)='FR '
  422. LESOBL(2)='FZ '
  423. LESOBL(3)='FT '
  424. LESOBL(4)='FP '
  425. LESOBL(5)='FPQ '
  426. C ======
  427. C 11.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  428. C ======
  429. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  430. NBROBL=5
  431. SEGINI,NOMID
  432. LESOBL(1)='FX '
  433. LESOBL(2)='FY '
  434. LESOBL(3)='FZ '
  435. LESOBL(4)='FP '
  436. LESOBL(5)='FPQ '
  437. ENDIF
  438.  
  439. C 12 - Formulation POREUX type R
  440. C ================================
  441. ELSE IF (MFR.EQ.59) THEN
  442. C ======
  443. C 12.1 - Bidimensionnel PLAN (CP/DP)
  444. C ======
  445. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  446. NBROBL=5
  447. SEGINI,NOMID
  448. LESOBL(1)='FX '
  449. LESOBL(2)='FY '
  450. LESOBL(3)='FP '
  451. LESOBL(4)='FPQ '
  452. LESOBL(5)='FTP '
  453. C ======
  454. C 12.2 - Axisymetrie
  455. C ======
  456. ELSE IF (IFOU.EQ.0) THEN
  457. NBROBL=5
  458. SEGINI,NOMID
  459. LESOBL(1)='FR '
  460. LESOBL(2)='FZ '
  461. LESOBL(3)='FP '
  462. LESOBL(4)='FPQ '
  463. LESOBL(5)='FTP '
  464. C ======
  465. C 12.3 - Fourier
  466. C ======
  467. ELSE IF (IFOU.EQ.1) THEN
  468. NBROBL=6
  469. SEGINI,NOMID
  470. LESOBL(1)='FR '
  471. LESOBL(2)='FZ '
  472. LESOBL(3)='FT '
  473. LESOBL(4)='FP '
  474. LESOBL(5)='FPQ '
  475. LESOBL(6)='FTP '
  476. C ======
  477. C 12.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  478. C ======
  479. ELSE IF (IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  480. NBROBL=6
  481. SEGINI,NOMID
  482. LESOBL(1)='FX '
  483. LESOBL(2)='FY '
  484. LESOBL(3)='FZ '
  485. LESOBL(4)='FP '
  486. LESOBL(5)='FPQ '
  487. LESOBL(6)='FTP '
  488. ENDIF
  489.  
  490. C 13 - Elements de RACCORD
  491. C ==========================
  492. ELSE IF (MFR.EQ.19.OR.MFR.EQ.21) THEN
  493. NBROBL=2
  494. SEGINI,NOMID
  495. LESOBL(1)='FP '
  496. LESOBL(2)='FPI '
  497.  
  498. C 14 - Element de RACCORD MASSIF (2e serie de composantes)
  499. C ==========================================================
  500. ELSE IF (MFR.EQ.1019) THEN
  501. C ======
  502. C 14.1 - Bidimensionnel PLAN (CP/DP)
  503. C ======
  504. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  505. NBROBL=2
  506. SEGINI,NOMID
  507. LESOBL(1)='FX '
  508. LESOBL(2)='FY '
  509. C ======
  510. C 14.2 - Axisymetrie
  511. C ======
  512. ELSE IF (IFOU.EQ.0) THEN
  513. NBROBL=2
  514. SEGINI,NOMID
  515. LESOBL(1)='FR '
  516. LESOBL(2)='FZ '
  517. C ======
  518. C 14.3 - Fourier
  519. C ======
  520. ELSE IF (IFOU.EQ.1) THEN
  521. NBROBL=3
  522. SEGINI,NOMID
  523. LESOBL(1)='FR '
  524. LESOBL(2)='FZ '
  525. LESOBL(3)='FT '
  526. C ======
  527. C 14.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  528. C ======
  529. ELSE IF(IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  530. NBROBL=3
  531. SEGINI,NOMID
  532. LESOBL(1)='FX '
  533. LESOBL(2)='FY '
  534. LESOBL(3)='FZ '
  535. ENDIF
  536.  
  537. C 15 - Element de RACCORD COQUE (2e serie de composantes)
  538. C =========================================================
  539. ELSE IF (MFR.EQ.1021) THEN
  540. C ======
  541. C 15.1 - Bidimensionnel PLAN (CP/DP)
  542. C ======
  543. IF (IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  544. NBROBL=3
  545. SEGINI,NOMID
  546. LESOBL(1)='FX '
  547. LESOBL(2)='FY '
  548. LESOBL(3)='MZ '
  549. C ======
  550. C 15.2 - Axisymetrie
  551. C ======
  552. ELSE IF (IFOU.EQ.0) THEN
  553. NBROBL=3
  554. SEGINI,NOMID
  555. LESOBL(1)='FR '
  556. LESOBL(2)='FZ '
  557. LESOBL(3)='MT '
  558. C ======
  559. C 15.3 - Fourier
  560. C ======
  561. ELSE IF (IFOU.EQ.1) THEN
  562. NBROBL=4
  563. SEGINI,NOMID
  564. LESOBL(1)='FR '
  565. LESOBL(2)='FZ '
  566. LESOBL(3)='FT '
  567. LESOBL(4)='MT '
  568. C ======
  569. C 15.4 - Tridimensionnel et bidimensionnel DEFO PLAN GENE
  570. C ======
  571. ELSE IF(IFOU.EQ.2.OR.IFOU.EQ.-3) THEN
  572. NBROBL=6
  573. SEGINI,NOMID
  574. LESOBL(1)='FX '
  575. LESOBL(2)='FY '
  576. LESOBL(3)='FZ '
  577. LESOBL(4)='MX '
  578. LESOBL(5)='MY '
  579. LESOBL(6)='MZ '
  580. ENDIF
  581.  
  582. C 16 - Element TUYO
  583. C ===================
  584. ELSE IF (MFR.EQ.39) THEN
  585. NBROBL=6+9
  586. SEGINI,NOMID
  587. LESOBL(1)='FX '
  588. LESOBL(2)='FY '
  589. LESOBL(3)='FZ '
  590. LESOBL(4)='MX '
  591. LESOBL(5)='MY '
  592. LESOBL(6)='MZ '
  593. LESOBL(7)='FW0 '
  594. LESOBL(8)='FU1 '
  595. LESOBL(9)='FU2 '
  596. LESOBL(10)='FU3 '
  597. LESOBL(11)='FU4 '
  598. LESOBL(12)='FW1 '
  599. LESOBL(13)='FW2 '
  600. LESOBL(14)='FW3 '
  601. LESOBL(15)='FW4 '
  602. C 17 - Element POI1 materiau MODAL
  603. C ===================
  604. ELSE IF (MFR.EQ.26) THEN
  605. NBROBL=1
  606. SEGINI,NOMID
  607. LESOBL(1)='FALF'
  608. C 18 - Element POI1 materiau STATIQUE
  609. C ===================
  610. ELSE IF (MFR.EQ.28) THEN
  611. NBROBL=1
  612. SEGINI,NOMID
  613. LESOBL(1)='FBET'
  614. C 19 - Element XQ4R (xfem meca rupture)
  615. C==================
  616. ELSEIF(MFR.EQ.63) THEN
  617. CTY - Element XQ4R (xfem meca rupture en 2D)
  618. IF(IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  619. NBROBL=2
  620. NBRFAC=18
  621. SEGINI,NOMID
  622. LESOBL(1)='FX '
  623. LESOBL(2)='FY '
  624. LESFAC(1)='FAX '
  625. LESFAC(2)='FAY '
  626. LESFAC(3)='FB1X'
  627. LESFAC(4)='FB1Y'
  628. LESFAC(5)='FC1X'
  629. LESFAC(6)='FC1Y'
  630. LESFAC(7)='FD1X'
  631. LESFAC(8)='FD1Y'
  632. LESFAC(9)='FE1X'
  633. LESFAC(10)='FE1Y'
  634. LESFAC(11)='FB2X'
  635. LESFAC(12)='FB2Y'
  636. LESFAC(13)='FC2X'
  637. LESFAC(14)='FC2Y'
  638. LESFAC(15)='FD2X'
  639. LESFAC(16)='FD2Y'
  640. LESFAC(17)='FE2X'
  641. LESFAC(18)='FE2Y'
  642. CTY - Element XC8R (xfem meca rupture en 3D)
  643. ELSE IF (IFOU.EQ.2) THEN
  644. NBROBL=3
  645. NBRFAC=27
  646. SEGINI,NOMID
  647. LESOBL(1)='FX '
  648. LESOBL(2)='FY '
  649. LESOBL(3)='FZ '
  650. LESFAC(1)='FAX '
  651. LESFAC(2)='FAY '
  652. LESFAC(3)='FAZ '
  653. LESFAC(4)='FB1X'
  654. LESFAC(5)='FB1Y'
  655. LESFAC(6)='FB1Z'
  656. LESFAC(7)='FC1X'
  657. LESFAC(8)='FC1Y'
  658. LESFAC(9)='FC1Z'
  659. LESFAC(10)='FD1X'
  660. LESFAC(11)='FD1Y'
  661. LESFAC(12)='FD1Z'
  662. LESFAC(13)='FE1X'
  663. LESFAC(14)='FE1Y'
  664. LESFAC(15)='FE1Z'
  665. LESFAC(16)='FB2X'
  666. LESFAC(17)='FB2Y'
  667. LESFAC(18)='FB2Z'
  668. LESFAC(19)='FC2X'
  669. LESFAC(20)='FC2Y'
  670. LESFAC(21)='FC2Z'
  671. LESFAC(22)='FD2X'
  672. LESFAC(23)='FD2Y'
  673. LESFAC(24)='FD2Z'
  674. LESFAC(25)='FE2X'
  675. LESFAC(26)='FE2Y'
  676. LESFAC(27)='FE2Z'
  677. ENDIF
  678.  
  679.  
  680. C 20 - Elements de zones cohesives
  681. C=================================
  682. ELSEIF(MFR.EQ.77) THEN
  683. C - Element ZCO2 (xfem meca rupture en 2D)
  684. IF(IFOU.EQ.-2.OR.IFOU.EQ.-1) THEN
  685. NBROBL=2
  686. NBRFAC=18
  687. SEGINI,NOMID
  688. LESOBL(1)='FAX '
  689. LESOBL(2)='FAY '
  690. LESFAC(1)='FX '
  691. LESFAC(2)='FY '
  692. LESFAC(3)='FB1X'
  693. LESFAC(4)='FB1Y'
  694. LESFAC(5)='FC1X'
  695. LESFAC(6)='FC1Y'
  696. LESFAC(7)='FD1X'
  697. LESFAC(8)='FD1Y'
  698. LESFAC(9)='FE1X'
  699. LESFAC(10)='FE1Y'
  700. LESFAC(11)='FB2X'
  701. LESFAC(12)='FB2Y'
  702. LESFAC(13)='FC2X'
  703. LESFAC(14)='FC2Y'
  704. LESFAC(15)='FD2X'
  705. LESFAC(16)='FD2Y'
  706. LESFAC(17)='FE2X'
  707. LESFAC(18)='FE2Y'
  708. C - Element ZCO3 et ZCO4 (xfem meca rupture en 3D)
  709. ELSE IF (IFOU.EQ.2) THEN
  710. NBROBL=3
  711. NBRFAC=27
  712. SEGINI,NOMID
  713. LESOBL(1)='FAX '
  714. LESOBL(2)='FAY '
  715. LESOBL(3)='FAZ '
  716. LESFAC(1)='FX '
  717. LESFAC(2)='FY '
  718. LESFAC(3)='FZ '
  719. LESFAC(4)='FB1X'
  720. LESFAC(5)='FB1Y'
  721. LESFAC(6)='FB1Z'
  722. LESFAC(7)='FC1X'
  723. LESFAC(8)='FC1Y'
  724. LESFAC(9)='FC1Z'
  725. LESFAC(10)='FD1X'
  726. LESFAC(11)='FD1Y'
  727. LESFAC(12)='FD1Z'
  728. LESFAC(13)='FE1X'
  729. LESFAC(14)='FE1Y'
  730. LESFAC(15)='FE1Z'
  731. LESFAC(16)='FB2X'
  732. LESFAC(17)='FB2Y'
  733. LESFAC(18)='FB2Z'
  734. LESFAC(19)='FC2X'
  735. LESFAC(20)='FC2Y'
  736. LESFAC(21)='FC2Z'
  737. LESFAC(22)='FD2X'
  738. LESFAC(23)='FD2Y'
  739. LESFAC(24)='FD2Z'
  740. LESFAC(25)='FE2X'
  741. LESFAC(26)='FE2Y'
  742. LESFAC(27)='FE2Z'
  743. ENDIF
  744.  
  745. C 21 - Formulation ELECTROSTATIQUE (base MASSIF)
  746. C ==================================
  747. ELSE IF (MFR.EQ.71) THEN
  748. NBROBL=1
  749. SEGINI,NOMID
  750. LESOBL(1)='QEL '
  751.  
  752. C 22 - Formulation DIFFUSION (base MASSIF)
  753. C ============================
  754. ELSE IF (MFR.EQ.73) THEN
  755. C* La grandeur DUALe contenue dans TYMODE(2) est ajoutee ailleurs
  756. NBROBL=1
  757. SEGINI,NOMID
  758. LESOBL(1)='Q.. '
  759. ELSEIF(MFR.EQ.79) THEN
  760. NBROBL=1
  761. SEGINI,NOMID
  762. LESOBL(1)='Q '
  763.  
  764. C=DEB==== FORMULATION HHO ==============================================
  765. ELSE IF (MFR.EQ.HHO_MFR_ELEMENT) THEN
  766. write(ioimp,*) 'HHO : APPEL IDFORC INUTILE --> ERREUR'
  767. CALL ERREUR(5)
  768. RETURN
  769. C=FIN==== FORMULATION HHO ==============================================
  770.  
  771. ENDIF
  772.  
  773. C Par DEFAUT : segment VIDE
  774. C ===========================
  775. IF (NOMID.EQ.0) THEN
  776. SEGINI,NOMID
  777. ELSE
  778. if (ifomod.eq.6) then
  779. nbrfa0 = nbrfac
  780. NBRFAC = NBROBL + (nbrfa0*2)
  781. segadj nomid
  782. do imo = 1,nbrobl
  783. lesfac(nbrfa0 + imo)(2:4) = lesobl(imo)(1:3)
  784. lesfac(nbrfa0 + imo)(1:1) = 'I'
  785. enddo
  786. do imo = 1,nbrfa0
  787. lesfac(nbrfa0+nbrobl+imo)(2:4) = lesfac(imo)(1:3)
  788. lesfac(nbrfa0+nbrobl+imo)(1:1) = 'I'
  789. enddo
  790. endif
  791. ENDIF
  792.  
  793. SEGACT,NOMID*NOMOD
  794. IPNOMC=NOMID
  795.  
  796. RETURN
  797. END
  798.  
  799.  
  800.  

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