1 : C CQ3GRA SOURCE CHAT 05/01/12 22:26:51 5004 2 : SUBROUTINE CQ3GRA(XXE,UUE,GRADI, 3 : 1 UE,XX,YY,P,XE,YE,ZE,DT,DF,SK,T,Q,SD,CM,TM) 4 : C 5 : C |====================================================================| 6 : C | | 7 : C | ELEMENT COQ3 CALCUL DES GRADIANS 8 : C | | 9 : C | ===== ENTREE | 10 : C | XXE(3,3) COORDONEES DES 3 NOEUDS DE L ELEMENT | 11 : C | RANGES X(1,2)=COORDONNEE X DU NOEUD 2 | 12 : C | X(2,2)=COORDONNEE Y DU NOEUD 2 | 13 : C | X(3,2)=COORDONNEE Z DU NOEUD 2 | 14 : C | UUE(18) VECTEUR DEPLACEMENT DE L ELEMENT | 15 : C | | 16 : C | ===== SORTIE | 17 : C | GRADI(9):GRADIAN AUX CENTRE DE GRAVITE | 18 : C | RANGEE 1-9 | 19 : C | UXDX UXDY UXDZ UYDX UYDY UYDZ UZDX UZDY UZDZ | 20 : C | MAIS UXDZ=-UZDX | 21 : C | UYDZ=-UZDY | 22 : C | CODE SUO X.Z. | 23 : C |====================================================================| 24 : IMPLICIT INTEGER(I-N) 25 : IMPLICIT REAL*8(A-H,O-Z) 26 : DIMENSION GRADI(9) 27 : DIMENSION XXE(3,3),UUE(18) 28 : DIMENSION UE(18),XX(3),YY(3),P(3,3),XE(3),YE(3),ZE(3) 29 : DIMENSION DT(6),DF(9),SK(4,6),T(4,2),Q(2,9) 30 : DIMENSION CM(4),TM(4),SD(2) 31 : C 32 : C 33 : DATA S1SUR9/0.111111111111111D0/,S2SUR9/0.222222222222222D0/ 34 : DATA S4SUR3/1.333333333333333D0/,S1SUR3/0.333333333333333D0/ 35 : DATA XZERO/0.D0/ 36 : C 37 : C 38 : DO 2 IP=1,18 39 : 2 UE(IP)=UUE(IP) 40 : DO 4 IP=1,3 41 : XE(IP)=XXE(1,IP) 42 : YE(IP)=XXE(2,IP) 43 : ZE(IP)=XXE(3,IP) 44 : 4 CONTINUE 44 : CALL PASSA(XE,YE,ZE,P,X13,X23,Y13,Y23) 45 : DO 10 IP=1,6 46 : IP1=3*(IP-1) 47 : DO 5 IQ=1,3 48 : 5 XX(IQ)=UE(IQ+IP1) 48 : CALL MULMAT(YY,P,XX,3,1,3) 49 : DO 7 IQ=1,3 50 : 7 UE(IQ+IP1)=YY(IQ) 51 : 10 CONTINUE 52 : DO 8 IP=1,3 53 : IP1=IP-1 54 : IP2=2*IP1 55 : IP3=3*IP1 56 : IP6=6*IP1 57 : DO 9 IQ=1,2 58 : 9 DT(IQ+IP2)=UE(IQ+IP6) 59 : DO 11 IQ=3,5 60 : IQ2=IQ-2 61 : 11 DF(IQ2+IP3)=UE(IQ+IP6) 62 : 8 CONTINUE 63 : S=1./(X13*Y23-X23*Y13) 64 : A1=Y13 65 : A2=-X13 66 : A3=Y23 67 : A4=-X23 68 : C ==== 68 : CALL ZERO(Q,2,9) 68 : CALL ZERO(SK,4,6) 68 : CALL ZERO(T,4,2) 69 : C ==== 70 : SK(1,1)=Y23 71 : SK(1,3)=-Y13 72 : SK(1,5)=Y13-Y23 73 : SK(2,1)=-X23 74 : SK(2,3)=X13 75 : SK(2,5)=X23-X13 76 : SK(3,2)=Y23 77 : SK(3,4)=-Y13 78 : SK(3,6)=Y13-Y23 79 : SK(4,2)=-X23 80 : SK(4,4)=X13 81 : SK(4,6)=X23-X13 82 : C===== 83 : T(1,1)=-Y23 84 : T(1,2)= Y13 85 : T(2,1)= X23 86 : T(2,2)=-X13 87 : T(3,1)= Y23 88 : T(3,2)=-Y13 89 : T(4,1)=-X23 90 : T(4,2)= X13 91 : C===== 92 : Q(1,1)= S4SUR3 93 : Q(1,2)= S2SUR9*A3-S1SUR3*A1 94 : Q(1,3)= S2SUR9*A4-S1SUR3*A2 95 : Q(1,4)= XZERO 96 : Q(1,5)= S1SUR9*A1 97 : Q(1,6)= S1SUR9*A2 98 : Q(1,7)=-S4SUR3 99 : Q(1,8)=-S2SUR9*A3-S1SUR9*A1 100 : Q(1,9)=-S2SUR9*A4-S1SUR9*A2 101 : Q(2,1)= XZERO 102 : Q(2,2)= S1SUR9*A3 103 : Q(2,3)= S1SUR9*A4 104 : Q(2,4)= S4SUR3 105 : Q(2,5)=-S1SUR3*A3+S2SUR9*A1 106 : Q(2,6)=-S1SUR3*A4+S2SUR9*A2 107 : Q(2,7)=-S4SUR3 108 : Q(2,8)=-S1SUR9*A3-S2SUR9*A1 109 : Q(2,9)=-S1SUR9*A4-S2SUR9*A2 110 : C==== 110 : CALL MULMAT(CM,SK,DT,4,1,6) 110 : CALL MULMAT(SD,Q,DF,2,1,9) 110 : CALL MULMAT(TM,T,SD,4,1,2) 111 : GRADI(1)= CM(1)*S 112 : GRADI(2)= CM(2)*S 113 : GRADI(4)= CM(3)*S 114 : GRADI(5)= CM(4)*S 115 : GRADI(3)= TM(1)*S 116 : GRADI(6)= TM(2)*S 117 : GRADI(7)= TM(3)*S 118 : GRADI(8)= TM(4)*S 119 : GRADI(9)= XZERO 120 : RETURN 121 : END 122 :
© Cast3M 2003 - All rights reserved.
Disclaimer