Télécharger elquoi.eso

Retour à la liste

Numérotation des lignes :

  1. C ELQUOI SOURCE CB215821 19/08/20 21:16:58 10287
  2.  
  3. C=======================================================================
  4. C= Sous-programme ELQUOI =
  5. C= --------------------- =
  6. C= =
  7. C= Ce sous programme fournit les caracteristiques des elements finis. =
  8. C= =
  9. C= Entrees : =
  10. C= --------- =
  11. C= NELE : numero de l'element fini =
  12. C= NBPOIN : nombre de points d'integration contraintes =
  13. C= multicouches ( COQ6 - COQ8 ) =
  14. C= INTTYP : type d'integration utilisee par l'operateur =
  15. C= Si l'on desire un segment d'integration pour un champ aux : =
  16. C= 1 = NOEUDS ( appel a RENOEU ) =
  17. C= 2 = points de GAUSS pour centre de GRAVITE et CHAMP CONSTANT =
  18. C= 3 = points de GAUSS pour la RIGIDITE =
  19. C= 4 = points de GAUSS pour la MASSE =
  20. C= 5 = points de GAUSS pour les CONTRAINTES =
  21. C= 6 = on ne calcule pas de segment d'integration =
  22. C= 7 = FACE =
  23. C= 8 = CENTREP1 =
  24. C= 9 = MSOMMET =
  25. C -10= en mecanique on veut calculer les 5 premiers et on les met =
  26. C dans infmod(3 ...) =
  27. C= Dans un autre cas, infell(11) renverra un pointeur sur un segment =
  28. C= d'integration de type RIGIDITE. =
  29. C= IMODEL : pointeur sur une zone elementaire d'un modele =
  30. C= SEGMENT ACTIF en entree et en sortie =
  31. C= Sorties : =
  32. C= --------- =
  33. C= retourne IPTR pointeur sur un segment INFO ACTIF contenant : =
  34. C= La dimension de infell est fixee par NINFOS =
  35. C= infell( 1) numero de l'element fini =
  36. C= infell( 2) nombre de points d'integration en contraintes =
  37. C= multicouche =
  38. C= infell( 3) nombre de points d'integration pour la masse =
  39. C= infell( 4) nombre de points d'integration pour SIGMA =
  40. C= BSIGMA et KSIGMA =
  41. C= infell( 5) nombre de caracteristiques =
  42. C= infell( 6) nombre de points d'integration pour la RIGIDITE =
  43. C= infell( 7) longueur d'un tableau de travail pour l'element =
  44. C= infell( 8) nombre de fonctions de forme =
  45. C= infell( 9) nbre de d.d.l. dans la matrice de RIGIDITE =
  46. C= infell(10) taille de la matrice de Hooke =
  47. C= infell(11) pointeur sur le segment d'integration =
  48. C= infell(12) pointeur sur le 2nd segment d'integration des =
  49. C= elements homogeneises ou fluides (COQ6 ou COQ8) =
  50. C= infell(13) numero de la formulation de l'element fini =
  51. C= = 1 MASSIF =
  52. C= voir aussi = 3 COQUE =
  53. C= NUMMFR.eso = 5 COQUE EPAISSE ( COQ6 , COQ8 ) =
  54. C= = 7 POUTRE =
  55. C= = 9 COQUE AVEC CISAILLEMENT TRANSVERSE =
  56. C= = 11 LIQUIDE =
  57. C= = 13 TUYAU =
  58. C= = 15 LINESPRING =
  59. C= = 17 TUYAU FISSURE =
  60. C= = 19 RACCORD MASSIF =
  61. C= = 21 RACCORD COQUE =
  62. C= = 23 SURFACE LIBRE =
  63. C= = 25 MEMBRANE =
  64. C= = 26 point support MODAL =
  65. C= = 27 UNIAXIALE =
  66. C= = 28 point support STATIQUE =
  67. C= = 29 THERMIQUE =
  68. C= = 31 INCOMPRESSIBLES =
  69. C= = 33 POREUX =
  70. C= = 35 JOINT =
  71. C= = 37 HOMOGENEISE =
  72. C= = 39 TUYO =
  73. C= = 41 TUYAU ACOUSTIQUE PURE =
  74. C= = 43 RACCORD TUYAU FLUIDE =
  75. C= = 45 HYBRIDE =
  76. C= = 47 FIBRE =
  77. C= = 49 BARRE 3D EXCENTREE =
  78. C= = 51 LIASON A 2 NOEUDS =
  79. C= = 53 JOINT CISAILLEMENT (2D) =
  80. C= = 55 JOINT GENERALISE =
  81. C= = 57 POREUX TYPE Q =
  82. C= = 59 POREUX TYPE R =
  83. C= = 61 MACRO ELEMENT =
  84. C= = 63 XFEM meca rupt (2D/3D) =
  85. C= = 65 THERMOHYDRIQUE =
  86. C= = 69 MAGNETODYNAMIQUE =
  87. C= = 71 ELECTROSTATIQUE =
  88. C= = 73 DIFFUSION =
  89. C= = 75 JOINT UNIDIMENSIONNEL =
  90. C= = 77 ZONE COHESIVE =
  91. c = 79 TUYAU 1D pour advection
  92. C* = 78 COAXIAL
  93. c cccccc
  94. C= infell(14) numero de l'element geometrique associe (NUMGEO) =
  95. C= infell(15) nombre maximal de d.d.l. par noeud =
  96. C= infell(16) nombre de composantes de contraintes ou de deform. =
  97. C=======================================================================
  98.  
  99. SUBROUTINE ELQUOI(NELE,NBPOIN,INTTYP,IPTR,IPMODL)
  100.  
  101. IMPLICIT INTEGER(I-N)
  102. IMPLICIT REAL*8(A-H,O-Z)
  103.  
  104.  
  105. -INC PPARAM
  106. -INC CCOPTIO
  107. -INC CCGEOME
  108. -INC CCHAMP
  109.  
  110. -INC SMMODEL
  111. -INC SMELEME
  112. -INC SMLMOTS
  113. -INC SMINTE
  114.  
  115. C Segment (type LISTENTI) contenant les informations sur un element
  116. SEGMENT INFO
  117. INTEGER INFELL(JG)
  118. ENDSEGMENT
  119.  
  120. C=======================================================================
  121. C= INTEGR : SAVE local des pointeurs sur les segments d'integration =
  122. C= CAS GENERAL =
  123. C= NELFI : Nombre de types d'element FINI (= LNOMTP de bdata.eso) =
  124. C= NBMODE : Nombre de MODEs de calcul (= nb valeurs possibles IFOMOD) =
  125. C= TYINTE : Type de l'INTEGRATION utilise par le calcul =
  126. C= (correspond a la valeur de INTTYP=infell(11) en entree) =
  127. C= NTYNTE : Nombre de TYPEs de segment D'INTEGRATION possibles =
  128. C= (voir la description de INTTYP ci-dessus) =
  129. C= NINFOS : Dimension (JG) du tableau infell (segment INFO) = 16 =
  130. C= On sauvegarde dans INTEGR(I,J) le pointeur sur un segment d'inte- =
  131. C= gration correspondant a l'element fini de type I et une integration =
  132. C= de type J. =
  133. C=======================================================================
  134. C Valeurs de IFOMOD : -1 0 1 2 3 4 5 6
  135. C PLAN AXIS FOUR TRID UNID UNID UNID FREQ
  136. C PLAN AXIS SPHE
  137. PARAMETER ( NELFI = 300 , NTYNTE = 9 , NBMODE = 8 )
  138. PARAMETER ( NINTEG = NELFI * NTYNTE * NBMODE , NINFOS = 16 )
  139.  
  140. INTEGER INTEGR(NELFI,NTYNTE,NBMODE),TYINTE
  141.  
  142. logical dcmate,dcmat2
  143.  
  144. SAVE INTEGR
  145. DATA INTEGR / NINTEG*0 /
  146.  
  147. IPTR = 0
  148.  
  149. C Tests de verification :
  150. IF (NELFI.LT.LNOMTP) THEN
  151. WRITE(IOIMP,*)
  152. WRITE(IOIMP,*) 'ELQUOI : valeur de NELFI incorrecte !'
  153. WRITE(IOIMP,*) ' NELFI = ',NELFI,LNOMTP
  154. CALL ERREUR(5)
  155. RETURN
  156. ENDIF
  157. C On se place sur la bonne "tranche" du tableau INTEGR :
  158. IBMODE = IFOMOD + 2
  159. IF (NBMODE.LT.IBMODE) THEN
  160. WRITE(IOIMP,*)
  161. WRITE(IOIMP,*) 'ELQUOI : valeur de NBMODE incorrecte !'
  162. WRITE(IOIMP,*) ' IBMODE = ',IBMODE,NBMODE,IFOMOD
  163. CALL ERREUR(5)
  164. RETURN
  165. ENDIF
  166. C Quel(s) type(s) de segment est(sont) a traiter ?
  167. TYINTE = INTTYP
  168. IF (INTTYP.EQ.-10) TYINTE = 0
  169.  
  170. IMODEL = IPMODL
  171.  
  172. dcmat2 = .false.
  173. C Recuperation des donnees de infell en entree
  174. MELE = NELE
  175. NBGS = NBPOIN
  176. IELE = NUMGEO(MELE)
  177. MFR = NUMMFR(MELE)
  178. C
  179. dcmate = .false.
  180. do im = 1, imodel.matmod(/2)
  181. if (imodel.matmod(im).eq.'IMPEDANCE') then
  182. dcmate = .true.
  183. meleme = imodel.imamod
  184. ityp1 = meleme.itypel
  185. mfr = nummfr(mele)
  186. if (ityp1.eq.1) mele = 45
  187. iele = numgeo(mele)
  188. endif
  189. enddo
  190. C Nombre de points d'integration dans l'epaisseur (stocke dans IMODEL)
  191. NPINT=0
  192. IF (imodel.INFMOD(/1).NE.0) NPINT = imodel.INFMOD(1)
  193. c IF(MELE.EQ.263) NPINT=0
  194. C Initialisation
  195. IPT2 = 0
  196. JG = NINFOS
  197. SEGINI,INFO
  198.  
  199. C=---------------------------------------------------------------------=
  200. C= REMPLISSAGE DU TABLEAU infell
  201. C=---------------------------------------------------------------------=
  202. C Remplissage de infell(1) : numero de l'element fini
  203. C --------------------------
  204. INFELL(1)=NELE
  205.  
  206. C Remplissage de infell(8) :
  207. C --------------------------
  208. C Sauf cas particuliers, le nombre de fonctions de forme de l'element
  209. C fini est egal au nombre de noeuds de l'element geometrique support.
  210. INFELL(8) = NBNNE(IELE)
  211. C Massifs : TRIx-QUAx 4 a 11, CUxx a PRxx 14 a 17, TExx-PYxx 23 a 26
  212. IF (MELE.GE.4.AND.MELE.LE.11) THEN
  213. INFELL(8) = 3
  214. ELSE IF (MELE.GE.14.AND.MELE.LE.17) THEN
  215. infell(8) = 3
  216. ELSE IF (MELE.GE.23.AND.MELE.LE.26) THEN
  217. infell(8) = 3
  218. C Polygones : POxx 111 a 122
  219. ELSE IF (MELE.GE.111.AND.MELE.LE.122) THEN
  220. IF (MELE.EQ.111) infell(8) = 3
  221. IF (MELE.EQ.112) infell(8) = 4
  222. IF (MELE.EQ.113) infell(8) = 5
  223. IF (MELE.EQ.114) infell(8) = 6
  224. IF (MELE.EQ.115) infell(8) = 7
  225. IF (MELE.EQ.116) infell(8) = 8
  226. IF (MELE.EQ.117) infell(8) = 9
  227. IF (MELE.EQ.118) infell(8) = 10
  228. IF (MELE.EQ.119) infell(8) = 11
  229. IF (MELE.EQ.120) infell(8) = 12
  230. IF (MELE.EQ.121) infell(8) = 13
  231. IF (MELE.EQ.122) infell(8) = 14
  232. C Elements QxRI 183 a 184
  233. ELSE IF (MELE.EQ.183.OR.MELE.EQ.184) THEN
  234. infell(8) = 3
  235. CTY Element XQ4R (xfem meca rupture en 2D)
  236. ELSEIF(MELE.eq.263) THEN
  237. infell(8)=40
  238. CTY Element XC8R (xfem meca rupture en 3D)
  239. ELSE IF(MELE.eq.264) THEN
  240. infell(8)=80
  241. ENDIF
  242.  
  243. C Elements Navier Stokes : cas P1CENTRE
  244. IF(TYINTE.EQ.8) THEN
  245. C cas MACRO 2D QUAF 2D --> TRI3
  246. IF(MELE.EQ.217.OR.MELE.EQ.224.OR.MELE.EQ.231
  247. & .OR.MELE.EQ.238.OR.MELE.EQ.245.OR.MELE.EQ.252)
  248. & infell(8) = 3
  249. C cas MACRO 2D QUAF 2D --> QUA4
  250. IF(MELE.EQ.218.OR.MELE.EQ.225.OR.MELE.EQ.232
  251. & .OR.MELE.EQ.239.OR.MELE.EQ.246.OR.MELE.EQ.253)
  252. & infell(8) = 3
  253. C cas MACRO 3D QUAF 3D
  254. C IF((MELE.GE.226.AND.MELE.LE.229).OR.
  255. C & (MELE.GE.247.AND.MELE.LE.250)) infell(8) = 4
  256. ENDIF
  257. C Elements Navier Stokes : cas MSOMMET
  258. IF(TYINTE.EQ.9) THEN
  259. C cas MACRO QUAF 1D --> SEG2
  260. IF(MELE.EQ.216.OR.MELE.EQ.223.OR.MELE.EQ.230
  261. & .OR.MELE.EQ.237.OR.MELE.EQ.244.OR.MELE.EQ.251) IELE = 2
  262. C cas MACRO QUAF 2D --> TRI3
  263. IF(MELE.EQ.217.OR.MELE.EQ.224.OR.MELE.EQ.231
  264. & .OR.MELE.EQ.238.OR.MELE.EQ.245.OR.MELE.EQ.252) IELE = 4
  265. C cas MACRO QUAF 2D --> QUA4
  266. IF(MELE.EQ.218.OR.MELE.EQ.225.OR.MELE.EQ.232
  267. & .OR.MELE.EQ.239.OR.MELE.EQ.246.OR.MELE.EQ.253) IELE = 8
  268. C cas MACRO QUAF 3D --> CUB8
  269. IF(MELE.EQ.233.OR.MELE.EQ.254) IELE = 14
  270. C cas MACRO QUAF 3D --> PRI6
  271. IF(MELE.EQ.234.OR.MELE.EQ.255) IELE = 16
  272. C cas MACRO QUAF 3D --> TET4
  273. IF(MELE.EQ.235.OR.MELE.EQ.256) IELE = 23
  274. C cas MACRO QUAF 3D --> PYR5
  275. IF(MELE.EQ.236.OR.MELE.EQ.257) IELE = 25
  276. infell(8) = NBNNE(IELE)
  277. infell(14)= IELE
  278. ENDIF
  279.  
  280. C Pour les elements xxxP (79 a 83), TUYO (96), JOPx (108 a 110), xxxQ
  281. C (173 a 177), xxxR (178 a 182), JORx (185 a 187) et JOQx(188 a 190),
  282. C infell(8) est affecte lors du remplissage complet de infell.
  283.  
  284. C Remplissage de infell(13) et infell(14) :
  285. C -----------------------------------------
  286. C infell(13) : numero de la FORMULATION - MFR=NUMMFR(NELE)
  287. infell(13) = MFR
  288. do im = 1,matmod(/2)
  289. if (MFR.eq.27.and.matmod(im).eq.'MODAL') infell(13) = 26
  290. if (MFR.eq.27.and.matmod(im).eq.'STATIQUE') infell(13) = 28
  291. enddo
  292. IF (FORMOD(1).EQ.'CHARGEMENT') THEN
  293. IF (MFR.EQ.1) INFELL(13)=72
  294. IF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.7.OR.MFR.EQ.9.OR.
  295. & MFR.EQ.13) INFELL(13) = 74
  296. ENDIF
  297. MFR = infell(13)
  298. mfr3 = nummfr(nele)
  299. C mfr2 non nul en cas de formulation massive non mecanique
  300. mfr2 = 0
  301. if (MFR.EQ.26.OR.MFR.EQ.28) mfr3 = mfr
  302. C Cas particuliers : elements HYxx (99 a 103)
  303. C MFR = NUMMFR(mele) = 45 mais infell(13)=1 (MASSIF)
  304. IF (MELE.GE.99.AND.MELE.LE.103) infell(13)=1
  305.  
  306. C ELECTROSTATIQUE : MFR=71=infell(13) et NUMMFR(mele)=1 (MASSIF)
  307. IF (FORMOD(1).EQ.'ELECTROSTATIQUE') mfr2=71
  308.  
  309. C DIFFUSION : MFR=73=infell(13) et NUMMFR(mele)=1 (MASSIF)
  310. IF (FORMOD(1).EQ.'DIFFUSION') THEN
  311. IF (MFR .EQ. 1) THEN
  312. infell(13)=73
  313. ELSE
  314. infell(13)=MFR
  315. ENDIF
  316. ENDIF
  317.  
  318. IF (mfr2.NE.0) infell(13) = mfr2
  319. C
  320. C infell(14) : numero de l'element GEOMETRIQUE - IELE=NUMGEO(NELE)
  321. infell(14) = IELE
  322.  
  323. C Remplissage de infell(10), infell(15) et infell(16) :
  324. C -----------------------------------------------------
  325. C infell(10) : dimension de la matrice de Hooke
  326. C infell(15) : nombre maximal de ddl par noeud
  327. C infell(16) : nombre de composantes de contraintes et deformations
  328.  
  329. C MASSIFs (2D) : TRIx-QUAx 4 a 11 + POLYgones : POLY 111 a 122 +
  330. C Elements QxRI 183 a 184
  331. IF ((MELE.GE.4.AND.MELE.LE.11).OR.(MELE.GE.111.AND.MELE.LE.122)
  332. . .OR.MELE.EQ.183.OR.MELE.EQ.184) THEN
  333. IF (IFOUR.EQ.1) THEN
  334. infell(10)=6
  335. infell(15)=3
  336. infell(16)=6
  337. ELSE
  338. infell(10)=4
  339. infell(15)=2
  340. infell(16)=4
  341. ENDIF
  342. C MASSIFs (3D) : CUxx-PRxx 14 a 17, TExx-PYxx 23 a 26
  343. ELSE IF ((MELE.GE.14.AND.MELE.LE.17).OR.
  344. . (MELE.GE.23.AND.MELE.LE.26)) THEN
  345. infell(10)=6
  346. infell(15)=3
  347. infell(16)=6
  348. C Elements LIQUIDE : Lxxx 35 a 40
  349. ELSE IF (MELE.GE.35.AND.MELE.LE.40) THEN
  350. infell(10)=5
  351. infell(15)=2
  352. infell(16)=0
  353. C Elements de RACCORD FLUIDE-STRUCTURE :
  354. C RAC2 12, LIAx 18 a 19, RACO 47, LICO 55, LIC4 94
  355. ELSE IF (MELE.EQ.12.OR.MELE.EQ.18.OR.MELE.EQ.19.OR.MELE.EQ.47.OR.
  356. . MELE.EQ.55.OR.MELE.EQ.94) THEN
  357. infell(10)=6
  358. C Elements de SURFACE LIBRE : LSU2 48, LSU3 53, LSU4 54
  359. ELSE IF (MELE.EQ.48.OR.MELE.EQ.53.OR.MELE.EQ.54) THEN
  360. infell(10)=6
  361. infell(15)=3
  362. C Elements THERMIQUEs : CVxx 57 a 62, THxx 63 a 68
  363. ELSE IF (MELE.GE.57.AND.MELE.LE.68) THEN
  364. IF (MELE.LE.60) THEN
  365. infell(10)=2
  366. infell(15)=1
  367. infell(16)=2
  368. ELSE IF (MELE.GE.61) THEN
  369. infell(10)=3
  370. infell(15)=1
  371. infell(16)=3
  372. ENDIF
  373. C Elements MASSIFs IMCOMPRESSIBLES : ICxx 69 a 78
  374. ELSE IF (MELE.GE.69.AND.MELE.LE.78) THEN
  375. IF (MELE.LE.72) THEN
  376. infell(10)=4
  377. C** IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(10)=4
  378. infell(15)=2
  379. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(15)=3
  380. infell(16)=4
  381. C** IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(16)=4
  382. ELSE IF (MELE.GE.73) THEN
  383. infell(10)=6
  384. infell(15)=3
  385. infell(16)=6
  386. ENDIF
  387. C Elements MASSIFs POREUX : xxxP 79 a 83
  388. ELSE IF (MELE.GE.79.AND.MELE.LE.83) THEN
  389. IF (MELE.LE.80) THEN
  390. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) THEN
  391. infell(10)=6
  392. infell(15)=4
  393. infell(16)=7
  394. ELSE
  395. infell(10)=4
  396. infell(15)=3
  397. infell(16)=5
  398. ENDIF
  399. ELSE IF (MELE.GE.81) THEN
  400. infell(10)=6
  401. infell(15)=4
  402. infell(16)=7
  403. ENDIF
  404. C Elements MASSIFs POREUX de type Q : xxxQ 173 a 177
  405. ELSE IF (MELE.GE.173.AND.MELE.LE.177) THEN
  406. IF (MELE.LE.174) THEN
  407. IF (IFOUR.EQ.1) THEN
  408. infell(10)=8
  409. infell(15)=5
  410. infell(16)=8
  411. ELSE
  412. infell(10)=6
  413. infell(15)=4
  414. infell(16)=6
  415. ENDIF
  416. ELSE IF (MELE.GE.175) THEN
  417. infell(10)=8
  418. infell(15)=5
  419. infell(16)=8
  420. ENDIF
  421. C Elements MASSIFs POREUX de type R : xxxR 178 a 182
  422. ELSE IF(MELE.GE.178.AND.MELE.LE.182) THEN
  423. IF (MELE.LE.179) THEN
  424. IF (IFOUR.EQ.1) THEN
  425. infell(10)=9
  426. infell(15)=6
  427. infell(16)=9
  428. ELSE
  429. infell(10)=7
  430. infell(15)=5
  431. infell(16)=7
  432. ENDIF
  433. ELSE IF (MELE.GE.180) THEN
  434. infell(10)=9
  435. infell(15)=6
  436. infell(16)=9
  437. ENDIF
  438. C Elements JOINTS : JOxx 85 a 90
  439. ELSE IF (MELE.GE.85.AND.MELE.LE.90) THEN
  440. IF (MELE.LE.86) THEN
  441. infell(10)=2
  442. infell(16)=2
  443. ELSE IF (MELE.GE.87) THEN
  444. infell(10)=3
  445. infell(16)=3
  446. ENDIF
  447. C
  448. C MACRO ELEMENT CISAILLEMENT FLEXION
  449. C
  450. ELSE IF(MELE.EQ.191) THEN
  451. infell(5)=3
  452. infell(7)=300
  453. GO TO 258
  454.  
  455. C Elements JOINTs CISAILLEMENT et GENERALISES : JCxx-JGxx 168 a 172
  456. ELSE IF (MELE.GE.168.AND.MELE.LE.172) THEN
  457. infell(7)=300
  458. infell(9)=infell(8)*IDIM
  459. infell(15)=IDIM
  460. IF (MELE.EQ.168.OR.MELE.EQ.169) THEN
  461. infell(10)=2
  462. infell(16)=2
  463. ELSE IF (MELE.EQ.170) THEN
  464. infell(10)=4
  465. infell(16)=4
  466. ELSE
  467. infell(10)=6
  468. infell(16)=6
  469. ENDIF
  470. C Elements HOMOGENEISES : TRIH 92, QUAH 126, CUBH 127, TRH6 157
  471. ELSE IF (MELE.EQ.92.OR.MELE.EQ.126.OR.MELE.EQ.127.OR.
  472. . MELE.EQ.157) THEN
  473. infell(10)=10
  474. infell(16)=0
  475. C Elements JOINTS POREUX : JOPx 108 a 110
  476. ELSE IF (MELE.GE.108.AND.MELE.LE.110) THEN
  477. infell(7)=100
  478. C Elements JOINTS POREUX de type Q : JOQx 185 a 187
  479. ELSE IF (MELE.GE.185.AND.MELE.LE.187) THEN
  480. infell(7)=150
  481. C Elements JOINTS POREUX de type R : JORx 188 a 190
  482. ELSE IF (MELE.GE.188.AND.MELE.LE.190) THEN
  483. infell(7)=200
  484. C Elements MASSIFS THERMIQUE/MECANIQUE en 1D : T1Dx-M1Dx 191 a 194
  485. ELSE IF (MELE.GE.191.AND.MELE.LE.194) THEN
  486. infell(10)=3
  487. infell(15)=1
  488. infell(16)=3
  489. ENDIF
  490. C Cas particuliers des autres formulations massives (mfr2 > 0)
  491. IF (mfr2.NE.0) THEN
  492. infell(10)=IDIM
  493. infell(15)=1
  494. infell(16)=IDIM
  495. ENDIF
  496. C Pour les autres elements, les valeurs de infell(10,15,16) sont
  497. C eventuellement affectees (0 par defaut) lors du branchement (GOTO)
  498. C ci-dessous qui effectue le remplissage complet du tableau infell.
  499.  
  500. C Remplissage complet du tableau infell suivant l'element fini
  501. C --------------------------------------------------------------
  502. IF(MELE.GE.1.AND.MELE.LE.194) THEN
  503. C CABL SEG2 SEG3 TRI3 TRI4 TRI6 TRI7 QUA4 QUA5 QUA8 QUA9,RAC2
  504. GOTO ( 300, 2, 3, 4, 300, 6, 300, 8, 300, 10, 300, 12
  505. C RAC3 CUB8 CU20 PRI6 PR15 LIA3 LIA4 LIA6 LIA8 MULT TET4 TE10
  506. . , 300, 14, 15, 16, 17, 18, 19, 300, 300, 300, 23, 24
  507. C PYR5 PY13 COQ3 DKT POUT LISP FAC3 FAC4 FAC6 FAC8 LTR3 LQU4
  508. . , 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36
  509. C LCU8 LPR6 LTE4 LPY5 COQ8 TUYA TUFI COQ2 POI1 BARR RACO LSU2
  510. . , 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48
  511. C COQ4 LISM COF3 RES2 LSU3 LSU4 LICO COQ6 CVS2 CVS3 CVT3 CVT6
  512. . , 49, 50, 51, 300, 53, 54, 55, 56, 57, 58, 59, 60
  513. C CVQ4 CVQ8 THP5 TH13 THP6 TH15 THC8 TH20 ICT3 ICQ4 ICT6 ICQ8
  514. . , 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72
  515. C ICC8 ICT4 ICP6 IC20 IC10 IC15 TRIP QUAP CUBP TETP PRIP TIMO
  516. . , 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84
  517. C JOI2 JOI3 JOT3 JOI4 JOI6 JOI8 LISC TRIH DST LIC4 CERC TUYO
  518. . , 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96
  519. C LSE2 LITU HYT3 HYQ4 HYT4 HYP6 HYC8 TRIS QUAS POIS FOR3 JOP3
  520. . , 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 300, 108
  521. C JOP6 JOP8 POL3 POL4 POL5 POL6 POL7 POL8 POL9 PO10 PO11 PO12
  522. . , 109, 110, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111
  523. C PO13 PO14 BAR3 BAEX LIA2 QUAH CUBH ROT3 SEF2 TRF3 QUF4 CUF8
  524. . , 111, 111, 123, 124, 125, 126, 127, 128, 300, 300, 300, 300
  525. C PRF6 TEF4 PYF5 MSE3 MTR6 MQU9 MC27 MP18 MT10 MP14 SEF3 TRF7
  526. . , 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300
  527. C QUF9 CF27 PF21 TF15 PF19 SEG6 TR21 QU36 C216 P126 TE56 PY91
  528. . , 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300
  529. C TRH6 BSE2 BTR4 BQU5 BCU9 BPR7 BTE5 BPY6 FRO4 SEGS POJS JCT3
  530. . , 157, 300, 300, 300, 300, 300, 300, 300, 300, 166, 167, 168
  531. C JCI4 JGI2 JGT3 JGI4 TRIQ QUAQ CUBQ TETQ PRIQ TRIR QUAR CUBR
  532. . , 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180
  533. C TETR PRIR Q4RI Q8RI JOQ3 JOQ6 JOQ8 JOR3 JOR6 JOR8 T1D2 T1D3
  534. . , 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192
  535. C M1D2 M1D3
  536. . , 191, 192 ), MELE
  537. ELSEIF(MELE.GE.195.AND.MELE.LE.272) THEN
  538. C LC03 LC07 LC09 LC27 LC21 LC15 LC19
  539. GOTO ( 195, 196, 197, 300, 300, 300, 300
  540. C LS03 LS07 LS09 LS27 LS21 LS15 LS19
  541. . , 195, 196, 197, 300, 300, 300, 300
  542. C BS03 BS07 BS09 BS27 BS21 BS15 BS19
  543. . , 195, 196, 197, 300, 300, 300, 300
  544. C MC03 MC07 MC09 MC27 MC21 MC15 MC19
  545. . , 216, 217, 218, 300, 300, 300, 300
  546. C M103 M107 M109 M127 M121 M115 M119
  547. . , 223, 224, 225, 300, 300, 300, 300
  548. C MS03 MS07 MS09 MS27 MS21 MS15 MS19
  549. . , 223, 224, 225, 300, 300, 300, 300
  550. C QC03 QC07 QC09 QC27 QC21 QC15 QC19
  551. . , 237, 238, 239, 300, 300, 300, 300
  552. C Q103 Q107 Q109 Q127 Q121 Q115 Q119
  553. . , 237, 238, 239, 300, 300, 300, 300
  554. C QS03 QS07 QS09 QS27 QS21 QS15 QS19 CIFL SURE
  555. . , 237, 238, 239, 300, 300, 300, 300, 300, 300
  556. C SHB8 caf2 caf3 xq4r xc8r joi1 ZCO2 ZCO3 ZCO4 TUY2 TUY3 COS2
  557. . , 260, 300, 300, 263, 264, 265, 266, 267, 268, 269, 270, 271
  558. C COA2 ICY5 IC13
  559. . , 272, 25, 26)
  560. c cccccc
  561. . , (MELE-194)
  562. ENDIF
  563. C
  564. C Remplissage de infell pour chaque element
  565. C -------------------------------------------
  566. C Element SEG2
  567. 2 infell(2)=2
  568. infell(4)=2
  569. infell(6)=2
  570. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=3
  571. infell(7)=0
  572. infell(9)=4
  573. IF (IFOUR.EQ.1) infell(9)=6
  574. infell(10)=1
  575. infell(15)=2
  576. IF (IFOUR.EQ.1) infell(15)=3
  577. infell(16)=1
  578. GOTO 300
  579. C Element SEG3
  580. 3 infell(2)=3
  581. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(2)=4
  582. infell(4)=3
  583. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(4)=4
  584. infell(6)=3
  585. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=4
  586. infell(7)=0
  587. infell(9)=6
  588. IF (IFOUR.EQ.1) infell(9)=9
  589. infell(10)=1
  590. infell(15)=2
  591. IF (IFOUR.EQ.1) infell(15)=3
  592. infell(16)=1
  593. GOTO 300
  594. C Element TRI3
  595. 4 infell(2)=1
  596. infell(3)=4
  597. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=7
  598. infell(4)=1
  599. infell(6)=1
  600. C IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=4
  601. infell(9)=6
  602. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=9
  603. GOTO 300
  604. C Element TRI6
  605. 6 IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) THEN
  606. infell(2)=7
  607. infell(4)=7
  608. infell(6)=7
  609. ELSE
  610. infell(2)=4
  611. infell(4)=4
  612. infell(6)=4
  613. ENDIF
  614. infell(3)=7
  615. infell(9)=12
  616. IF (IFOUR.EQ.-3) infell(9)=15
  617. IF (IFOUR.EQ.1) infell(9)=18
  618. GOTO 300
  619. C Element QUA4
  620. 8 infell(2)=4
  621. infell(3)=4
  622. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  623. infell(4)=4
  624. C** infell(4)=5 CORRECTION MILL LE 8/8/90
  625. infell(6)=4
  626. C** IF(IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=9
  627. infell(9)=8
  628. IF (IFOUR.EQ.-3) infell(9)=11
  629. IF (IFOUR.EQ.1) infell(9)=12
  630. GOTO 300
  631. C Element QUA8
  632. 10 infell(2)=9
  633. infell(3)=9
  634. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=16
  635. infell(4)=9
  636. infell(6)=9
  637. C IF(IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  638. infell(9)=16
  639. IF (IFOUR.EQ.-3) infell(9)=19
  640. IF (IFOUR.EQ.1) infell(9)=24
  641. GOTO 300
  642. C Element RAC2 (raccord a 4 noeuds en 2 dimensions)
  643. 12 infell(2)=2
  644. infell(4)=2
  645. infell(5)=2
  646. infell(6)=2
  647. infell(9)=8
  648. IF (IFOUR.EQ.1) infell(9)=10
  649. infell(15)=3
  650. GOTO 300
  651. C Element CUB8
  652. 14 infell(2)=8
  653. infell(3)=8
  654. infell(4)=8
  655. infell(6)=8
  656. infell(9)=24
  657. GOTO 300
  658. C Element CU20
  659. 15 infell(2)=27
  660. infell(3)=27
  661. infell(4)=27
  662. infell(6)=27
  663. infell(9)=60
  664. GOTO 300
  665. C Element PRI6
  666. 16 infell(2)=6
  667. cbp infell(3)=6
  668. infell(3)=8
  669. infell(4)=6
  670. infell(6)=6
  671. infell(9)=18
  672. GOTO 300
  673. C Element PR15
  674. 17 infell(2)=12
  675. cbp infell(3)=12
  676. infell(3)=21
  677. infell(4)=12
  678. infell(6)=12
  679. infell(9)=45
  680. GOTO 300
  681. C Element LIA3 (raccord a 6 noeudes en 3 dimensions)
  682. 18 infell(2)=4
  683. infell(4)=4
  684. infell(5)=3
  685. infell(6)=4
  686. infell(9)=15
  687. infell(13)=19
  688. infell(15)=3
  689. GOTO 300
  690. C Element LIA4 (raccord a 8 noeuds en 3 dimensions)
  691. 19 infell(2)=4
  692. infell(4)=4
  693. infell(5)=3
  694. infell(6)=4
  695. infell(9)=20
  696. infell(15)=3
  697. GOTO 300
  698. C Element TET4
  699. 23 infell(2)=1
  700. infell(3)=4
  701. infell(4)=1
  702. infell(6)=1
  703. infell(9)=12
  704. GOTO 300
  705. C Element TE10
  706. 24 infell(2)=5
  707. cbp infell(3)=5
  708. infell(3)=15
  709. infell(4)=5
  710. infell(6)=5
  711. infell(9)=30
  712. GOTO 300
  713. C Element PYR5
  714. 25 infell(2)=5
  715. infell(3)=5
  716. infell(4)=5
  717. infell(6)=5
  718. infell(9)=15
  719. GOTO 300
  720. C Element PY13
  721. cbp 26 infell(2)=27
  722. cbp infell(3)=27
  723. cbp infell(4)=27
  724. cbp infell(6)=27
  725. 26 infell(2)=10
  726. infell(3)=17
  727. infell(4)=10
  728. infell(6)=10
  729. infell(9)=39
  730. GOTO 300
  731. C Element COQ3
  732. 27 infell(2)=3
  733. infell(4)=1
  734. infell(5)=3
  735. infell(6)=1
  736. infell(7)=600
  737. infell(9)=18
  738. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(9)=9
  739. infell(10)=6
  740. infell(15)=6
  741. infell(16)=6
  742. GOTO 300
  743. C Element DKT
  744. 28 infell(2)=3
  745. infell(3)=3
  746. infell(5)=3
  747. infell(7)=600
  748. infell(9)=18
  749. infell(15)=6
  750. IF (NPINT.EQ.0) THEN
  751. C Element DKT COQUE GLOBALE
  752. infell(4)=3
  753. infell(6)=3
  754. infell(10)=6
  755. infell(16)=6
  756. ELSE
  757. C Element DKT COQUE INTEGREE dans l'epaisseur
  758. infell(4)=3*NPINT
  759. infell(6)=3*NPINT
  760. infell(10)=6
  761. infell(16)=4
  762. ENDIF
  763. GOTO 300
  764. C Element POUTRE
  765. 29 infell(2)=2
  766. infell(4)=2
  767. infell(6)=2
  768. infell(7)=200
  769. IF (IFOUR.EQ.-3.OR.IFOUR.EQ.-2.OR.IFOUR.EQ.-1) THEN
  770. C Element POUTRE 2D plan
  771. infell(5)=6
  772. infell(9)=6
  773. infell(10)=3
  774. infell(15)=3
  775. infell(16)=3
  776. ELSE
  777. C Element POUTRE 3D
  778. infell(5)=12
  779. infell(9)=12
  780. infell(10)=6
  781. infell(15)=6
  782. infell(16)=6
  783. ENDIF
  784. GOTO 300
  785. C Element LINE SPRING LISP
  786. 30 infell(2)=3
  787. infell(13)=15
  788. infell(6)=3
  789. infell(4)=3
  790. infell(16)=6
  791. infell(9)=24
  792. infell(7)=100
  793. infell(10)=6
  794. infell(15)=6
  795. infell(5)=5
  796. GOTO 300
  797. C Element FAC3 pour les PRESSIONS uniquement
  798. 31 infell(2)=1
  799. infell(4)=1
  800. infell(6)=1
  801. infell(9)=9
  802. infell(15)=3
  803. GOTO 300
  804. C Element FAC4 pour les PRESSIONS uniquement
  805. 32 infell(2)=4
  806. infell(4)=4
  807. infell(6)=4
  808. infell(9)=12
  809. infell(15)=3
  810. GOTO 300
  811. C Element FAC6 pour les PRESSIONS uniquement
  812. 33 infell(2)=4
  813. infell(4)=4
  814. infell(6)=4
  815. infell(9)=18
  816. infell(15)=3
  817. GOTO 300
  818. C Element FAC8 pour les PRESSIONS uniquement
  819. 34 infell(2)=9
  820. infell(4)=9
  821. infell(6)=9
  822. infell(9)=24
  823. infell(15)=3
  824. GOTO 300
  825. C Element LTR3 : element LIQUIDE triangle a 3 noeuds
  826. 35 infell(2)=4
  827. infell(3)=4
  828. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=7
  829. infell(4)=4
  830. infell(6)=4
  831. infell(9)=6
  832. GOTO 300
  833. C Element LQU4 : element LIQUIDE quadrangle a 4 noeuds
  834. 36 infell(2)=4
  835. infell(3)=4
  836. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  837. infell(4)=4
  838. infell(6)=4
  839. infell(9)=8
  840. GOTO 300
  841. C Element LCU8 : Element LIQUIDE CUBE a 8 noeuds
  842. 37 infell(2)=8
  843. infell(3)=8
  844. infell(4)=8
  845. infell(6)=8
  846. infell(9)=16
  847. GOTO 300
  848. C Element LPR6 : Element LIQUIDE PRISME a 6 noeuds
  849. 38 infell(2)=6
  850. infell(3)=6
  851. infell(4)=6
  852. infell(6)=6
  853. infell(9)=12
  854. GOTO 300
  855. C Element LTE4 : Element LIQUIDE TETRAEDRE a 4 noeuds
  856. 39 infell(2)=4
  857. infell(3)=4
  858. infell(4)=4
  859. infell(6)=4
  860. infell(9)=8
  861. GOTO 300
  862. C Element LPY5 : Element LIQUIDE PYRAMIDE a 5 noeuds
  863. 40 infell(2)=5
  864. infell(3)=5
  865. infell(4)=5
  866. infell(6)=5
  867. infell(9)=10
  868. GOTO 300
  869. C Element COQ8 : Element COQUE EPAISSE a 8 noeuds
  870. 41 infell(2)=NBGS
  871. IF (NBGS.EQ.0) infell(2)=8
  872. infell(3)=8
  873. infell(4)=NBGS
  874. IF (NBGS.EQ.0) infell(4)=8
  875. infell(5)=2
  876. infell(6)=8
  877. infell(7)=1700
  878. infell(9)=48
  879. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(9)=24
  880. infell(10)=5
  881. infell(15)=6
  882. infell(16)=5
  883. GOTO 300
  884. C Element TUYA : Element TUYAU
  885. 42 infell(2)=2
  886. infell(4)=2
  887. infell(5)=7
  888. infell(6)=2
  889. infell(7)=200
  890. infell(9)=12
  891. infell(10)=6
  892. infell(15)=6
  893. infell(16)=6
  894. GOTO 300
  895. C Element TUFI : Element TUYAU FISSURE
  896. 43 infell(2)=1
  897. infell(3)=0
  898. infell(4)=1
  899. infell(5)=9
  900. infell(6)=1
  901. infell(7)=200
  902. infell(9)=12
  903. infell(10)=6
  904. infell(15)=6
  905. infell(16)=8
  906. GOTO 300
  907. C Element COQ2
  908. 44 infell(2)=3
  909. infell(3)=3
  910. infell(4)=3
  911. infell(5)=3
  912. infell(6)=3
  913. infell(7)=368
  914. infell(9)=8
  915. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.0) infell(9)=6
  916. IF (IFOUR.EQ.-3) infell(9)=9
  917. infell(10)=6
  918. IF (IFOUR.LE.0) infell(10)=4
  919. infell(15)=4
  920. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.0) infell(15)=3
  921. infell(16)=6
  922. IF (IFOUR.LE.0) infell(16)=4
  923. GOTO 300
  924. C Element POI1 (MODEs en DEFOrmations PLANes GENEralisees)
  925. C Valeurs a adapter pour certains MODE UNID (1D)
  926. 45 infell(2)=1
  927. infell(3)=1
  928. infell(4)=1
  929. infell(5)=1
  930. infell(6)=1
  931. infell(7)=50
  932. infell(15)=2
  933. IF (IFOUR.EQ.11) THEN
  934. infell(9)=3
  935. infell(10)=2
  936. infell(16)=2
  937. ELSE
  938. infell(9)=5
  939. IF (IFOUR.GE.3.AND.IFOUR.LE.15) infell(9)=2
  940. infell(10)=1
  941. infell(16)=1
  942. ENDIF
  943. if (mfr.eq.26.or.mfr.eq.28) infell(9) = 1
  944. GOTO 300
  945. C Element BARRE
  946. 46 infell(2)=2
  947. infell(4)=2
  948. infell(5)=1
  949. infell(6)=2
  950. infell(7)=200
  951. infell(9)=6
  952. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.0) infell(9)=4
  953. IF (IFOUR.EQ.-3) infell(9)=7
  954. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(9)=2
  955. infell(10)=1
  956. infell(15)=3
  957. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(15)=1
  958. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.0) infell(15)=2
  959. infell(16)=1
  960. GOTO 300
  961. C Element RACO : Element de RACCORD LIQUIDE-COQUE a 4 noeuds en 2D
  962. 47 infell(2)=1
  963. infell(4)=1
  964. infell(5)=2
  965. infell(6)=1
  966. infell(9)=10
  967. IF (IFOUR.EQ.1) infell(9)=12
  968. infell(15)=4
  969. GOTO 300
  970. C Element LSU2 : Element de SURFACE LIBRE a 2 noeuds en 2D
  971. 48 infell(2)=2
  972. infell(4)=2
  973. infell(6)=2
  974. infell(9)=6
  975. GOTO 300
  976. C Element COQ4
  977. 49 infell(2)=5
  978. infell(3)=5
  979. infell(4)=5
  980. infell(5)=3
  981. infell(6)=5
  982. infell(7)=100
  983. infell(9)=24
  984. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(9)=12
  985. infell(10)=8
  986. infell(15)=6
  987. infell(16)=8
  988. GOTO 300
  989. C Element LINE SPRING LISM
  990. 50 infell(2)=1
  991. infell(4)=1
  992. infell(5)=5
  993. infell(6)=3
  994. infell(7)=100
  995. infell(9)=24
  996. infell(10)=6
  997. infell(15)=6
  998. infell(16)=6
  999. GOTO 300
  1000. C Element COF3
  1001. 51 infell(2)=3
  1002. infell(3)=3
  1003. infell(4)=3
  1004. infell(5)=3
  1005. infell(6)=3
  1006. infell(9)=12
  1007. infell(7)=368
  1008. infell(10)=6
  1009. infell(15)=4
  1010. infell(16)=6
  1011. GOTO 300
  1012. C Element LSU3 : Element de SURFACE LIBRE a 3 noeuds en 3D
  1013. 53 infell(2)=4
  1014. infell(4)=4
  1015. infell(6)=4
  1016. infell(9)=9
  1017. GOTO 300
  1018. C Element LSU4 : Element de SURFACE LIBRE a 4 noeuds en 3D
  1019. 54 infell(2)=4
  1020. infell(4)=4
  1021. infell(6)=4
  1022. infell(9)=12
  1023. GOTO 300
  1024. C Element LICO : Element de RACCORD LIQUIDE-COQUE a 6 noeuds en 3D
  1025. 55 infell(2)=3
  1026. infell(4)=3
  1027. infell(5)=3
  1028. infell(6)=3
  1029. infell(9)=24
  1030. infell(15)=6
  1031. GOTO 300
  1032. C Element COQ6 : Element COQUE EPAISSE a 6 noeuds
  1033. 56 infell(2)=NBGS
  1034. IF(NBGS.EQ.0) infell(2)=6
  1035. infell(3)=6
  1036. infell(4)=NBGS
  1037. IF (NBGS.EQ.0) infell(4)=6
  1038. infell(5)=2
  1039. infell(6)=6
  1040. infell(9)=36
  1041. IF (FORMOD(1) .EQ. 'DIFFUSION') infell(9)=18
  1042. infell(7)=1000
  1043. infell(10)=5
  1044. infell(15)=6
  1045. infell(16)=5
  1046. GOTO 300
  1047. C Element THT3 (thermique)
  1048. 57 infell(2)=1
  1049. infell(6)=1
  1050. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=4
  1051. infell(9)=3
  1052. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=9
  1053. GOTO 300
  1054. C Element THT6
  1055. 58 infell(2)=4
  1056. infell(4)=4
  1057. infell(6)=4
  1058. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=7
  1059. infell(9)=6
  1060. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=18
  1061. GOTO 300
  1062. C Element THQ4
  1063. 59 infell(2)=4
  1064. infell(6)=4
  1065. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=9
  1066. infell(9)=4
  1067. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=12
  1068. GOTO 300
  1069. C Element THQ8
  1070. 60 infell(2)=9
  1071. infell(6)=9
  1072. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1073. infell(9)=8
  1074. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=24
  1075. GOTO 300
  1076. C Element THT4
  1077. 61 infell(2)=1
  1078. infell(6)=1
  1079. infell(9)=4
  1080. GOTO 300
  1081. C Element TH10
  1082. 62 infell(2)=5
  1083. infell(6)=5
  1084. infell(9)=10
  1085. GOTO 300
  1086. C Element THP5
  1087. 63 infell(2)=5
  1088. infell(6)=5
  1089. infell(9)=5
  1090. GOTO 300
  1091. C Element TH13
  1092. 64 infell(2)=27
  1093. infell(6)=27
  1094. infell(9)=13
  1095. GOTO 300
  1096. C Element THP6
  1097. 65 infell(2)=2
  1098. infell(6)=2
  1099. infell(9)=6
  1100. GOTO 300
  1101. C Element TH15
  1102. 66 infell(2)=12
  1103. infell(6)=12
  1104. infell(9)=15
  1105. GOTO 300
  1106. C Element THC8
  1107. 67 infell(2)=8
  1108. infell(6)=8
  1109. infell(9)=8
  1110. GOTO 300
  1111. C Element TH20
  1112. 68 infell(2)=27
  1113. infell(6)=27
  1114. infell(9)=20
  1115. GOTO 300
  1116. C Element ICT3
  1117. 69 infell(2)=1
  1118. infell(3)=4
  1119. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=7
  1120. infell(4)=1
  1121. infell(6)=1
  1122. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=4
  1123. infell(9)=6
  1124. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=9
  1125. GOTO 300
  1126. C Element ICQ4
  1127. 70 infell(2)=4
  1128. infell(3)=4
  1129. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1130. infell(4)=4
  1131. C** infell(4)=5 CORRECTION MILL LE 8/8/90
  1132. infell(6)=4
  1133. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=9
  1134. infell(9)=8
  1135. IF (IFOUR.EQ.-3) infell(9)=11
  1136. IF (IFOUR.EQ.1) infell(9)=12
  1137. GOTO 300
  1138. C Element ICT6
  1139. 71 IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) THEN
  1140. infell(2)=7
  1141. infell(4)=7
  1142. infell(6)=7
  1143. ELSE
  1144. infell(2)=4
  1145. infell(4)=4
  1146. infell(6)=4
  1147. ENDIF
  1148. infell(3)=7
  1149. infell(9)=12
  1150. IF (IFOUR.EQ.-3) infell(9)=15
  1151. IF (IFOUR.EQ.1) infell(9)=18
  1152. GOTO 300
  1153. C Element ICQ8
  1154. 72 infell(2)=9
  1155. infell(3)=9
  1156. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=16
  1157. infell(4)=9
  1158. infell(6)=9
  1159. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1160. infell(9)=16
  1161. IF (IFOUR.EQ.-3) infell(9)=19
  1162. IF (IFOUR.EQ.1) infell(9)=24
  1163. GOTO 300
  1164. C Element ICC8
  1165. 73 infell(2)=8
  1166. infell(3)=8
  1167. infell(4)=8
  1168. infell(6)=8
  1169. infell(9)=24
  1170. GOTO 300
  1171. C Element ICT4
  1172. 74 infell(2)=4
  1173. infell(3)=5
  1174. infell(4)=4
  1175. infell(6)=4
  1176. infell(9)=12
  1177. GOTO 300
  1178. C Element ICP6
  1179. 75 infell(2)=2
  1180. infell(3)=6
  1181. infell(4)=2
  1182. infell(6)=2
  1183. infell(9)=18
  1184. GOTO 300
  1185. C Element IC20
  1186. 76 infell(2)=27
  1187. infell(3)=27
  1188. infell(4)=27
  1189. infell(6)=27
  1190. infell(9)=60
  1191. GOTO 300
  1192. C Element IC10
  1193. 77 infell(2)=5
  1194. infell(3)=5
  1195. infell(4)=5
  1196. infell(6)=5
  1197. infell(9)=30
  1198. GOTO 300
  1199. C Element IC15
  1200. 78 infell(2)=12
  1201. infell(3)=12
  1202. infell(4)=12
  1203. infell(6)=12
  1204. infell(9)=45
  1205. GOTO 300
  1206. C Element TRIP
  1207. 79 IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) THEN
  1208. infell(2)=7
  1209. infell(4)=7
  1210. infell(6)=7
  1211. ELSE
  1212. infell(2)=4
  1213. infell(4)=4
  1214. infell(6)=4
  1215. ENDIF
  1216. infell(3)=7
  1217. infell(8)=9
  1218. infell(9)=15
  1219. IF (IFOUR.EQ.-3.OR.IFOUR.EQ.1) infell(9)=21
  1220. GOTO 300
  1221. C Element QUAP
  1222. 80 infell(2)=9
  1223. infell(3)=9
  1224. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1225. infell(4)=9
  1226. infell(6)=9
  1227. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1228. infell(8)=12
  1229. infell(9)=20
  1230. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=28
  1231. GOTO 300
  1232. C Element CUBP
  1233. 81 infell(2)=27
  1234. infell(3)=27
  1235. infell(4)=27
  1236. infell(6)=27
  1237. infell(8)=28
  1238. infell(9)=68
  1239. GOTO 300
  1240. C Element TETP
  1241. 82 infell(2)=5
  1242. infell(3)=5
  1243. infell(4)=5
  1244. infell(6)=5
  1245. infell(8)=14
  1246. infell(9)=34
  1247. GOTO 300
  1248. C Element PRIP
  1249. 83 infell(2)=12
  1250. infell(3)=12
  1251. infell(4)=12
  1252. infell(6)=12
  1253. infell(8)=21
  1254. infell(9)=51
  1255. GOTO 300
  1256. C Element TIMO : Element POUTRE de TIMOSHENCKO
  1257. 84 infell(2)=1
  1258. infell(4)=1
  1259. infell(6)=1
  1260. infell(7)=200
  1261. IF (IFOUR.EQ.-3.OR.IFOUR.EQ.-2.OR.IFOUR.EQ.-1) THEN
  1262. C Element TIMO 2D plan
  1263. infell(5)=6
  1264. infell(9)=6
  1265. infell(10)=3
  1266. infell(15)=3
  1267. infell(16)=3
  1268. ELSE
  1269. C Element TIMO 3D
  1270. infell(5)=12
  1271. infell(9)=12
  1272. infell(10)=6
  1273. infell(15)=6
  1274. infell(16)=6
  1275. ENDIF
  1276. GOTO 300
  1277. C Element JOI2
  1278. 85 infell(2)=4
  1279. infell(3)=2
  1280. infell(4)=2
  1281. infell(5)=0
  1282. infell(6)=2
  1283. infell(7)=300
  1284. infell(9)=8
  1285. GOTO 300
  1286. C Element JOI3
  1287. 86 infell(2)=3
  1288. infell(3)=2
  1289. infell(4)=3
  1290. infell(5)=0
  1291. infell(6)=3
  1292. infell(7)=100
  1293. infell(9)=12
  1294. GOTO 300
  1295. C Element JOT3
  1296. 87 infell(2)=3
  1297. infell(3)=3
  1298. infell(4)=3
  1299. infell(5)=0
  1300. infell(6)=3
  1301. infell(7)=100
  1302. infell(9)=18
  1303. GOTO 300
  1304. C Element JOI4
  1305. 88 infell(2)=4
  1306. infell(3)=4
  1307. infell(4)=4
  1308. infell(5)=0
  1309. infell(6)=4
  1310. infell(7)=100
  1311. infell(9)=24
  1312. GOTO 300
  1313. C Element JOI6
  1314. 89 infell(2)=5
  1315. infell(4)=5
  1316. infell(6)=4
  1317. infell(9)=36
  1318. GOTO 300
  1319. C Element JOI8
  1320. 90 infell(2)=9
  1321. infell(4)=9
  1322. infell(6)=9
  1323. infell(9)=48
  1324. GOTO 300
  1325. C Element LINE SPRING LISC
  1326. 91 infell(2)=3
  1327. infell(4)=3
  1328. infell(5)=5
  1329. infell(6)=5
  1330. infell(7)=100
  1331. infell(9)=36
  1332. infell(10)=2
  1333. infell(15)=6
  1334. infell(16)=6
  1335. GOTO 300
  1336. C Element TRIH
  1337. 92 infell(2)=4
  1338. infell(6)=4
  1339. infell(7)= 0
  1340. IF (IFOUR.EQ.1.OR.IFOUR.EQ.0) THEN
  1341. infell(3)=7
  1342. infell(5)=5
  1343. IF (IFOUR.EQ.0) infell(9)=12
  1344. IF (IFOUR.EQ.1) infell(9)=18
  1345. infell(15)=6
  1346. ELSE
  1347. infell(3)=4
  1348. infell(5)=5
  1349. infell(9)=12
  1350. infell(15)=4
  1351. ENDIF
  1352. GOTO 300
  1353. C Element DST
  1354. 93 infell(2)=3
  1355. infell(3)=3
  1356. infell(4)=3
  1357. infell(5)=3
  1358. infell(6)=3
  1359. infell(7)=600
  1360. infell(9)=18
  1361. infell(10)=8
  1362. infell(15)=6
  1363. infell(16)=8
  1364. GOTO 300
  1365. C Element LIC4 : Element de RACCORD LIQUIDE-COQUE a 8 noeuds en 3D
  1366. 94 infell(2)=4
  1367. infell(3)=4
  1368. infell(4)=4
  1369. infell(5)=3
  1370. infell(6)=4
  1371. infell(9)=32
  1372. infell(15)=6
  1373. GOTO 300
  1374. C Element CERCE
  1375. 95 infell(2)=1
  1376. infell(3)=1
  1377. infell(4)=1
  1378. infell(5)=1
  1379. infell(6)=1
  1380. infell(7)=50
  1381. infell(9)=2
  1382. IF (IFOUR.EQ.1) infell(9)=3
  1383. infell(10)=1
  1384. infell(15)=2
  1385. IF (IFOUR.EQ.1) infell(15)=3
  1386. infell(16)=1
  1387. GOTO 300
  1388. C Element TUYO
  1389. 96 NTETA=40
  1390. infell(2)=2*NTETA
  1391. infell(3)=2*NTETA
  1392. infell(4)=2*NTETA
  1393. infell(5)=7
  1394. infell(6)=2*NTETA
  1395. infell(7)=500
  1396. infell(8)=2+4
  1397. infell(9)=12+2*9
  1398. infell(10)=6
  1399. infell(15)=6+9
  1400. infell(16)=6
  1401. GOTO 300
  1402. C Element LSE2 : TUYAU ACOUSTIQUE PURE
  1403. 97 infell(2)=2
  1404. infell(3)=2
  1405. infell(4)=2
  1406. infell(5)=7
  1407. infell(6)=2
  1408. infell(7)=200
  1409. infell(9)=4
  1410. infell(10)=2
  1411. infell(15)=2
  1412. infell(16)=2
  1413. GOTO 300
  1414. C Element LITU : COUPLAGE LIQUIDE TUYAU
  1415. 98 infell(2)=2
  1416. infell(3)=2
  1417. infell(4)=2
  1418. infell(5)=6
  1419. infell(6)=2
  1420. infell(7)=200
  1421. infell(9)=10
  1422. infell(10)=2
  1423. infell(15)=5
  1424. infell(16)=5
  1425. GOTO 300
  1426. C Element HYT3 : Element HYBRIDE TRI3
  1427. 99 infell(3)=4
  1428. infell(6)=4
  1429. GOTO 300
  1430. C Element HYQ4 : Element HYBRIDE QUA4
  1431. 100 infell(3)=4
  1432. infell(6)=4
  1433. GOTO 300
  1434. C Element HYBRIDE TET4
  1435. 101 infell(3)=4
  1436. infell(6)=4
  1437. GOTO 300
  1438. C Element HYBRIDE PRI6
  1439. 102 infell(3)=6
  1440. infell(6)=6
  1441. GOTO 300
  1442. C Element HYBRIDE CUB8
  1443. 103 infell(3)=8
  1444. infell(6)=8
  1445. GOTO 300
  1446. C Element TRIS (TRI3-SECTION)
  1447. 104 infell(2)=4
  1448. infell(3)=4
  1449. infell(4)=4
  1450. infell(5)=2
  1451. infell(6)=4
  1452. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  1453. infell(10)=2
  1454. infell(16)=2
  1455. ELSE IF (IFOUR.EQ.2) THEN
  1456. infell(10)=3
  1457. infell(16)=3
  1458. ENDIF
  1459. GOTO 300
  1460. C Element QUAS (QUA4-SECTION)
  1461. 105 infell(2)=4
  1462. infell(3)=4
  1463. infell(4)=4
  1464. infell(5)=2
  1465. infell(6)=4
  1466. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  1467. infell(10)=2
  1468. infell(16)=2
  1469. ELSE IF (IFOUR.EQ.2) THEN
  1470. infell(10)=3
  1471. infell(16)=3
  1472. ENDIF
  1473. GOTO 300
  1474. C Element POIS (POI1-SECTION)
  1475. 106 infell(2)=1
  1476. infell(3)=1
  1477. infell(4)=1
  1478. infell(5)=1
  1479. CMILL???? infell(5)=3
  1480. infell(6)=1
  1481. infell(10)=1
  1482. infell(16)=1
  1483. GOTO 300
  1484. C Element JOP3 : JOINTS POREUX
  1485. 108 infell(2)=3
  1486. infell(3)=3
  1487. infell(4)=3
  1488. infell(6)=3
  1489. infell(8)=12
  1490. infell(9)=18
  1491. infell(10)=2
  1492. infell(15)=3
  1493. infell(16)=3
  1494. GOTO 300
  1495. C Element JOP6 : JOINTS POREUX
  1496. 109 infell(2)=7
  1497. infell(3)=7
  1498. infell(4)=7
  1499. infell(6)=7
  1500. infell(8)=21
  1501. infell(9)=45
  1502. infell(10)=3
  1503. infell(15)=4
  1504. infell(16)=4
  1505. GOTO 300
  1506. C Element JOP8 : JOINTS POREUX
  1507. 110 infell(2)=9
  1508. infell(3)=9
  1509. infell(4)=9
  1510. infell(6)=9
  1511. infell(8)=28
  1512. infell(9)=60
  1513. infell(10)=3
  1514. infell(15)=4
  1515. infell(16)=4
  1516. GOTO 300
  1517. C Elements POLYGONE a N cotes
  1518. 111 NBSH=infell(8)
  1519. infell(2)=NBSH
  1520. infell(3)=NBSH
  1521. infell(4)=NBSH
  1522. infell(6)=NBSH
  1523. infell(9)=2*NBSH
  1524. IF (IFOUR.EQ.1) infell(9)=3*NBSH
  1525. IF (IFOUR.EQ.-3) infell(9)=2*NBSH+3
  1526. GOTO 300
  1527. C Element BAR3 (barre a 3 noeuds)
  1528. 123 NPOINT=3
  1529. infell(2)=NPOINT
  1530. infell(4)=NPOINT
  1531. infell(5)=1
  1532. infell(6)=NPOINT
  1533. infell(7)=200
  1534. infell(9)=9
  1535. IF (IFOUR.EQ.-1.OR.IFOUR.EQ.-2.OR.IFOUR.EQ.0) infell(9)=6
  1536. infell(10)=1
  1537. infell(15)=3
  1538. IF (IFOUR.EQ.-1.OR.IFOUR.EQ.-2.OR.IFOUR.EQ.0) infell(15)=2
  1539. infell(16)=1
  1540. GOTO 300
  1541. C Element BAEX (barre excentree 3D a 2 noeuds)
  1542. 124 infell(2)=2
  1543. infell(3)=2
  1544. infell(4)=2
  1545. infell(5)=6
  1546. infell(6)=2
  1547. infell(7)=700
  1548. infell(9)=12
  1549. infell(10)=1
  1550. infell(15)=6
  1551. infell(16)=1
  1552. GOTO 300
  1553. C Element LIA2 : element de liaison a 2 noeuds (6 ddl par noeuds)
  1554. 125 infell(2)=2
  1555. infell(4)=2
  1556. infell(5)=9
  1557. infell(6)=2
  1558. infell(7)=200
  1559. infell(9)=12
  1560. infell(10)=6
  1561. infell(15)=6
  1562. infell(16)=6
  1563. GOTO 300
  1564. C Element QUAH
  1565. 126 infell(2)=4
  1566. infell(3)=4
  1567. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1568. infell(5)=5
  1569. infell(6)=4
  1570. infell(7)=0
  1571. IF (IFOUR.EQ.0) infell(9)=16
  1572. IF (IFOUR.EQ.1) infell(9)=24
  1573. infell(15)=6
  1574. GOTO 300
  1575. C Element CUBH
  1576. 127 infell(2)=8
  1577. infell(3)=27
  1578. infell(5)=5
  1579. infell(6)=27
  1580. infell(7)=0
  1581. infell(9)=48
  1582. infell(15)=6
  1583. GOTO 300
  1584. C Element ROT3 (1 pt GAUSS pr MASSE, 7 pts GAUSS pr RIGIDITE)
  1585. 128 infell(3)=1
  1586. infell(6)=7
  1587. infell(9)=3
  1588. infell(15)=1
  1589. GOTO 300
  1590. C Element TR6H
  1591. 157 infell(2)=4
  1592. infell(6)=6
  1593. infell(7)=0
  1594. IF (IFOUR.EQ.1.OR.IFOUR.EQ.0) THEN
  1595. infell(3)=7
  1596. infell(5)=5
  1597. IF (IFOUR.EQ.0) infell(9)=12
  1598. IF (IFOUR.EQ.1) infell(9)=18
  1599. infell(15)=6
  1600. ELSE
  1601. infell(3)=6
  1602. infell(5)=5
  1603. infell(9)=24
  1604. infell(15)=4
  1605. ENDIF
  1606. GOTO 300
  1607. C Element SEGS (SEG2-SECTION 2D)
  1608. 166 infell(2)=2
  1609. infell(3)=2
  1610. infell(4)=2
  1611. infell(5)=3
  1612. infell(6)=2
  1613. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  1614. infell(10)=2
  1615. infell(16)=2
  1616. ELSE IF (IFOUR.EQ.2) THEN
  1617. infell(10)=3
  1618. infell(16)=3
  1619. ENDIF
  1620. GOTO 300
  1621. C Element POJS (POI1-SECTION)
  1622. 167 infell(2)=1
  1623. infell(3)=1
  1624. infell(4)=1
  1625. infell(5)=3
  1626. infell(6)=1
  1627. IF (IFOUR.EQ.-2.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.-3) THEN
  1628. infell(10)=2
  1629. infell(16)=2
  1630. ELSE IF (IFOUR.EQ.2) THEN
  1631. infell(10)=3
  1632. infell(16)=3
  1633. ENDIF
  1634. GOTO 300
  1635. C Element JCT3
  1636. 168 infell(2)=3
  1637. infell(3)=3
  1638. infell(4)=3
  1639. infell(6)=3
  1640. GOTO 300
  1641. C Element JCI4
  1642. 169 infell(2)=4
  1643. infell(3)=4
  1644. infell(4)=4
  1645. infell(6)=4
  1646. GOTO 300
  1647. C Element JGI2
  1648. 170 infell(2)=4
  1649. infell(3)=2
  1650. infell(4)=2
  1651. infell(6)=2
  1652. IF (IFOUR.EQ.-3) infell(9)=infell(9)+3
  1653. infell(15)=2
  1654. GOTO 300
  1655. C Element JGT3
  1656. 171 infell(2)=3
  1657. infell(3)=3
  1658. infell(4)=3
  1659. infell(6)=3
  1660. GOTO 300
  1661. C Element JGI4
  1662. 172 infell(2)=4
  1663. infell(3)=4
  1664. infell(4)=4
  1665. infell(6)=4
  1666. GOTO 300
  1667. C Element TRIQ
  1668. 173 infell(3)=7
  1669. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) THEN
  1670. infell(2)=7
  1671. infell(4)=7
  1672. infell(6)=7
  1673. ELSE
  1674. infell(2)=4
  1675. infell(4)=4
  1676. infell(6)=4
  1677. ENDIF
  1678. infell(8)=9
  1679. infell(9)=18
  1680. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=24
  1681. GOTO 300
  1682. C Element QUAQ
  1683. 174 infell(2)=9
  1684. infell(3)=9
  1685. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1686. infell(4)=9
  1687. infell(6)=9
  1688. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1689. infell(8)=12
  1690. infell(9)=24
  1691. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=32
  1692. GOTO 300
  1693. C Element CUBQ
  1694. 175 infell(2)=27
  1695. infell(3)=27
  1696. infell(4)=27
  1697. infell(6)=27
  1698. infell(8)=28
  1699. infell(9)=76
  1700. GOTO 300
  1701. C Element TETQ
  1702. 176 infell(2)=5
  1703. infell(3)=5
  1704. infell(4)=5
  1705. infell(6)=5
  1706. infell(8)=14
  1707. infell(9)=38
  1708. GOTO 300
  1709. C Element PRIQ
  1710. 177 infell(2)=12
  1711. infell(3)=12
  1712. infell(4)=12
  1713. infell(6)=12
  1714. infell(8)=21
  1715. infell(9)=57
  1716. GOTO 300
  1717. C Element TRIR
  1718. 178 IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) THEN
  1719. infell(2)=7
  1720. infell(6)=7
  1721. infell(4)=7
  1722. ELSE
  1723. infell(2)=4
  1724. infell(4)=4
  1725. infell(6)=4
  1726. ENDIF
  1727. infell(3)=7
  1728. infell(8)=9
  1729. infell(9)=21
  1730. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=27
  1731. GOTO 300
  1732. C Element QUAR
  1733. 179 infell(2)=9
  1734. infell(3)=9
  1735. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1736. infell(4)=9
  1737. infell(6)=9
  1738. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1739. infell(8)=12
  1740. infell(9)=28
  1741. IF (IFOUR.EQ.1.OR.IFOUR.EQ.-3) infell(9)=36
  1742. GOTO 300
  1743. C Element CUBR
  1744. 180 infell(2)=27
  1745. infell(3)=27
  1746. infell(4)=27
  1747. infell(6)=27
  1748. infell(8)=28
  1749. infell(9)=84
  1750. GOTO 300
  1751. C Element TETR
  1752. 181 infell(2)=5
  1753. infell(3)=5
  1754. infell(4)=5
  1755. infell(6)=5
  1756. infell(8)=14
  1757. infell(9)=42
  1758. GOTO 300
  1759. C Element PRIR
  1760. 182 infell(2)=12
  1761. infell(3)=12
  1762. infell(4)=12
  1763. infell(6)=12
  1764. infell(8)=21
  1765. infell(9)=61
  1766. GOTO 300
  1767. C Element Q4RI (QUA4 with 1x1 Gauss points)
  1768. 183 infell(2)=4
  1769. infell(3)=1
  1770. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=9
  1771. infell(4)=1
  1772. C** infell(4)=5 CORRECTION MILL LE 8/8/90
  1773. infell(6)=1
  1774. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=9
  1775. infell(9)=8
  1776. IF (IFOUR.EQ.-3) infell(9)=11
  1777. IF (IFOUR.EQ.1) infell(9)=12
  1778. GOTO 300
  1779. C Element Q8RI (QUA8 with 2x2 Gauss points)
  1780. 184 infell(2)=9
  1781. infell(3)=4
  1782. IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(3)=16
  1783. infell(4)=4
  1784. infell(6)=4
  1785. C** IF (IFOUR.EQ.0.OR.IFOUR.EQ.1) infell(6)=16
  1786. infell(9)=16
  1787. IF (IFOUR.EQ.-3) infell(9)=19
  1788. IF (IFOUR.EQ.1) infell(9)=24
  1789. GOTO 300
  1790. C Element JOQ3
  1791. 185 infell(2)=3
  1792. infell(3)=3
  1793. infell(4)=3
  1794. infell(6)=3
  1795. infell(8)=12
  1796. infell(9)=24
  1797. infell(10)=4
  1798. infell(15)=4
  1799. infell(16)=4
  1800. GOTO 300
  1801. C Element JOQ6
  1802. 186 infell(2)=7
  1803. infell(3)=7
  1804. infell(4)=7
  1805. infell(6)=7
  1806. infell(8)=21
  1807. infell(9)=54
  1808. infell(10)=5
  1809. infell(15)=5
  1810. infell(16)=5
  1811. GOTO 300
  1812. C Element JOQ8
  1813. 187 infell(2)=9
  1814. infell(3)=9
  1815. infell(4)=9
  1816. infell(6)=9
  1817. infell(8)=28
  1818. infell(9)=72
  1819. infell(10)=5
  1820. infell(15)=5
  1821. infell(16)=5
  1822. GOTO 300
  1823. C Element JOR3
  1824. 188 infell(2)=3
  1825. infell(3)=3
  1826. infell(4)=3
  1827. infell(6)=3
  1828. infell(8)=12
  1829. infell(9)=30
  1830. infell(10)=5
  1831. infell(15)=5
  1832. infell(16)=5
  1833. GOTO 300
  1834. C Element JOR6
  1835. 189 infell(2)=7
  1836. infell(3)=7
  1837. infell(4)=7
  1838. infell(6)=7
  1839. infell(8)=21
  1840. infell(9)=63
  1841. infell(10)=6
  1842. infell(15)=6
  1843. infell(16)=6
  1844. GOTO 300
  1845. C Element JOR8
  1846. 190 infell(2)=9
  1847. infell(3)=9
  1848. infell(4)=9
  1849. infell(6)=9
  1850. infell(8)=28
  1851. infell(9)=84
  1852. infell(10)=6
  1853. infell(15)=6
  1854. infell(16)=6
  1855. GOTO 300
  1856. C Element T1D2/M1D2 : Element THERMIQUE/MECANIQUE MASSIF 1D a 2 noeuds
  1857. C On suppose que IFOMOD= 3 ou 4 ou 5 (IDIM=1)
  1858. 191 infell(2)=2
  1859. infell(3)=2
  1860. infell(4)=2
  1861. infell(6)=2
  1862. infell(9)=2
  1863. IF ((IFOUR.GE.7.AND.IFOUR.LE.10).OR.IFOUR.EQ.14) infell(9)=3
  1864. IF (IFOUR.EQ.11) infell(9)=4
  1865. GOTO 300
  1866. C Element T1D3/M1D3 : Element THERMIQUE/MECANIQUE MASSIF 1D a 3 noeuds
  1867. C On suppose que IFOMOD= 3 ou 4 ou 5 (IDIM=1)
  1868. 192 infell(2)=3
  1869. infell(3)=3
  1870. infell(4)=3
  1871. infell(6)=3
  1872. infell(9)=3
  1873. IF ((IFOUR.GE.7.AND.IFOUR.LE.10).OR.IFOUR.EQ.14) infell(9)=4
  1874. IF (IFOUR.EQ.11) infell(9)=5
  1875. GOTO 300
  1876. C Element fluide NAVIER_STOKES
  1877. C LC03 LS03 BS03
  1878. 195 infell(6)=2
  1879. GOTO 300
  1880. C LC07 LS07 BS07
  1881. 196 infell(6)=7
  1882. GOTO 300
  1883. C LC09 LS09 BS09
  1884. 197 infell(6)=4
  1885. GOTO 300
  1886. C MC03
  1887. 216 infell(6)=2
  1888. GOTO 300
  1889. C MC07
  1890. 217 infell(6)=7
  1891. GOTO 300
  1892. C MC09
  1893. 218 infell(6)=4
  1894. GOTO 300
  1895. C M103 MS03
  1896. 223 infell(6)=3
  1897. GOTO 300
  1898. C M107 MS07
  1899. 224 infell(6)=7
  1900. GOTO 300
  1901. C M109 MS09
  1902. 225 infell(6)=16
  1903. GOTO 300
  1904. C QC03 Q103 QS03
  1905. 237 infell(6)=3
  1906. GOTO 300
  1907. C QC07 Q107 QS07
  1908. 238 infell(6)=7
  1909. GOTO 300
  1910. C QC09 Q109 QS09
  1911. 239 infell(6)=16
  1912. GOTO 300
  1913. C
  1914. C CIFL
  1915. C
  1916. 258 CONTINUE
  1917. infell(2)=1
  1918. infell(3)=1
  1919. infell(4)=1
  1920. infell(6)=1
  1921. infell(8)=0
  1922. infell(9)=8
  1923. infell(10)=5
  1924. infell(15)=3
  1925. infell(16)=5
  1926. GO TO 300
  1927. C
  1928. C SHB8
  1929. C
  1930. 260 CONTINUE
  1931. infell(2)=5
  1932. infell(3)=5
  1933. infell(4)=5
  1934. infell(6)=5
  1935. infell(8)=0
  1936. infell(9)=24
  1937. infell(10)=6
  1938. infell(13)= 1
  1939. infell(15)=3
  1940. infell(16)=6
  1941. GO TO 300
  1942. C
  1943. C XQ4R
  1944. C
  1945. 263 INFELl(2)=0
  1946. INFELl(3)=64
  1947. INFELl(4)=64
  1948. INFELl(6)=64
  1949. INFELl(15)=20
  1950. INFELl(16)=4
  1951. INFELl(9) = 4*INFELl(15)
  1952. INFELl(10)=4
  1953. GOTO 300
  1954. C
  1955. C XC8R
  1956. C
  1957. 264 INFELl(2)=0
  1958. INFELl(3)=64
  1959. INFELl(4)=64
  1960. INFELl(6)=64
  1961. INFELl(15)=30
  1962. INFELl(16)=6
  1963. INFELl(9) = 8*INFELl(15)
  1964. INFELl(10)=6
  1965. GOTO 300
  1966. C
  1967. C Element JOI1 : element de liaison a 2 noeuds (6 ddl par noeuds)
  1968. C
  1969. 265 infell(2)=1
  1970. infell(3)=1
  1971. infell(4)=1
  1972. infell(5)=0
  1973. infell(6)=1
  1974. infell(7)=700
  1975. infell(8)=0
  1976. infell(13)=75
  1977. infell(14)=2
  1978. IF(IFOUR.EQ.2) THEN
  1979. infell(9)=12
  1980. infell(10)=6
  1981. infell(15)=6
  1982. infell(16)=6
  1983. ELSE IF(IFOUR.EQ.-2.OR.IFOUR.EQ.-1) THEN
  1984. infell(9)=6
  1985. infell(10)=3
  1986. infell(15)=3
  1987. infell(16)=3
  1988. ENDIF
  1989. GOTO 300
  1990. C
  1991. C Element ZCO2 : zone cohesive a 2 noeuds (2 ddls par noeud)
  1992. C
  1993. 266 infell(2)=2
  1994. infell(4)=2
  1995. infell(6)=2
  1996. infell(7)=100
  1997. infell(9)=4
  1998. infell(10)=2
  1999. infell(15)=2
  2000. infell(16)=2
  2001. GOTO 300
  2002. C
  2003. C Element ZCO3 : zone cohesive a 3 noeuds (2 ddls par noeud)
  2004. C
  2005. 267 infell(2)=1
  2006. infell(4)=1
  2007. infell(6)=1
  2008. infell(7)=100
  2009. infell(9)=9
  2010. infell(10)=3
  2011. infell(15)=3
  2012. infell(16)=3
  2013. GOTO 300
  2014. C
  2015. C Element ZCO4 : zone cohesive a 4 noeuds (2 ddls par noeud)
  2016. C
  2017. 268 infell(2)=4
  2018. infell(4)=4
  2019. infell(6)=4
  2020. infell(7)=100
  2021. infell(9)=12
  2022. infell(10)=3
  2023. infell(15)=3
  2024. infell(16)=3
  2025. GOTO 300
  2026. c
  2027. C Element TUY2 : tuyau pour modele d'advection en thermique
  2028. C
  2029. 269 infell(2)=2
  2030. infell(4)=2
  2031. infell(5)=5
  2032. infell(6)=2
  2033. infell(7)=200
  2034. infell(9)=2
  2035. infell(10)=1
  2036. infell(15)=1
  2037. infell(16)=1
  2038. GOTO 300
  2039. c
  2040. C Element TUY3 : tuyau pour modele d'advection en thermique
  2041. C
  2042. 270 infell(2)=3
  2043. infell(4)=3
  2044. infell(5)=5
  2045. infell(6)=3
  2046. infell(7)=200
  2047. infell(9)=2
  2048. infell(10)=1
  2049. infell(15)=1
  2050. infell(16)=1
  2051. GOTO 300
  2052. c
  2053. c element coaxial COS2 (3D pour liaison acier-beton)
  2054. c
  2055. 271 infell(2)=1
  2056. infell(4)=2
  2057. infell(5)=2
  2058. infell(6)=2
  2059. infell(7)=100
  2060. infell(9)=4*idim
  2061. infell(10)=3
  2062. infell(14)=12
  2063. infell(15)=IDIM
  2064. infell(16)=3
  2065. c
  2066. c element coaxial COA2 (3D pour liaison acier-beton)
  2067. c
  2068. 272 infell(2)=1
  2069. infell(4)=2
  2070. infell(5)=2
  2071. infell(6)=2
  2072. infell(7)=100
  2073. infell(9)=4*idim
  2074. infell(10)=3
  2075. infell(14)=12
  2076. infell(15)=IDIM
  2077. infell(16)=3
  2078. C
  2079. 300 IF (IELE.EQ.0) IELE=infell(14)
  2080. NBGST = infell(4)
  2081. NBG = infell(6)
  2082. NBGM = infell(3)
  2083. IF (NBGM.EQ.0) THEN
  2084. NBGM=NBG
  2085. infell(3)=NBGM
  2086. ENDIF
  2087. NBSH = NBNNE(IELE)
  2088. IF (MELE.GE.79.AND.MELE.LE.83 ) NBSH = infell(8)
  2089. IF (MELE.EQ.96) NBSH = infell(8)
  2090. IF (MELE.GE.108.AND.MELE.LE.110) NBSH = infell(8)
  2091. IF (MELE.GE.111.AND.MELE.LE.122) NBSH = infell(8)
  2092. IF (MELE.GE.173.AND.MELE.LE.182) NBSH = infell(8)
  2093. IF (MELE.GE.185.AND.MELE.LE.190) NBSH = infell(8)
  2094. IF (MELE.GE.195.AND.MELE.LE.257) NBSH = infell(8)
  2095. IF (MELE.EQ.263.OR.MELE.EQ.264 ) NBSH = infell(8)
  2096.  
  2097. C Cas particulier des formulations massives (mfr2 > 0)
  2098. C Ici : infell(9) = 1 * nb.noeuds.EF
  2099. IF (mfr2.NE.0) THEN
  2100. infell(9) = NBSH
  2101. ENDIF
  2102. *
  2103. * nombre composante contraintes/defo, materiau IMPEDANCE
  2104. if (dcmate) then
  2105. call idprim(IMODEL,MFR3,IPNOMC,NBROBL,NBRFAC)
  2106. if(tymode(/2).gt.0) then
  2107. if (tymode(1).eq.'LISTMOTS') then
  2108. dcmat2 = .true.
  2109. mlmot5 = ivamod(1)
  2110. segact mlmot5
  2111. nbrobl = mlmot5.mots(/2)*2
  2112. endif
  2113. endif
  2114. if (dcmat2.and.mele.eq.2) then
  2115. infell(9) = nbrobl
  2116. infell(10) = nbrobl/2
  2117. infell(15) = nbrobl/2
  2118. infell(16) = nbrobl/2
  2119. else
  2120. infell(15) = nbrobl
  2121. if (nbrfac.gt.0) infell(15) = infell(15) + nbrfac
  2122. infell(16) = infell(15)
  2123. if (mele.eq.45) infell(9) = nbrobl
  2124. if (mele.eq.2) infell(9) = nbrobl*2
  2125. endif
  2126. endif
  2127.  
  2128. c* write(6,*)'TYINTE',TYINTE
  2129. c* write(6,*)'MELE:',MELE,'IELE:',IELE,'NBSH:',NBSH,'NBG:',NBG
  2130.  
  2131. C Remplissage de infell(12) si MFR=5 cad MELE=41 ou 56 (COQ8 ou COQ6)
  2132. C -------------------------
  2133. IF (MFR.EQ.5.OR.MFR.EQ.74) THEN
  2134. c* write(6,*) ' elquoi appel a renoeu '
  2135. CALL RENOEU(IELE,MELE,NBSH,IPT2,IRT2)
  2136. c* write(6,*) ' elquoi sortie renoeu ipt2 irt2' ,ipt2,irt2
  2137. if(inttyp.eq.-10) then
  2138. infmod(8)=IPT2
  2139. else
  2140. infell(12)=ipt2
  2141. endif
  2142. ENDIF
  2143. c
  2144. c cas XFEM : le 2nd segment d integration contient le MINTE de l'EF
  2145. c correspondant non enrichi (avec un nombre reduit de point de Gauss)
  2146. IF (MFR.EQ.63) THEN
  2147. if(MELE.eq.263) then
  2148. MEL2 = 8
  2149. NBG2 = 4
  2150. NBSH2 = 4
  2151. else if(MELE.eq.264) then
  2152. MEL2 = 14
  2153. NBG2 = 8
  2154. NBSH2 = 8
  2155. endif
  2156. c pour l'instant on ne distingue pas les cas selon TYINTE
  2157. CALL RESHPT(NBG2,NBSH2,IELE,MEL2,0,IPT2,IRT2)
  2158. if(inttyp.eq.-10) then
  2159. infmod(8)=IPT2
  2160. else
  2161. infell(12)=IPT2
  2162. endif
  2163. ENDIF
  2164.  
  2165. C Remplissage de infell(11) : INTEGRATION DE L'ELEMENT FINI
  2166. C ---------------------------
  2167. IDETYI = 0
  2168. 400 CONTINUE
  2169. IF (INTTYP.EQ.-10) TYINTE = TYINTE + 1
  2170.  
  2171. C Tests de verification :
  2172. IF (MELE.GT.NELFI) THEN
  2173. WRITE(IOIMP,*)
  2174. WRITE(IOIMP,*) 'ELQUOI : incoherence NELFI & MELE ',
  2175. & NELFI,MELE
  2176. CALL ERREUR(5)
  2177. RETURN
  2178. ENDIF
  2179. IF (TYINTE.GT.NTYNTE) THEN
  2180. WRITE(IOIMP,*)
  2181. WRITE(IOIMP,*) 'ELQUOI : incoherence TYINTE & NTYNTE',
  2182. & TYINTE,NTYNTE
  2183. CALL ERREUR(5)
  2184. RETURN
  2185. ENDIF
  2186.  
  2187. C == === ====== ===
  2188. C Si le segment n'a pas deja ete rempli ou si c'est un DKT : iin = 0
  2189. C == === ====== ===
  2190. IF (MELE.EQ.28) THEN
  2191. iin = 0
  2192. ELSE
  2193. iin = INTEGR(MELE,TYINTE,IBMODE)
  2194. ENDIF
  2195. C == ==== ======
  2196. C Si le segment d'integration a deja ete rempli : iin est non nul ici !
  2197. C == ==== ======
  2198.  
  2199. IF (iin.EQ.0) THEN
  2200. IPT1 = 0
  2201. C Cas des elements de MECANIQUE :
  2202. C -------------------------------
  2203. C SI FAUX ? Ne devrait-on pas avoir MELE < 57 OU MELE > 68 ?????
  2204. IF (MELE.LT.57.OR.MELE.GT.64) THEN
  2205. C 1 = Champ aux noeuds
  2206. IF (TYINTE.EQ.1) THEN
  2207. IF(MELE.GE.195.and.mele.ne.260.and.mele.ne.263.and.
  2208. & mele.ne.264) THEN
  2209. CALL RESHPT(NBG,NBSH,IELE,MELE,0,IPT1,IRT1)
  2210. ELSE
  2211. CALL RENOEU(IELE,MELE,NBSH,IPT1,IRT1)
  2212. ENDIF
  2213. C 2 = Point de Gauss, centre de gravite et champ CONSTANT
  2214. ELSE IF (TYINTE.EQ.2) THEN
  2215. CALL RESHPT(1,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2216. C 3 = Point de Gauss pour la rigidite
  2217. ELSE IF (TYINTE.EQ.3) THEN
  2218. if(mele.eq.263.or.mele.eq.264) then
  2219. CALL RESHPX(NBG,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2220. else
  2221. CALL RESHPT(NBG,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2222. endif
  2223. C 4 = Point de Gauss pour la masse
  2224. ELSE IF (TYINTE.EQ.4) THEN
  2225. if(mele.eq.263.or.mele.eq.264) then
  2226. CALL RESHPX(NBGM,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2227. else
  2228. CALL RESHPT(NBGM,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2229. endif
  2230. C 5 = Point de Gauss - calcul des contraintes
  2231. ELSE IF (TYINTE.EQ.5) THEN
  2232. if(mele.eq.263.or.mele.eq.264) then
  2233. CALL RESHPX(NBG,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2234. else
  2235. CALL RESHPT(NBGST,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2236. endif
  2237. C 6 = Pas de segment d'integration
  2238. ELSE IF (TYINTE.EQ.6) THEN
  2239. IPT1 = 0
  2240. C 7 = Champ aux faces
  2241. C 8 = Champ aux CENTREP1
  2242. ELSE IF (TYINTE.EQ.8) THEN
  2243. CALL RESHPT(NBG,NBSH,IELE,MELE,1,IPT1,IRT1)
  2244. C 9 = Champ aux MSOMMET
  2245. ELSE IF (TYINTE.EQ.9) THEN
  2246. CALL RESHPT(NBG,NBSH,IELE,MELE,2,IPT1,IRT1)
  2247. C Autre cas = Point de Gauss pour la rigidite
  2248. ELSE
  2249. CALL RESHPT(NBG,NBSH,IELE,MELE,NPINT,IPT1,IRT1)
  2250. ENDIF
  2251. C Cas des elements de THERMIQUE :
  2252. C -------------------------------
  2253. C ELSE
  2254. C CALL TINTR(MELE,IPT1)
  2255. ENDIF
  2256. IF (IPT1.NE.0) CALL SAVSEG(IPT1)
  2257. iin = IPT1
  2258. INTEGR(MELE,TYINTE,IBMODE) = iin
  2259. ENDIF
  2260.  
  2261. IF (INTTYP.EQ.-10) THEN
  2262. imodel.infmod(2+TYINTE+IDETYI) = iin
  2263. IF (TYINTE.LT.5) GOTO 400
  2264. IF (TYINTE.EQ.5.AND.IDETYI.EQ.0) THEN
  2265. IF (mele.EQ.263) THEN
  2266. * pour le XQ4R on recommence pour avoir les fonctions de forme
  2267. * classiques du : qua4
  2268. TYINTE = 0
  2269. IDETYI = 5
  2270. mele = 8
  2271. nbsh = 4
  2272. nbg = 4
  2273. nbgm = 4
  2274. nbgst = 4
  2275. GOTO 400
  2276. ELSE IF (mele.EQ.264) THEN
  2277. * pour le XC8R on recommence pour avoir les fonctions de forme
  2278. * classiques du : cub8
  2279. TYINTE = 0
  2280. IDETYI = 5
  2281. mele = 14
  2282. nbsh = 8
  2283. nbg = 8
  2284. nbgm = 8
  2285. nbgst = 8
  2286. GOTO 400
  2287. ENDIF
  2288. ENDIF
  2289. ENDIF
  2290.  
  2291. MINTE=iin
  2292. IF(MINTE.GT.0) SEGACT,MINTE
  2293. infell(11) = iin
  2294.  
  2295. C Sortie de ELQUOI : le segment IPTR=INFO est ACTIF.
  2296. IPTR = INFO
  2297. c* write(6,*)'-> ELQUOI infell',(infell(iou),iou=1,16)
  2298.  
  2299. END
  2300.  
  2301.  
  2302.  

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