1 : C NDKT SOURCE CHAT 05/01/13 01:56:26 5004 2 : SUBROUTINE NDKT (IGAU,XEL,EXCENT,SHPTOT,SHP,XGENE,DJAC) 3 : ************************************************************************ 4 : * 5 : * N D K T 6 : * ------- 7 : * 8 : * FONCTION: 9 : * --------- 10 : * 11 : * CALCUL DE LA MATRICE "N" EN UN POINT DE GAUSS DE L'ELEMENT "DKT", 12 : * POUR LE CALCUL DE LA MATRICE-MASSE = SOMME SUR L'ELEMENT DE "NT.N" 13 : * 14 : * FORME DE LA MATRICE "N": 15 : * 16 : * A1 00 E1 F1 G1 00 A2 00 E2 F2 G2 00 A3 00 E3 F3 G3 00 17 : * 00 A1 H1 I1 J1 00 00 A2 H2 I2 J2 00 00 A3 H3 I3 J3 00 18 : * 00 00 B1 C1 D1 00 00 00 B2 C2 D2 00 00 00 B3 C3 D3 00 19 : * 20 : * LES TERMES "E" A "J" SONT NON NULS LORSQUE L'ELEMENT EST EXCENTRE. 21 : * 22 : * MODULES UTILISES: 23 : * ----------------- 24 : * 25 : IMPLICIT INTEGER(I-N) 26 : -INC CCREEL 27 : * 28 : * PARAMETRES: (E)=ENTREE (S)=SORTIE (+ = CONTENU DANS UN COMMUN) 29 : * ----------- 30 : * 31 : * IGAU (E) NUMERO DU POINT DE GAUSS. 32 : * XEL (E) COORDONNEES LOCALES DES NOEUDS DE L'ELEMENT 33 : * (1 NOEUD PAR COLONNE). 34 : * EXCENT (E) VALEUR D'EXCENTREMENT DE L'ELEMENT. 35 : * SHPTOT (E) FONCTIONS DE FORMES ET DERIVEES (DANS L'ORDRE USUEL). 36 : * SHP E/S TABLEAU DE TRAVAIL. 37 : * XGENE (S) MATRICE "N". 38 : * DJAC (S) JACOBIEN. 39 : * 40 : INTEGER IGAU 41 : REAL*8 EXCENT,DJAC 42 : REAL*8 XEL(3,3),SHPTOT(6,3,*),SHP(6,3),XGENE(3,18) 43 : * 44 : * CONSTANTES: 45 : * ----------- 46 : * 47 : * XX, YY = COORDONNEES DANS LE TRIANGLE DE REFERENCE DES POINTS DE 48 : * GAUSS. 49 : * 50 : PARAMETER (NBNO = 3) 51 : REAL*8 XX(3),YY(3) 52 : * 53 : * VARIABLES: 54 : * ---------- 55 : * 56 : REAL*8 BB(18) 57 : * 58 : * AUTEUR, DATE DE CREATION: 59 : * ------------------------- 60 : * 61 : * PASCAL MANIGOT 15 JUIN 1987 62 : * 63 : * LANGAGE: 64 : * -------- 65 : * 66 : * FORTRAN77 + EXTENSION: DECLARATION "REAL*8". 67 : * 68 : ************************************************************************ 69 : * 70 : DATA XX/.5D0,.0D0,.5D0/ 71 : DATA YY/.0D0,.5D0,.5D0/ 72 : * 72 : CALL ZERO(XGENE,3,18) 73 : * 74 : DO 127 NPOI=1,NBNO 75 : SHP(1,NPOI)=SHPTOT(1,NPOI,IGAU) 76 : SHP(2,NPOI)=SHPTOT(2,NPOI,IGAU) 77 : 127 SHP(3,NPOI)=SHPTOT(3,NPOI,IGAU) 77 : CALL JACOBI(XEL,SHP,2,NBNO,DJAC) 78 : * RQ: A CE NIVEAU, SHP(2,*) ET SHP(3,*) CONTIENNENT LES DERIVEES 79 : * DANS L'ESPACE GEOMETRIQUE. 80 : K=1 81 : DO 227 NPOI=1,NBNO 82 : XGENE(1,K )=SHP(1,NPOI) 83 : XGENE(2,K+1)=SHP(1,NPOI) 84 : 227 K=K+6 84 : CALL MFDKT (XX(IGAU),YY(IGAU),XEL,BB) 85 : KK=3 86 : IA=1 87 : DO 327 NPOI=1,NBNO 88 : XGENE(3,KK )=BB(IA ) 89 : XGENE(3,KK+1)=BB(IA+1) 90 : XGENE(3,KK+2)=BB(IA+2) 91 : KK=KK+6 92 : IA=IA+3 93 : 327 CONTINUE 94 : * 95 : IF (ABS(EXCENT) .GT. XPETIT) THEN 95 : CALL MFDKT2 (XX(IGAU),YY(IGAU),XEL,BB) 96 : KK=3 97 : IA=1 98 : * 99 : * CORRECTION P. MANIGOT : CHANGEMENT DE SIGNE DES EXCENTREMENTS 100 : * 101 : DO 427 NPOI=1,NBNO 102 : XGENE(1,KK )= EXCENT*BB(IA) 103 : XGENE(1,KK+1)= EXCENT*BB(IA+1) 104 : XGENE(1,KK+2)= EXCENT*BB(IA+2) 105 : XGENE(2,KK )= EXCENT*BB(IA+ 9) 106 : XGENE(2,KK+1)= EXCENT*BB(IA+10) 107 : XGENE(2,KK+2)= EXCENT*BB(IA+11) 108 : KK=KK+6 109 : IA=IA+3 110 : 427 CONTINUE 111 : END IF 112 : * 113 : END 114 : 115 : 116 :
© Cast3M 2003 - All rights reserved.
Disclaimer