Download donred.eso

Back to the list

   1 : C DONRED    SOURCE    CHAT      12/10/25    21:15:00     7548           
   2 :       SUBROUTINE DONRED(NBG,IELE,MELE,NNO,NPINT,IPT,IRET)
   3 : C=======================================================================
   4 : C
   5 : C    CALCULE LES COORDONNEES REDUITES ET LES POIDS D'INTEGRATION
   6 : C    DES POINTS DE GAUSS D'UN ELEMENT
   7 : C
   8 : C   ENTREES
   9 : C      NBG   = NOMBRE DE POINT DE GAUSS
  10 : C      IELE  = NUMEROTATION DES ELEMENTS DANS NOMS(32)
  11 : C                (VOIR CCGEOME)
  12 : C      MELE  = NUMEROTATION DANS NOMTP
  13 : C      NNO   = NOMBRE DE NOEUDS DE L'ELEMENT NOMS(IELE)
  14 : C      NPINT = NOMBRE DE POINTS D'INTEGRATION DONS LE CAS DES
  15 : C              ELEMENTS COQUES INTEGRES
  16 : C   SORTIES
  17 : C      IPT   = POINTEUR SUR MINTE
  18 : C      IRET  = 1 OU 0 SUIVANT QUE IELE ET NBG COMPATIBLES OU PAS
  19 : C
  20 : C     PAS DE MESSAGES D'ERREUR ECRIT DANS CETTE ROUTINE
  21 : C
  22 : C      QSI(NBG) ETA(NBG) DZE(NBG) = COORDONNEES REDUITES
  23 : C
  24 : C      POI(NBG) = POIDS DE L'INTEGRATION
  25 : C                 C A D VOLUME DE L ELEMENT DE BASE
  26 : C                 FOIS CONTRIBUTION DU POINT DE GAUSS
  27 : C
  28 : C      ON NE FAIT LA DISTINCTION QU'ENTRE   SEGMENTS
  29 : C                                           TRIANGLES
  30 : C                                           CARRES
  31 : C                                           TETRAEDRES
  32 : C                                           PRISMES
  33 : C                                           PYRAMIDES
  34 : C                                           CUBES
  35 : C                                           POLYGONES
  36 : C
  37 : *C PPJ  CHANGEMENT DES REGLES D'INTEGRATION POUR LES JOINTS
  38 : C=======================================================================
  39 :       IMPLICIT INTEGER(I-N)
  40 :       IMPLICIT REAL*8(A-H,O-Z)
  41 : -INC CCREEL
  42 : -INC SMINTE
  43 : C
  44 : C     QUELQUES CONSTANTES EN VRAC
  45 : C
  46 :       DATA HUIT/8.D0/
  47 :       DATA DEUX,TROIS,QUATRE/2.D0,3.D0,4.D0/
  48 :       DATA UNQUA,UNDEMI,UN/.25D0,.5D0,1.D0/
  49 :       DATA UNTIER/.33333333333333333D0/
  50 :       DATA DEUTIE/.66666666666666666D0/
  51 :       DATA UNCINQ/.2D0/
  52 :       DATA UNSIX/.166666666666666666D0/
  53 :       DATA UN24/.4166666666666666666D-1/
  54 : C
  55 : C     INTEGRATION 4 POINTS LIGNE
  56 : C
  57 :       DATA X861/.861136311594053D0/
  58 :       DATA X339/.339981043584856D0/
  59 :       DATA P347/.347854845137454D0/
  60 :       DATA P652/.652145154862546D0/
  61 : C
  62 : C     INTEGRATION 3 POINTS  LIGNE
  63 : C
  64 :       DATA P555/.555555555555555555D0/
  65 :       DATA P888/.888888888888888888D0/
  66 :       DATA X774/.774596669241483D0/
  67 : C
  68 : C     INTEGRATION  2 POINTS LIGNE
  69 : C
  70 :       DATA X577/.577350269189626D0/
  71 : C
  72 : C     INTEGRATION 4 POINTS TETRAEDRE
  73 : C
  74 :       DATA X138/.1381966011250105D0/
  75 :       DATA X585/.5854101966249684D0/
  76 : C
  77 : C     INTEGRATION 4 POINTS TRIANGLE
  78 : C
  79 :       DATA P260/.2604166666666666D0/
  80 :       DATA P281/-.28125D0/
  81 : C
  82 : C     INTEGRATION 6 POINTS TRIANGLE
  83 : C
  84 :       DATA X044/.44594849091596D0/
  85 :       DATA X009/.09157621350977D0/
  86 :       DATA X111/.11169079483900D0/
  87 :       DATA X005/.05497587182766D0/
  88 : C
  89 : C     INTEGRATION 7 POINTS TRIANGLE
  90 : C
  91 :       DATA X101/.1012865073235D0/
  92 :       DATA X797/.7974269853531D0/
  93 :       DATA X470/.4701420641051D0/
  94 :       DATA X059/.0597158717898D0/
  95 :       DATA P125/.1259391805448D0/
  96 :       DATA P132/.1323941527885D0/
  97 : C
  98 :       NBPGAU=NBG
  99 :       NBNO=NNO
 100 :       SEGINI MINTE
 101 :       IPT=MINTE
 102 :       IRET=1
 103 :       DO 100 I=1,NBG
 104 :          QSIGAU(I)=XZERO
 105 :          ETAGAU(I)=XZERO
 106 :          DZEGAU(I)=XZERO
 107 :          POIGAU(I)=XZERO
 108 :  100  CONTINUE
 109 : *
 110 : *  PETIT DEBRANCHEMENT POUR ELEMENT TUYO
 111 :       IF(MELE.EQ.96) GO TO 96
 112 : *  ET COQUES INTEGREES (sauf pour la matrice masse)
 113 :       IF(NPINT.NE.0.AND.NBG.NE.3)GOTO 95
 114 : *  ET ELEMENT TR6H
 115 :       IF(MELE.EQ.157)GOTO 1570
 116 : C
 117 : C       66  INDIQUE QUE L ELEMENT N EST PAS ENCORE IMPLEMENTE
 118 : C            DANS CE CAS IRET EST MIS A XZERO
 119 : C
 120 : C           P1 S2 S3 T3 T4 T6 T7 Q4 Q5 Q8 Q9 R2 R3 C8 C20 P6 P15
 121 :       GOTO ( 1, 2, 2, 4, 4, 4, 4, 8, 8, 8, 8, 2,12,14, 14,16, 16,
 122 : C        L3 L4 L6 L8 MU T4 T10 P5 P13 ATT SUP RP3 LP6 LP8
 123 :      1     4, 8,66,66,66,23, 23,25, 25, 66, 66,  2,  4,  8,
 124 : C        POLY
 125 :      2     30),IELE
 126 : C
 127 :  66   IRET=0
 128 :       IPT=0
 129 :       GOTO 666
 130 : C
 131 : C     ELEMENT POI1
 132 : C
 133 :  1    CONTINUE
 134 :       POIGAU(1)=UN
 135 :       GOTO 666
 136 : C
 137 : C     ELEMENT LIGNE LONGUEUR =2
 138 : C
 139 :  2    IF (NBG.NE.1) GOTO 220
 140 : C
 141 : C     UN POINT D INTEGRATION
 142 : C
 143 :       POIGAU(1)=DEUX
 144 :       GOTO 666
 145 :  220  IF (NBG.NE.2) GOTO 230
 146 : C
 147 : C     2  POINTS D INTEGRATION
 148 : C
 149 :       POIGAU(1)= UN
 150 :       POIGAU(2)= UN
 151 :       QSIGAU(1)=-X577
 152 :       QSIGAU(2)= X577
 153 : * les contraintes et les deformations des él. poutre et tuyau sont
 154 : * calculées analytiquement aux noeuds. On change les coordonées des
 155 : * points de Gauss afin d'avoir les bonnes valeurs quand on fait "CHANGER"
 156 : *
 157 : * ON INTEGRE AU NOEUD (LOBATTO) POUR L'ELEMENT DE JOINT 85 ET 170 (JOI2 ET JGI2)
 158 : *
 159 : *      IF(MELE.EQ.29.OR.MELE.EQ.42.OR.MELE.EQ.85) THEN
 160 :          IF(MELE.EQ.29.OR.MELE.EQ.42) THEN
 161 :          QSIGAU(1)=-1.D0
 162 :          QSIGAU(2)= 1.D0
 163 :       ENDIF
 164 :       GOTO 666
 165 : C
 166 : C     3  POINTS D INTEGRATION
 167 : C
 168 :  230  IF (NBG.NE.3) GOTO 240
 169 :       POIGAU(1)= P555
 170 :       POIGAU(2)= P888
 171 :       POIGAU(3)= P555
 172 :       QSIGAU(1)=-X774
 173 :       QSIGAU(3)= X774
 174 :       GOTO 666
 175 : C
 176 : C     4 POINTS D INTEGRATION
 177 : C
 178 :  240  IF(NBG.NE.4) GOTO 66
 179 :       QSIGAU(1)=-X861
 180 :       QSIGAU(2)=-X339
 181 :       QSIGAU(3)= X339
 182 :       QSIGAU(4)= X861
 183 :       POIGAU(1)= P347
 184 :       POIGAU(2)= P652
 185 :       POIGAU(3)= P652
 186 :       POIGAU(4)= P347
 187 :       GOTO 666
 188 : C
 189 : C     ELEMENT TRIANGLE       SURFACE=1/2
 190 : C
 191 :  4    CONTINUE
 192 : C
 193 : C     1  POIGAUNTS D INTEGRATION
 194 : C
 195 :       IF (NBG.NE.1) GOTO 430
 196 :       QSIGAU(1)=UNTIER
 197 :       ETAGAU(1)=UNTIER
 198 :       POIGAU(1)=UNDEMI
 199 :       GOTO 666
 200 : C
 201 : C     3 POIGAUNTS D INTEGRATION   ZIENK P201
 202 : C
 203 :  430  IF(NBG.NE.3) GOTO 440
 204 :       IF(MELE.EQ.56.OR.MELE.EQ.128) THEN
 205 :          QSIGAU(1)=UNSIX
 206 :          ETAGAU(1)=UNSIX
 207 :          QSIGAU(2)=UNSIX
 208 :          ETAGAU(2)=DEUTIE
 209 :          QSIGAU(3)=DEUTIE
 210 :          ETAGAU(3)=UNSIX
 211 : C
 212 : C     CAS DU JOT3, DU JCT3 ET DU JGT3 ON SE PLACE AUX SOMMETS
 213 : C
 214 :       ELSEIF(MELE.EQ.87)THEN
 215 :          QSIGAU(2)=UN
 216 :          ETAGAU(3)=UN
 217 : C
 218 :       ELSE
 219 :          QSIGAU(1)=UNDEMI
 220 :          ETAGAU(2)=UNDEMI
 221 :          QSIGAU(3)=UNDEMI
 222 :          ETAGAU(3)=UNDEMI
 223 :       ENDIF
 224 :       POIGAU(1)=UNSIX
 225 :       POIGAU(2)=UNSIX
 226 :       POIGAU(3)=UNSIX
 227 :       GOTO 666
 228 : C
 229 : C     4 POIGAUNTS D INTEGRATION    ZIENK P201
 230 : C
 231 :  440  IF (NBG.NE.4) GOTO 460
 232 :       QSIGAU(1)=UNTIER
 233 :       QSIGAU(2)=UNCINQ
 234 :       QSIGAU(3)=UNCINQ*TROIS
 235 :       QSIGAU(4)=UNCINQ
 236 :       ETAGAU(1)=UNTIER
 237 :       ETAGAU(2)=UNCINQ
 238 :       ETAGAU(3)=UNCINQ
 239 :       ETAGAU(4)=UNCINQ*TROIS
 240 :       POIGAU(1)=-27.D0/96.D0
 241 :       POIGAU(2)= 25.D0/96.D0
 242 :       POIGAU(3)=POIGAU(2)
 243 :       POIGAU(4)=POIGAU(2)
 244 :       GOTO 666
 245 : C
 246 : C     6 POIGAUNTS D INTEGRATION   COQUE EPAISSE
 247 : C
 248 :  460  IF(NBG.NE.6) GOTO 470
 249 :       QSIGAU(1)=UNSIX
 250 :       ETAGAU(1)=UNSIX
 251 :       QSIGAU(2)=UNSIX
 252 :       ETAGAU(2)=DEUTIE
 253 :       QSIGAU(3)=DEUTIE
 254 :       ETAGAU(3)=UNSIX
 255 :       DZEGAU(1)=-X577
 256 :       DZEGAU(2)=-X577
 257 :       DZEGAU(3)=-X577
 258 :       QSIGAU(4)=UNSIX
 259 :       ETAGAU(4)=UNSIX
 260 :       QSIGAU(5)=UNSIX
 261 :       ETAGAU(5)=DEUTIE
 262 :       QSIGAU(6)=DEUTIE
 263 :       ETAGAU(6)=UNSIX
 264 :       DZEGAU(4)= X577
 265 :       DZEGAU(5)= X577
 266 :       DZEGAU(6)= X577
 267 :       POIGAU(1)=UNSIX
 268 :       POIGAU(2)=UNSIX
 269 :       POIGAU(3)=UNSIX
 270 :       POIGAU(4)=UNSIX
 271 :       POIGAU(5)=UNSIX
 272 :       POIGAU(6)=UNSIX
 273 :       GOTO 666
 274 : C
 275 : C     7 POIGAUNTS D INTEGRATION     BATHE P280
 276 : C
 277 :  470  IF(NBG.NE.7) GOTO 777
 278 :       QSIGAU(1)=X101
 279 :       QSIGAU(2)=X797
 280 :       QSIGAU(3)=X101
 281 :       QSIGAU(4)=X470
 282 :       QSIGAU(5)=X470
 283 :       QSIGAU(6)=X059
 284 :       QSIGAU(7)=UNTIER
 285 :       ETAGAU(1)=QSIGAU(1)
 286 :       ETAGAU(2)=QSIGAU(1)
 287 :       ETAGAU(3)=QSIGAU(2)
 288 :       ETAGAU(4)=QSIGAU(6)
 289 :       ETAGAU(5)=QSIGAU(4)
 290 :       ETAGAU(6)=QSIGAU(4)
 291 :       ETAGAU(7)=QSIGAU(7)
 292 :       POIGAU(1)=P125*UNDEMI
 293 :       POIGAU(2)=P125*UNDEMI
 294 :       POIGAU(3)=P125*UNDEMI
 295 :       POIGAU(4)=P132*UNDEMI
 296 :       POIGAU(5)=P132*UNDEMI
 297 :       POIGAU(6)=P132*UNDEMI
 298 :       POIGAU(7)=.1125D0
 299 :       GOTO 666
 300 : C
 301 : C       PLUSIEURS NAPPES DE 3 POINTS D INTEGRATION
 302 : C
 303 :  777  IF(NBG.NE.9.AND.NBG.NE.12.AND.NBG.NE.15.AND.NBG.NE.18.AND.
 304 :      1     NBG.NE.21) GOTO 66
 305 :       NNAPPE=NBG/3
 306 :       POIDS=UN/DBLE(NBG)
 307 :       DO 7771 IA=1,NNAPPE
 308 :          NP=IA*3-2
 309 :          POIGAU(NP  )=POIDS
 310 :          POIGAU(NP+1)=POIDS
 311 :          POIGAU(NP+2)=POIDS
 312 :          QSIGAU(NP  )= UNSIX
 313 :          ETAGAU(NP  )= UNSIX
 314 :          QSIGAU(NP+1)= UNSIX
 315 :          ETAGAU(NP+1)= DEUTIE
 316 :          QSIGAU(NP+2)= DEUTIE
 317 :          ETAGAU(NP+2)= UNSIX
 318 :          XXXX        = ((DEUX*DBLE(IA)-UN)/DBLE(NNAPPE))-UN
 319 :          DZEGAU(NP  )=  XXXX
 320 :          DZEGAU(NP+1)=  XXXX
 321 :          DZEGAU(NP+2)=  XXXX
 322 :  7771 CONTINUE
 323 :       GOTO 666
 324 : C
 325 : C     ELEMENT CARRE   SURFACE=4
 326 : C
 327 :  8    IF(NBG.NE.1) GOTO 84
 328 : C
 329 : C     UN POINT D INTEGRATION
 330 : C
 331 :       POIGAU(1)=QUATRE
 332 :       GOTO 666
 333 :  84   IF(NBG.NE.4) GOTO 85
 334 : C
 335 : C     4 POIGAUNTS D INTEGRATION
 336 : C
 337 :       QSIGAU(1)=-X577
 338 :       QSIGAU(2)= X577
 339 :       QSIGAU(3)= X577
 340 :       QSIGAU(4)=-X577
 341 :       ETAGAU(1)=-X577
 342 :       ETAGAU(2)=-X577
 343 :       ETAGAU(3)= X577
 344 :       ETAGAU(4)= X577
 345 : C
 346 : C     CAS DU JOI4, JCI4 ET JGI4 ON SE PLACE AUX SOMMETS
 347 : C
 348 :       IF(MELE.EQ.88)THEN
 349 :         QSIGAU(1)=-UN
 350 :         QSIGAU(2)= UN
 351 :         QSIGAU(3)= UN
 352 :         QSIGAU(4)=-UN
 353 :         ETAGAU(1)=-UN
 354 :         ETAGAU(2)=-UN
 355 :         ETAGAU(3)= UN
 356 :         ETAGAU(4)= UN
 357 :       ENDIF
 358 : C
 359 :       POIGAU(1)=UN
 360 :       POIGAU(2)=UN
 361 :       POIGAU(3)=UN
 362 :       POIGAU(4)=UN
 363 :       GOTO 666
 364 :  85   IF(NBG.NE.5) GOTO 89
 365 : C
 366 : C     5 POIGAUNTS D INTEGRATION
 367 : C
 368 :       QSIGAU(1)=-X577
 369 :       QSIGAU(2)= X577
 370 :       QSIGAU(3)= X577
 371 :       QSIGAU(4)=-X577
 372 :       ETAGAU(1)=-X577
 373 :       ETAGAU(2)=-X577
 374 :       ETAGAU(3)= X577
 375 :       ETAGAU(4)= X577
 376 :       POIGAU(1)=UN
 377 :       POIGAU(2)=UN
 378 :       POIGAU(3)=UN
 379 :       POIGAU(4)=UN
 380 :       POIGAU(5)=QUATRE
 381 :       GOTO 666
 382 : C
 383 : C     9 POIGAUNTS D INTEGRATION
 384 : C
 385 :  89   IF (NBG.NE.9) GOTO 816
 386 :       QSIGAU(1)=-X774
 387 :       QSIGAU(3)= X774
 388 :       QSIGAU(4)=-X774
 389 :       QSIGAU(6)= X774
 390 :       QSIGAU(7)=-X774
 391 :       QSIGAU(9)= X774
 392 :       ETAGAU(1)=-X774
 393 :       ETAGAU(2)=-X774
 394 :       ETAGAU(3)=-X774
 395 :       ETAGAU(7)= X774
 396 :       ETAGAU(8)= X774
 397 :       ETAGAU(9)= X774
 398 :       POIGAU(1)=P555*P555
 399 :       POIGAU(3)=POIGAU(1)
 400 :       POIGAU(7)=POIGAU(1)
 401 :       POIGAU(9)=POIGAU(1)
 402 :       POIGAU(2)=P888*P555
 403 :       POIGAU(4)=POIGAU(2)
 404 :       POIGAU(6)=POIGAU(2)
 405 :       POIGAU(8)=POIGAU(2)
 406 :       POIGAU(5)=P888*P888
 407 :       GOTO 666
 408 :  816  IF(NBG.NE.16) GOTO 88
 409 : C
 410 : C     CARRE 16 POINTS D INTEGRATION
 411 : C
 412 :       DO  8161 IA=1,13,4
 413 :          QSIGAU(IA   )=-X861
 414 :          QSIGAU(IA+1 )=-X339
 415 :          QSIGAU(IA+2 )= X339
 416 :          QSIGAU(IA+3 )= X861
 417 :          POIGAU(IA   )= P347
 418 :          POIGAU(IA+1 )= P652
 419 :          POIGAU(IA+2 )= P652
 420 :          POIGAU(IA+3 )= P347
 421 :  8161 CONTINUE
 422 :       DO  8162 IA=1,4
 423 :          ETAGAU(IA   )=-X861
 424 :          ETAGAU(IA+4 )=-X339
 425 :          ETAGAU(IA+8 )= X339
 426 :          ETAGAU(IA+12)= X861
 427 :          POIGAU(IA   )= P347*POIGAU(IA   )
 428 :          POIGAU(IA+4 )= P652*POIGAU(IA+4 )
 429 :          POIGAU(IA+8 )= P652*POIGAU(IA+8 )
 430 :          POIGAU(IA+12)= P347*POIGAU(IA+12)
 431 :  8162 CONTINUE
 432 :       GOTO 666
 433 : C
 434 : C     ELEMENT CARRE 8 POINTS D INTEGRATION POUR COQ8
 435 : C
 436 :  88   IF(NBG.NE.8) GOTO 888
 437 :       QSIGAU(1)=-X577
 438 :       QSIGAU(2)= X577
 439 :       QSIGAU(3)= X577
 440 :       QSIGAU(4)=-X577
 441 : C
 442 :       ETAGAU(1)=-X577
 443 :       ETAGAU(2)=-X577
 444 :       ETAGAU(3)= X577
 445 :       ETAGAU(4)= X577
 446 : C
 447 :       QSIGAU(5)=-X577
 448 :       QSIGAU(6)= X577
 449 :       QSIGAU(7)= X577
 450 :       QSIGAU(8)=-X577
 451 : C
 452 :       ETAGAU(5)=-X577
 453 :       ETAGAU(6)=-X577
 454 :       ETAGAU(7)= X577
 455 :       ETAGAU(8)= X577
 456 : C
 457 :       DO 881 IA=1,4
 458 :          POIGAU(IA  )= UN
 459 :          POIGAU(IA+4)= UN
 460 :          DZEGAU(IA  )=-X577
 461 :          DZEGAU(IA+4)= X577
 462 :  881  CONTINUE
 463 :       GOTO 666
 464 : C
 465 : C       PLUSIEURS NAPPES DE POINTS DE 4 POINTS D  INTEGRATION
 466 : C
 467 :  888  IF(NBG.NE.12.AND.NBG.NE.16.AND.NBG.NE.20.AND.NBG.NE.24.AND.
 468 :      1     NBG.NE.28) GOTO 66
 469 :       NNAPPE=NBG/4
 470 :       POIDS=HUIT/DBLE(NBG)
 471 :       DO 8881 IA=1,NNAPPE
 472 :          NP=IA*4-3
 473 :          POIGAU(NP  )=POIDS
 474 :          POIGAU(NP+1)=POIDS
 475 :          POIGAU(NP+2)=POIDS
 476 :          POIGAU(NP+3)=POIDS
 477 :          QSIGAU(NP  )=-X577
 478 :          QSIGAU(NP+1)= X577
 479 :          QSIGAU(NP+2)= X577
 480 :          QSIGAU(NP+3)=-X577
 481 :          ETAGAU(NP  )=-X577
 482 :          ETAGAU(NP+1)=-X577
 483 :          ETAGAU(NP+2)= X577
 484 :          ETAGAU(NP+3)= X577
 485 :          XXXX        = ((DEUX*DBLE(IA)-UN)/DBLE(NNAPPE))-UN
 486 :          DZEGAU(NP  )=  XXXX
 487 :          DZEGAU(NP+1)=  XXXX
 488 :          DZEGAU(NP+2)=  XXXX
 489 :          DZEGAU(NP+3)=  XXXX
 490 :  8881 CONTINUE
 491 :       GOTO 666
 492 : C
 493 : C     ELEMENT RACCORD 2
 494 : C
 495 :  12   CONTINUE
 496 : C
 497 : C     UN POINT D INTEGRATION
 498 : C
 499 :       IF(NBG.NE.1) GOTO 122
 500 :       POIGAU(1)=DEUX
 501 :       GOTO 666
 502 :  122  IF (NBG.NE.2) GOTO 123
 503 : C
 504 : C     2  POINTS D INTEGRATION
 505 : C
 506 : C     QUE LES ELEMENTS RACCORDS
 507 : C
 508 :       POIGAU(1)= UN
 509 :       POIGAU(2)= UN
 510 :       QSIGAU(1)=-X577
 511 :       QSIGAU(2)= X577
 512 :       ETAGAU(1)=-UN
 513 :       ETAGAU(2)=-UN
 514 :       GOTO 666
 515 : C
 516 : C     3   POINTS D INTEGRATION
 517 : C
 518 : C     QUE LE LINESPRING
 519 : C
 520 :  123  IF(NBG.NE.3) GOTO 124
 521 :       QSIGAU(1)=-X774
 522 :       QSIGAU(3)= X774
 523 :       ETAGAU(1)=-UN
 524 :       ETAGAU(2)=-UN    
 525 :       ETAGAU(3)=-UN
 526 :       POIGAU(1)= P555
 527 :       POIGAU(2)= P888
 528 :       POIGAU(3)= P555
 529 : *
 530 : * on integre au noeud (Lobatto) pour l'element de joint 86 (JOI3)
 531 : *
 532 :       IF(MELE.EQ.86) THEN
 533 :          ETAGAU(1)=-UN
 534 :          ETAGAU(2)=-UN
 535 :          ETAGAU(3)=-UN
 536 :          QSIGAU(1)=-1.D0
 537 :          QSIGAU(3)= 1.D0
 538 :          POIGAU(1)= UNTIER
 539 :          POIGAU(2)= 2*DEUTIE
 540 :          POIGAU(3)= UNTIER
 541 :       ENDIF
 542 : 
 543 :       GOTO 666
 544 : C
 545 : C     4 POINTS D INTEGRATION
 546 : C
 547 :  124  IF(NBG.NE.4) GOTO 66
 548 :       QSIGAU(1)=-X861
 549 :       QSIGAU(2)=-X339
 550 :       QSIGAU(3)= X339
 551 :       QSIGAU(4)= X861
 552 :       POIGAU(1)= P347
 553 :       POIGAU(2)= P652
 554 :       POIGAU(3)= P652
 555 :       POIGAU(4)= P347
 556 :       GOTO 666
 557 : C
 558 : C     ELEMENT CUBE    VOLUME=8
 559 : C
 560 :  14   IF(NBG.NE.1) GOTO 148
 561 : C
 562 : C     UN POINT D INTEGRATION
 563 : C
 564 :       POIGAU(1)=HUIT
 565 :       GOTO 666
 566 :  148  IF (NBG.NE.8) GOTO 1427
 567 : C
 568 : C     8 POIGAUNTS D INTEGRATION
 569 : C
 570 :       QSIGAU(1)=-X577
 571 :       QSIGAU(2)= X577
 572 :       QSIGAU(3)= X577
 573 :       QSIGAU(4)=-X577
 574 :       QSIGAU(5)=-X577
 575 :       QSIGAU(6)= X577
 576 :       QSIGAU(7)= X577
 577 :       QSIGAU(8)=-X577
 578 :       ETAGAU(1)=-X577
 579 :       ETAGAU(2)=-X577
 580 :       ETAGAU(3)= X577
 581 :       ETAGAU(4)= X577
 582 :       ETAGAU(5)=-X577
 583 :       ETAGAU(6)=-X577
 584 :       ETAGAU(7)= X577
 585 :       ETAGAU(8)= X577
 586 :       DO 141 IA=1,4
 587 :          POIGAU(IA  )= UN
 588 :          POIGAU(IA+4)= UN
 589 :          DZEGAU(IA  )=-X577
 590 :          DZEGAU(IA+4)= X577
 591 :  141  CONTINUE
 592 :       GOTO 666
 593 : C
 594 : C     27  POIGAUNTS D INTEGRATION
 595 : C
 596 :  1427 IF(NBG.NE.27) GOTO 1440
 597 :       DO 151 IA=1,25,3
 598 :          QSIGAU(IA  )=-X774
 599 :          QSIGAU(IA+2)= X774
 600 :  151  CONTINUE
 601 :       DO 152 IA=1,9
 602 :          DZEGAU(IA   )=-X774
 603 :          DZEGAU(IA+18)= X774
 604 :  152  CONTINUE
 605 :       DO 153 IA=1,3
 606 :          ETAGAU(IA   )=-X774
 607 :          ETAGAU(IA+6 )= X774
 608 :          ETAGAU(IA+9 )=-X774
 609 :          ETAGAU(IA+15)= X774
 610 :          ETAGAU(IA+18)=-X774
 611 :          ETAGAU(IA+24)= X774
 612 :  153  CONTINUE
 613 :       POIGAU(1)=P555*P555
 614 :       POIGAU(3)=POIGAU(1)
 615 :       POIGAU(7)=POIGAU(1)
 616 :       POIGAU(9)=POIGAU(1)
 617 :       POIGAU(2)=P888*P555
 618 :       POIGAU(4)=POIGAU(2)
 619 :       POIGAU(6)=POIGAU(2)
 620 :       POIGAU(8)=POIGAU(2)
 621 :       POIGAU(5)=P888*P888
 622 :       DO 154 IA=1,9
 623 :          XX=POIGAU(IA)
 624 :          POIGAU(IA   )=XX*P555
 625 :          POIGAU(IA+9 )=XX*P888
 626 :          POIGAU(IA+18)=POIGAU(IA)
 627 :  154  CONTINUE
 628 :       GO TO 666
 629 :  1440 IF(NBG.NE.5) go to 66
 630 : * special shb8
 631 :       QSIGAU(1) = -0.906179845938664D0 
 632 :       QSIGAU(2) = -0.538469310105683D0 
 633 :       QSIGAU(3) =  0.D0 
 634 :       QSIGAU(4) =  0.538469310105683D0 
 635 :       QSIGAU(5) =  0.906179845938664D0 
 636 : C 
 637 :       POIGAU(1) =  0.236926885056189D0 
 638 :       POIGAU(2) =  0.478628670499366D0 
 639 :       POIGAU(3) =  0.568888888888889D0 
 640 :       POIGAU(4) =  0.478628670499366D0 
 641 :       POIGAU(5) =  0.236926885056189D0 
 642 : C 
 643 :       GOTO 666
 644 : C
 645 : C     ELEMENT PRISME   VOLUME=1
 646 : C
 647 :  16   IF(NBG.NE.1) GOTO 162
 648 : C
 649 : C     UN POINT D INTEGRATION
 650 : C
 651 :       POIGAU(1)=UN
 652 :       QSIGAU(1)=UNTIER
 653 :       ETAGAU(1)=UNTIER
 654 :       DZEGAU(1)=0.
 655 :       GOTO 666
 656 : C
 657 : C     2 POIGAUNTS D INTEGRATION
 658 : C
 659 :  162  IF(NBG.NE.2) GO TO 166
 660 :       QSIGAU(1)=UNTIER
 661 :       QSIGAU(2)=UNTIER
 662 :       ETAGAU(1)=UNTIER
 663 :       ETAGAU(2)=UNTIER
 664 :       DZEGAU(1)=-X577
 665 :       DZEGAU(2)= X577
 666 :       POIGAU(1)=UNDEMI
 667 :       POIGAU(2)=UNDEMI
 668 :       GOTO 666
 669 :  166  IF(NBG.NE.6) GO TO 169
 670 : C
 671 : C     6 POIGAUNTS D INTEGRATION
 672 : C
 673 :       QSIGAU(1)=UNSIX
 674 :       ETAGAU(1)=UNSIX
 675 :       QSIGAU(2)=DEUTIE
 676 :       ETAGAU(2)=UNSIX
 677 :       QSIGAU(3)=UNSIX
 678 :       ETAGAU(3)=DEUTIE
 679 :       QSIGAU(4)=UNSIX
 680 :       ETAGAU(4)=UNSIX
 681 :       QSIGAU(5)=DEUTIE
 682 :       ETAGAU(5)=UNSIX
 683 :       QSIGAU(6)=UNSIX
 684 :       ETAGAU(6)=DEUTIE
 685 :       DO 161 IA=1,3
 686 :          DZEGAU(IA  )=-X577
 687 :          DZEGAU(IA+3)= X577
 688 :  161  CONTINUE
 689 :       DO 163 IA=1,6
 690 :          POIGAU(IA)=UNSIX
 691 :  163  CONTINUE
 692 :       GOTO 666
 693 : C
 694 : C     9 POIGAUNTS D INTEGRATION
 695 : C
 696 :  169  IF (NBG.NE.9 ) GOTO 1612
 697 :       DO 167 IA=1,7,3
 698 :          QSIGAU(IA  )=UNDEMI
 699 :          ETAGAU(IA+1)=UNDEMI
 700 :          QSIGAU(IA+2)=UNDEMI
 701 :          ETAGAU(IA+2)=UNDEMI
 702 :  167  CONTINUE
 703 :       DO 168 IA=1,3
 704 :          DZEGAU(IA  )=-X774
 705 :          POIGAU(IA  )=P555*UNSIX
 706 :          POIGAU(IA+3)=P888*UNSIX
 707 :          POIGAU(IA+6)=P555*UNSIX
 708 :          DZEGAU(IA+6)= X774
 709 :  168  CONTINUE
 710 :       GOTO 666
 711 : C
 712 : C     12 POIGAUNTS D INTEGRATION
 713 : C
 714 :  1612 IF (NBG.NE.12 ) GOTO 1621
 715 :       DO 171 IA=2,10,4
 716 :          QSIGAU(IA)=UNCINQ
 717 :          ETAGAU(IA)=UNCINQ
 718 :  171  CONTINUE
 719 :       DO 172 IA=3,11,4
 720 :          QSIGAU(IA  )=UNCINQ*TROIS
 721 :          ETAGAU(IA  )=UNCINQ
 722 :          QSIGAU(IA+1)=UNCINQ
 723 :          ETAGAU(IA+1)=UNCINQ*TROIS
 724 :  172  CONTINUE
 725 :       DO 173 IA=1,9,4
 726 :          QSIGAU(IA)=UNTIER
 727 :          ETAGAU(IA)=UNTIER
 728 :  173  CONTINUE
 729 :       DO 174 IA=1,4
 730 :          DZEGAU(IA  )=-X774
 731 :          DZEGAU(IA+8)= X774
 732 :  174  CONTINUE
 733 :       DO 175 IA=2,4
 734 :          POIGAU(IA  )=P260*P555
 735 :          POIGAU(IA+4)=P260*P888
 736 :          POIGAU(IA+8)=P260*P555
 737 :  175  CONTINUE
 738 :       POIGAU(1)=P281*P555
 739 :       POIGAU(5)=P281*P888
 740 :       POIGAU(9)=P281*P555
 741 :       GO TO 666
 742 :  1621 IF(NBG.NE.21) GO TO 66
 743 :       QSIGAU(1)=X101
 744 :       QSIGAU(2)=X797
 745 :       QSIGAU(3)=X101
 746 :       QSIGAU(4)=X470
 747 :       QSIGAU(5)=X470
 748 :       QSIGAU(6)=X059
 749 :       QSIGAU(7)=UNTIER
 750 :       ETAGAU(1)=QSIGAU(1)
 751 :       ETAGAU(2)=QSIGAU(1)
 752 :       ETAGAU(3)=QSIGAU(2)
 753 :       ETAGAU(4)=QSIGAU(6)
 754 :       ETAGAU(5)=QSIGAU(4)
 755 :       ETAGAU(6)=QSIGAU(4)
 756 :       ETAGAU(7)=QSIGAU(7)
 757 :       POIGAU(1)=P125*UNDEMI
 758 :       POIGAU(2)=P125*UNDEMI
 759 :       POIGAU(3)=P125*UNDEMI
 760 :       POIGAU(4)=P132*UNDEMI
 761 :       POIGAU(5)=P132*UNDEMI
 762 :       POIGAU(6)=P132*UNDEMI
 763 :       POIGAU(7)=.1125D0
 764 :       do 176 iu=1,7
 765 :       dzegau(iu+14)=X774
 766 :       dzegau(iu+7)=0.d0
 767 :   176 dzegau(iu)=-X774
 768 :        do 177 iu=1,7
 769 :        poigau(iu+7)= poigau(iu)*P888
 770 :        poigau(iu)=poigau(iu)*p555
 771 :        poigau (iu+14)=poigau(iu)
 772 :   177  continue
 773 :        do 178 iu=1,7
 774 :        qsigau(iu+7)=qsigau(iu)
 775 :        qsigau(iu+14)=qsigau(iu)
 776 :        etagau(iu+7)= etagau(iu)
 777 :        etagau(iu+14)=etagau(iu) 
 778 :   178  continue
 779 :       go to 666      
 780 : C
 781 : C     ELEMENT LIAISON 3
 782 : C
 783 :  18   CONTINUE
 784 : C
 785 : C     1  POIGAUNTS D INTEGRATION
 786 : C
 787 :       IF (NBG.NE.1) GOTO 183
 788 :       QSIGAU(1)=UNTIER
 789 :       ETAGAU(1)=UNTIER
 790 :       POIGAU(1)=UNDEMI
 791 :       GOTO 666
 792 : C
 793 : C     3 POIGAUNTS D INTEGRATION   ZIENK P201
 794 : C
 795 :  183  IF(NBG.NE.3) GOTO 184
 796 :       QSIGAU(1)=UNDEMI
 797 :       ETAGAU(2)=UNDEMI
 798 :       QSIGAU(3)=UNDEMI
 799 :       ETAGAU(3)=UNDEMI
 800 :       POIGAU(1)=UNSIX
 801 :       POIGAU(2)=UNSIX
 802 :       POIGAU(3)=UNSIX
 803 :       GOTO 666
 804 : C
 805 : C     4 POIGAUNTS D INTEGRATION    ZIENK P201
 806 : C
 807 :  184  IF (NBG.NE.4) GOTO 187
 808 :       QSIGAU(1)=UNTIER
 809 :       QSIGAU(2)=UNCINQ
 810 :       QSIGAU(3)=UNCINQ*TROIS
 811 :       QSIGAU(4)=UNCINQ
 812 :       ETAGAU(1)=UNTIER
 813 :       ETAGAU(2)=UNCINQ
 814 :       ETAGAU(3)=UNCINQ
 815 :       ETAGAU(4)=UNCINQ*TROIS
 816 :       POIGAU(1)=-27.D0/96.D0
 817 :       POIGAU(2)= 25.D0/96.D0
 818 :       POIGAU(3)=POIGAU(2)
 819 :       POIGAU(4)=POIGAU(2)
 820 :       GOTO 666
 821 : C
 822 : C     7 POIGAUNTS D INTEGRATION     BATHE P280
 823 : C
 824 :  187  IF(NBG.NE.7) GOTO 66
 825 :       QSIGAU(1)=X101
 826 :       QSIGAU(2)=X797
 827 :       QSIGAU(3)=X101
 828 :       QSIGAU(4)=X470
 829 :       QSIGAU(5)=X470
 830 :       QSIGAU(6)=X059
 831 :       QSIGAU(7)=UNTIER
 832 :       ETAGAU(1)=QSIGAU(1)
 833 :       ETAGAU(2)=QSIGAU(1)
 834 :       ETAGAU(3)=QSIGAU(2)
 835 :       ETAGAU(4)=QSIGAU(6)
 836 :       ETAGAU(5)=QSIGAU(4)
 837 :       ETAGAU(6)=QSIGAU(4)
 838 :       ETAGAU(7)=QSIGAU(7)
 839 :       POIGAU(1)=P125*UNDEMI
 840 :       POIGAU(2)=P125*UNDEMI
 841 :       POIGAU(3)=P125*UNDEMI
 842 :       POIGAU(4)=P132*UNDEMI
 843 :       POIGAU(5)=P132*UNDEMI
 844 :       POIGAU(6)=P132*UNDEMI
 845 :       POIGAU(7)=.1125D0
 846 :       GOTO 666
 847 : C
 848 : C     ELEMENT LIAISON 4
 849 : C
 850 :  19   IF(NBG.NE.1) GOTO 194
 851 : C
 852 : C     UN POINT D INTEGRATION
 853 : C
 854 :       POIGAU(1)=QUATRE
 855 :       GOTO 666
 856 :  194  IF(NBG.NE.4) GOTO 199
 857 : C
 858 : C     4 POIGAUNTS D INTEGRATION
 859 : C
 860 :       QSIGAU(1)=-X577
 861 :       QSIGAU(2)= X577
 862 :       QSIGAU(3)= X577
 863 :       QSIGAU(4)=-X577
 864 :       ETAGAU(1)=-X577
 865 :       ETAGAU(2)=-X577
 866 :       ETAGAU(3)= X577
 867 :       ETAGAU(4)= X577
 868 :       POIGAU(1)=UN
 869 :       POIGAU(2)=UN
 870 :       POIGAU(3)=UN
 871 :       POIGAU(4)=UN
 872 :       GOTO 666
 873 : C
 874 : C     9 POIGAUNTS D INTEGRATION
 875 : C
 876 :  199  IF (NBG.NE.9 ) GOTO 1916
 877 :       QSIGAU(1)=-X774
 878 :       QSIGAU(3)= X774
 879 :       QSIGAU(4)=-X774
 880 :       QSIGAU(6)= X774
 881 :       QSIGAU(7)=-X774
 882 :       QSIGAU(9)= X774
 883 :       ETAGAU(1)=-X774
 884 :       ETAGAU(2)=-X774
 885 :       ETAGAU(3)=-X774
 886 :       ETAGAU(7)= X774
 887 :       ETAGAU(8)= X774
 888 :       ETAGAU(9)= X774
 889 :       POIGAU(1)=P555*P555
 890 :       POIGAU(3)=POIGAU(1)
 891 :       POIGAU(7)=POIGAU(1)
 892 :       POIGAU(9)=POIGAU(1)
 893 :       POIGAU(2)=P888*P555
 894 :       POIGAU(4)=POIGAU(2)
 895 :       POIGAU(6)=POIGAU(2)
 896 :       POIGAU(8)=POIGAU(2)
 897 :       POIGAU(5)=P888*P888
 898 :       GOTO 666
 899 :  1916 IF(NBG.NE.16) GOTO 66
 900 : C
 901 : C     CARRE 16 POINTS D INTEGRATION
 902 : C
 903 :       DO 19161 IA=1,13,4
 904 :          QSIGAU(IA   )=-X861
 905 :          QSIGAU(IA+1 )=-X339
 906 :          QSIGAU(IA+2 )= X339
 907 :          QSIGAU(IA+3 )= X861
 908 :          POIGAU(IA   )= P347
 909 :          POIGAU(IA+1 )= P652
 910 :          POIGAU(IA+2 )= P652
 911 :          POIGAU(IA+3 )= P347
 912 : 19161 CONTINUE
 913 :       DO 19162 IA=1,4
 914 :          ETAGAU(IA   )=-X861
 915 :          ETAGAU(IA+4 )=-X339
 916 :          ETAGAU(IA+8 )= X339
 917 :          ETAGAU(IA+12)= X861
 918 :          POIGAU(IA   )= P347*POIGAU(IA   )
 919 :          POIGAU(IA+4 )= P652*POIGAU(IA+4 )
 920 :          POIGAU(IA+8 )= P652*POIGAU(IA+8 )
 921 :          POIGAU(IA+12)= P347*POIGAU(IA+12)
 922 : 19162 CONTINUE
 923 :       GOTO 666
 924 : C
 925 : C     ELEMENT TETRAEDRE   VOLUME=1/6
 926 : C
 927 :  23   IF (NBG.NE.1) GOTO 234
 928 : C
 929 : C     1 POIGAUNT D INTEGRATION
 930 : C
 931 :       QSIGAU(1)=UNQUA
 932 :       ETAGAU(1)=UNQUA
 933 :       DZEGAU(1)=UNQUA
 934 :       POIGAU(1)=UNSIX
 935 :       GOTO 666
 936 : C
 937 : C     4 POIGAUNTS D INTEGRATION
 938 : C
 939 :  234  IF (NBG.NE.4) GOTO 235
 940 :       QSIGAU(1)=X138
 941 :       QSIGAU(2)=X585
 942 :       QSIGAU(3)=X138
 943 :       QSIGAU(4)=X138
 944 :       ETAGAU(1)=X138
 945 :       ETAGAU(2)=X138
 946 :       ETAGAU(3)=X585
 947 :       ETAGAU(4)=X138
 948 :       DZEGAU(1)=X138
 949 :       DZEGAU(2)=X138
 950 :       DZEGAU(3)=X138
 951 :       DZEGAU(4)=X585
 952 :       POIGAU(1)=UN24
 953 :       POIGAU(2)=UN24
 954 :       POIGAU(3)=UN24
 955 :       POIGAU(4)=UN24
 956 :       GOTO 666
 957 :  235  IF(NBG.NE.5) GOTO 66
 958 : C
 959 : C     5 POINTS D INTEGRATION      ZIENKE  P202
 960 : C
 961 :       QSIGAU(1)=UNQUA
 962 :       QSIGAU(2)=UNSIX
 963 :       QSIGAU(3)=UNSIX
 964 :       QSIGAU(4)=UNSIX
 965 :       QSIGAU(5)=UNDEMI
 966 :       ETAGAU(1)=UNQUA
 967 :       ETAGAU(2)=UNSIX
 968 :       ETAGAU(3)=UNSIX
 969 :       ETAGAU(4)=UNDEMI
 970 :       ETAGAU(5)=UNSIX
 971 :       DZEGAU(1)=UNQUA
 972 :       DZEGAU(2)=UNSIX
 973 :       DZEGAU(3)=UNDEMI
 974 :       DZEGAU(4)=UNSIX
 975 :       DZEGAU(5)=UNSIX
 976 :       POIGAU(1)=-.80D0*UNSIX
 977 :       POIGAU(2)= .45D0*UNSIX
 978 :       POIGAU(3)= .45D0*UNSIX
 979 :       POIGAU(4)= .45D0*UNSIX
 980 :       POIGAU(5)= .45D0*UNSIX
 981 :       GOTO 666
 982 : C
 983 : C     ELEMENT PYRAMIDE     VOLUME=2/3
 984 : C
 985 :  25   IF(NBG.NE.1) GOTO 255
 986 : C
 987 : C     UN POINT D INTEGRATION
 988 : C
 989 :       DZEGAU(1)=UNQUA
 990 :       POIGAU(1)=DEUTIE
 991 :       GOTO 666
 992 : C
 993 : C     5 POIGAUNTS D INTEFRATION
 994 : C
 995 :  255  IF(NBG.NE.5) GOTO 256
 996 :       AUX= 0.5D0
 997 :       POI1=0.1333333333333333D0
 998 :       POI2= 0.1333333333333333D0
 999 :       H1  = 0.1531754163448146D0
