Télécharger iddual.eso

Retour à la liste

Numérotation des lignes :

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

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