1 : C CQ8GRA SOURCE CHAT 05/01/12 22:27:12 5004 2 : SUBROUTINE CQ8GRA(XX,NBNN,NBPGAU,LRE,EPAIST,EXCEN, 3 : 1 DZEGAU,SHPCOQ,SHPELE,XDDL,GRADI,IRR) 4 : C |===================================================================== 5 : C |== ENTREES 6 : C | XX(3,NBNN): TABLEAU DES COORDONNEES DES NOEUDS 7 : C | NBNN : NOMBRE DE NOUDS 8 : C | NBPGAU : NOMBRE DE POINTS DE GAUSS 9 : C | LRE : NOMBRE DE DDL 10 : C | EPAIST : EPAISSEUR DE LA COQUE 11 : C | EXCEN : EXCENTREMENT DE LA COQUE 12 : C | DZEGAU(NBPGAU): COORDONNEES REDUITES DES POIN 13 : C | DE GAUSS DANS L EPAISSEUR 14 : C | SHPCOQ(6,NBNN,NBPGAU) :FONCTIONS DE FORME ET DERIVEES 15 : C | AUX POINTS DE GAUSS 16 : C | SHPELE(6,NBNN,NBNN) :FONCTIONS DE FORME ET DERIVEES AUX NOEUDS 17 : C | XDDL(LRE): DEPLACEMENTS AU NOEUDS 18 : C |== SORTIES 19 : C | GRADI(9*NBPGAU):9 TERMS DE GRADIAN AUX NBPGAU POINTS DE GAUSS 20 : C | IRR : INDICATEUR DE SUCCES ( 1 ) , D ECHEC (0 OU-1) 21 : C | 22 : C | CODE SUO X.Z. 23 : C |===================================================================== 24 : IMPLICIT INTEGER(I-N) 25 : IMPLICIT REAL*8(A-H,O-Z) 26 : PARAMETER(XZER=0.D0) 27 : DIMENSION DZEGAU(*),SHPCOQ(6,NBNN,*),SHPELE(6,NBNN,*) 28 : DIMENSION XX(3,*),GRADI(*),XDDL(*) 29 : DIMENSION TXR(3,3,8),BGR(9,48),TH(8),EXC(8),T(9),XSTRS(9) 30 : C 31 : NGRADI=9*NBPGAU 32 : DO 2 J=1,NGRADI 33 : GRADI(J)=XZER 34 : 2 CONTINUE 35 : C 36 : C --- DETERMINATION DES AXES LOCAUX AU NOEUD I --- 37 : C 37 : CALL CQ8LOC(XX,NBNN,SHPELE,TXR,IRR) 38 : C 39 : DO 70 K=1,NBNN 40 : TH(K)=EPAIST 41 : EXC(K)=EXCEN 42 : 70 CONTINUE 43 : C 44 : C----------------------------------- 45 : C BOUCLE SUR LES POINTS DE GAUSS 46 : C----------------------------------- 47 : C 48 : C 49 : DO 100 IA=1,NBPGAU 50 : E3 = DZEGAU(IA) 51 : C---------------------------------------- 52 : C CALCUL DE LA MATRICE BGR DE GRADIAN 53 : C---------------------------------------- 54 : DO 3 I=1,9 55 : DO 3 J=1,LRE 56 : BGR(I,J)=XZER 57 : 3 CONTINUE 57 : CALL BGRCQ8(IA,XX,NBNN,TH,EXC,BGR,DET,E3,SHPCOQ,TXR,IRR) 58 : C 59 : IF(IRR.NE.1) RETURN 60 : C 61 : C CALCUL DES GRADIENTS POUR LE POINT DE GAUSS 62 : C 62 : CALL BGRDEP(BGR,9,XDDL,LRE,XSTRS) 63 : C 64 : C RANGEMENT DANS GRADI(9*NBPGAU) 65 : C 66 : DO 80 K=1,9 67 : JE=9*(IA-1)+K 68 : GRADI(JE)=XSTRS(K) 69 : 80 CONTINUE 70 : C 71 : 100 CONTINUE 72 : RETURN 73 : END 74 : 75 :
© Cast3M 2003 - All rights reserved.
Disclaimer