1000 :       H2  = 0.6372983346207416D0
1001 :       QSIGAU(1)= AUX
1002 :       QSIGAU(2)= XZERO
1003 :       QSIGAU(3)=-AUX
1004 :       QSIGAU(4)= XZERO
1005 :       QSIGAU(5)= XZERO
1006 :       ETAGAU(1)= XZERO
1007 :       ETAGAU(2)= AUX
1008 :       ETAGAU(3)= XZERO
1009 :       ETAGAU(4)=-AUX
1010 :       ETAGAU(5)= XZERO
1011 :       DO 251 IA=1,4
1012 :          DZEGAU(IA)= H1
1013 :          POIGAU(IA)= POI1
1014 :  251  CONTINUE
1015 :       DZEGAU(5)= H2
1016 :       POIGAU(5)= POI2
1017 :       GOTO 666
1018 : C
1019 : C     6 POIGAUNTS D INTEGRATION
1020 : C
1021 :  256  IF (NBG.NE.6) GOTO 26
1022 :       AUX =.5702963741068025D0
1023 :       POI1=.1024890634400000D0
1024 :       POI2=.1100000000000000D0
1025 :       POI3=.1467104129066667D0
1026 :       H1  =.1666666666666667D0
1027 :       H2  =.8063183038464675D-1
1028 :       H3  =.6098484849057127D0
1029 :       QSIGAU(1)= AUX
1030 :       QSIGAU(2)= XZERO
1031 :       QSIGAU(3)=-AUX
1032 :       QSIGAU(4)= XZERO
1033 :       QSIGAU(5)= XZERO
1034 :       QSIGAU(6)= XZERO
1035 :       ETAGAU(1)= XZERO
1036 :       ETAGAU(2)= AUX
1037 :       ETAGAU(3)= XZERO
1038 :       ETAGAU(4)=-AUX
1039 :       ETAGAU(5)= XZERO
1040 :       ETAGAU(6)= XZERO
1041 :       DO 2516 IA=1,4
1042 :          DZEGAU(IA)= H1
1043 :          POIGAU(IA)= POI1
1044 :  2516 CONTINUE
1045 :       DZEGAU(5)= H2
1046 :       DZEGAU(6)= H3
1047 :       POIGAU(5)= POI2
1048 :       POIGAU(6)= POI3
1049 :       GO TO 666
1050 : C
1051 : C     27  POIGAUNTS D INTEGRATION
1052 : C
1053 :  26   IF(NBG.NE.27) GO TO 66
1054 :       A1 =.788073483D0
1055 :       B6 =.499369002D0
1056 :       B  =.848418011D0
1057 :       C8 =.478508449D0
1058 :       C  =.652816472D0
1059 :       D12=.032303742D0
1060 :       D  =1.106412899D0
1061 :       DO 261 IA=1,5
1062 :          DZEGAU(IA   )= UNDEMI
1063 :  261  CONTINUE
1064 :       DZEGAU(6    )= UNDEMI*(UN-B)
1065 :       DZEGAU(7    )= UNDEMI*(UN+B)
1066 :       DO 262 IA=8,11
1067 :          DZEGAU(IA   )= UNDEMI*(UN-C)
1068 :          DZEGAU(IA+4 )= UNDEMI*(UN+C)
1069 :          DZEGAU(IA+8 )= UNDEMI*(UN-D)
1070 :          DZEGAU(IA+12)= UNDEMI
1071 :          DZEGAU(IA+16)= UNDEMI*(UN+D)
1072 :  262  CONTINUE
1073 :       QSIGAU(1 )= XZERO
1074 :       QSIGAU(2 )= UNDEMI*B*(UN-DZEGAU(2))
1075 :       QSIGAU(3 )=-UNDEMI*B*(UN-DZEGAU(3))
1076 :       QSIGAU(4 )=-UNDEMI*B*(UN-DZEGAU(4))
1077 :       QSIGAU(5 )= UNDEMI*B*(UN-DZEGAU(5))
1078 :       QSIGAU(6 )= XZERO
1079 :       QSIGAU(7 )= XZERO
1080 :       QSIGAU(8 )= C*(UN-DZEGAU(8))
1081 :       QSIGAU(9 )= XZERO
1082 :       QSIGAU(10)=-C*(UN-DZEGAU(10))
1083 :       QSIGAU(11)= XZERO
1084 :       QSIGAU(12)= C*(UN-DZEGAU(12))
1085 :       QSIGAU(13)= XZERO
1086 :       QSIGAU(14)=-C*(UN-DZEGAU(14))
1087 :       QSIGAU(15)= XZERO
1088 :       QSIGAU(16)= UNDEMI*D*(UN-DZEGAU(16))
1089 :       QSIGAU(17)=-UNDEMI*D*(UN-DZEGAU(17))
1090 :       QSIGAU(18)=-UNDEMI*D*(UN-DZEGAU(18))
1091 :       QSIGAU(19)= UNDEMI*D*(UN-DZEGAU(19))
1092 :       QSIGAU(20)= D*(UN-DZEGAU(20))
1093 :       QSIGAU(21)= XZERO
1094 :       QSIGAU(22)=-D*(UN-DZEGAU(22))
1095 :       QSIGAU(23)= XZERO
1096 :       QSIGAU(24)= UNDEMI*D*(UN-DZEGAU(24))
1097 :       QSIGAU(25)=-UNDEMI*D*(UN-DZEGAU(25))
1098 :       QSIGAU(26)=-UNDEMI*D*(UN-DZEGAU(26))
1099 :       QSIGAU(27)= UNDEMI*D*(UN-DZEGAU(27))
1100 :       ETAGAU(1 )= XZERO
1101 :       ETAGAU(2 )= QSIGAU(2)
1102 :       ETAGAU(3 )=-QSIGAU(3)
1103 :       ETAGAU(4 )= QSIGAU(4)
1104 :       ETAGAU(5 )=-QSIGAU(5)
1105 :       ETAGAU(6 )= QSIGAU(6)
1106 :       ETAGAU(7 )= QSIGAU(7)
1107 :       ETAGAU(8 )= XZERO
1108 :       ETAGAU(9 )= C*(UN-DZEGAU(9))
1109 :       ETAGAU(10)= XZERO
1110 :       ETAGAU(11)=-C*(UN-DZEGAU(11))
1111 :       ETAGAU(12)= XZERO
1112 :       ETAGAU(13)= C*(UN-DZEGAU(13))
1113 :       ETAGAU(14)= XZERO
1114 :       ETAGAU(15)=-C*(UN-DZEGAU(15))
1115 :       ETAGAU(16)= QSIGAU(16)
1116 :       ETAGAU(17)=-QSIGAU(17)
1117 :       ETAGAU(18)= QSIGAU(18)
1118 :       ETAGAU(19)=-QSIGAU(19)
1119 :       ETAGAU(20)= XZERO
1120 :       ETAGAU(21)= D*(UN-DZEGAU(21))
1121 :       ETAGAU(22)= XZERO
1122 :       ETAGAU(23)=-D*(UN-DZEGAU(23))
1123 :       ETAGAU(24)= QSIGAU(24)
1124 :       ETAGAU(25)=-QSIGAU(25)
1125 :       ETAGAU(26)= QSIGAU(26)
1126 :       ETAGAU(27)=-QSIGAU(27)
1127 : C
1128 :       POIGAU(1)=A1
1129 :       DO 263 IA=2,7
1130 :          POIGAU(IA)=B6
1131 :  263  CONTINUE
1132 :       DO 264 IA=8,15
1133 :          POIGAU(IA)=C8
1134 :  264  CONTINUE
1135 :       DO 265 IA=16,27
1136 :          POIGAU(IA)=D12
1137 :  265  CONTINUE
1138 :       DO 266 IA=1,27
1139 :          POIGAU(IA)=POIGAU(IA)*UNQUA*(UN-DZEGAU(IA))*(UN-DZEGAU(IA))
1140 :  266  CONTINUE
1141 :       GOTO 666
1142 : C
1143 :  30   CONTINUE
1144 : C
1145 : C     ELEMENT POLYGONE A NNO COTES
1146 : C
1147 :       POIDS = COS(XPI/NNO) * SIN(XPI/NNO)
1148 : C
1149 :       IF ( NBG .EQ.1) THEN
1150 : C
1151 :          QSIGAU(1) = XZERO
1152 :          ETAGAU(1) = XZERO
1153 :          POIGAU(1) = POIDS * NNO
1154 : C
1155 :       ELSE
1156 : C
1157 :          SCOS2 = XZERO
1158 :          SCOS4 = XZERO
1159 :          SQSI2 = XZERO
1160 :          SQSI4 = XZERO
1161 :          TGPSN = TAN(XPI/NNO)
1162 :          TG2PSN = TGPSN * TGPSN
1163 : C
1164 :          DO 300, IA=1, NNO
1165 : C
1166 :             ALPHA = (2*IA - 1) * XPI / NNO
1167 :             BETA = 2 * (IA - 1) * XPI / NNO
1168 :             CIA = COS(ALPHA)
1169 :             CIA2 = CIA*CIA
1170 :             CIB = COS(BETA)
1171 :             CIB2 = CIB*CIB
1172 :             SIB = SIN(BETA)
1173 :             SIB2 = SIB*SIB
1174 : C
1175 : C         Calcul de la somme des abscisses carré et puissance 4
1176 : C         des points de GAUSS
1177 : C
1178 :             SCOS2 = SCOS2+CIA2
1179 :             SCOS4 = SCOS4+CIA2*CIA2
1180 : C
1181 : C         Calcul de la somme des integrales sur chaque triangle
1182 : C         de QSI ** 2
1183 : C
1184 :             SQSI2 = SQSI2 + 3 * CIB2 + TG2PSN * SIB2
1185 : C
1186 : C         Calcul de la somme des integrales sur chaque triangle
1187 : C         de QSI ** 4
1188 : C
1189 :             SQSI4 = SQSI4 + CIB2*CIB2 + 2*TG2PSN*CIB2*SIB2 +
1190 :      &           TG2PSN*TG2PSN*SIB2*SIB2/5
1191 : C
1192 :  300     CONTINUE
1193 : C
1194 :          SOM2 = SQSI2 * COS (XPI/NNO) ** 4 * TGPSN / 6
1195 :          SOM4 = SQSI4 * COS (XPI/NNO) ** 6 * TGPSN / 3
1196 : C
1197 :          IF (NBG .EQ. NNO) THEN
1198 : C
1199 : C         Recherche du poids des points de GAUSS N points
1200 : C
1201 :             PE = POIDS
1202 : C
1203 : C         Distance relative des points de GAUSS au centre du polygome
1204 : C
1205 :             DIST = SQRT ( SOM2/(POIDS*SCOS2))
1206 : C
1207 :             IF (NNO.EQ.5) DIST=DIST * 1.0080508208396880D0
1208 :             IF (NNO.EQ.6) DIST=DIST * 1.0352424358375543D0
1209 :             IF (NNO.EQ.7) DIST=DIST * 1.04449199849566D0
1210 :             IF (NNO.EQ.8) DIST=  0.75741767161339812D0
1211 :             IF (NNO.EQ.9) DIST=DIST * 1.13045302559206D0
1212 :             IF (NNO.EQ.10) DIST= DIST * 1.151017710991479D0
1213 :             IF (NNO.EQ.12) DIST= DIST * 1.11993200981186D0
1214 : 
1215 :          ELSEIF (NBG.EQ.NNO+1) THEN
1216 : C
1217 : C         Recherche du poids des points de GAUSS N+1 points
1218 : C
1219 :             PE = SOM2*SOM2*SCOS4/(SOM4*SCOS2*SCOS2)
1220 :             PC = NNO*(POIDS-PE)
1221 : C
1222 : C         Distance relative des points de GAUSS au centre du polynome
1223 : C
1224 :             DIST = SQRT (SOM4*SCOS2/(SOM2*SCOS4))
1225 : C
1226 : C         ABCSISSE ET POIDS DU POINT CENTRAL
1227 : C
1228 :             QSIGAU(NBG) = XZERO
1229 :             ETAGAU(NBG) = XZERO
1230 :             POIGAU(NBG) = PC
1231 : C
1232 :          ELSE
1233 :             GOTO 66
1234 :          ENDIF
1235 : C
1236 :          DO 305, IA = 1, NNO
1237 : C
1238 :             ALPHA = (2*IA - 1) * XPI / NNO
1239 : C
1240 :             QSIGAU(IA) = DIST * COS(ALPHA)
1241 :             ETAGAU(IA) = DIST * SIN(ALPHA)
1242 :             POIGAU(IA) = PE
1243 : C
1244 :  305     CONTINUE
1245 : C
1246 :       ENDIF
1247 :       GOTO 666
1248 : C
1249 :  95   CONTINUE
1250 : C
1251 : C     ELEMENTS DE COQUE INTEGRES
1252 : C
1253 :       IF(MELE.EQ.28.OR.MELE.EQ.93) THEN
1254 :          NNAPPE=NBG/3
1255 :          POIDS=UNSIX
1256 :          DO 7772 IA=1,NNAPPE
1257 :             NP=IA*3-2
1258 :             POIGAU(NP  )=POIDS
1259 :             POIGAU(NP+1)=POIDS
1260 :             POIGAU(NP+2)=POIDS
1261 :             QSIGAU(NP  )= UNDEMI
1262 :             ETAGAU(NP+1)= UNDEMI
1263 :             QSIGAU(NP+2)= UNDEMI
1264 :             ETAGAU(NP+2)= UNDEMI
1265 :             XXXX        = DEUX*((DBLE(IA)-UN)/(DBLE(NNAPPE)-UN))-UN
1266 :             DZEGAU(NP  )=  XXXX
1267 :             DZEGAU(NP+1)=  XXXX
1268 :             DZEGAU(NP+2)=  XXXX
1269 :  7772    CONTINUE
1269 :          CALL SIMPSN(NNAPPE,3,1,POIGAU)
1270 :       ELSE
1271 :          GOTO 66
1272 :       ENDIF
1273 :       GOTO 666
1274 : C
1275 :  96   CONTINUE
1276 : C
1277 : C     ELEMENT TUYO  LONGUEUR = 2
1278 : C
1279 :       IF(NBG.EQ.1) THEN
1280 :          QSIGAU(1)= 0.D0
1281 :          POIGAU(1)= 2.D0
1282 :       ELSE
1283 :          NTETA= NBG/2
1284 :          DO 961 IN=1,NTETA
1285 :             QSIGAU(IN)= -X577
1286 :             QSIGAU(IN+NTETA)= X577
1287 :  961     CONTINUE
1288 : *
1289 :          DTETA=2.D0*XPI/DBLE(NTETA)
1290 :          TETA=0.D0
1291 :          DO 962 IN=1,NTETA
1292 :             ETAGAU(IN)=TETA
1293 :             ETAGAU(IN+NTETA)=TETA
1294 :             POIGAU(IN)=DTETA
1295 :             POIGAU(IN+NTETA)=DTETA
1296 :             TETA=TETA+DTETA
1297 :  962     CONTINUE
1298 :       ENDIF
1299 :       GO TO 666
1300 : *
1301 :  1570 CONTINUE 
1302 : C
1303 : C      ELEMENT HOMOGENE TRH6
1304 : C
1305 :       IF(MELE.NE.157) GOTO 66
1306 :       QSIGAU(1)=X044
1307 :       ETAGAU(1)=X044
1308 :       QSIGAU(2)=UN-(DEUX*X044)
1309 :       ETAGAU(2)=X044
1310 :       QSIGAU(3)=X044
1311 :       ETAGAU(3)=UN-(DEUX*X044)
1312 :       QSIGAU(4)=X009
1313 :       ETAGAU(4)=X009
1314 :       QSIGAU(5)=UN-(DEUX*X009)
1315 :       ETAGAU(5)=X009
1316 :       QSIGAU(6)=X009
1317 :       ETAGAU(6)=UN-(DEUX*X009)
1318 :       POIGAU(1)=X111
1319 :       POIGAU(2)=X111
1320 :       POIGAU(3)=X111
1321 :       POIGAU(4)=X005
1322 :       POIGAU(5)=X005
1323 :       POIGAU(6)=X005
1324 :       GOTO 666
1325 : 
1326 : *
1327 :  666  CONTINUE
1328 :       IF(IRET.EQ.0) SEGSUP MINTE
1329 :       IF(IRET.EQ.1) SEGDES MINTE
1330 :       RETURN
1331 :       END
1332 : 
1333 :  
1334 : 
1335 :  
1336 : 
1337 :  
1338 : 
1339 :  
1340 :  
1341 :  
1342 :  
1343 :  
1344 :  
1345 :  

© Cast3M 2003 - All rights reserved.
Disclaimer