Télécharger elquoi.eso

Retour à la liste

Numérotation des lignes :

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

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