1 : C CHGREP1 SOURCE CHAT 05/01/12 21:56:44 5004 2 : SUBROUTINE CHGREP1(COSA,SINA,DHOOK,LHOOK) 3 : *---------------------------------------------------------------------* 4 : * * 5 : * PASSAGE DU REPERE LOCAL DES ELEMENTS AU REPERE D'ORTHOTROPIE * 6 : * POUR LA MATRICE DE HOOKE DANS LE CAS DE L'ELEMENT DST * 7 : * * 8 : *---------------------------------------------------------------------* 9 : * * 10 : * ENTREES : * 11 : * ________ * 12 : * * 13 : * COSA, SINA = A angle de rotation entre le repère local et le * 14 : * repère d'orthotropie * 15 : * DHOOK = matrice de HOOKE * 16 : * LHOOK = taille de la matrice de HOOKE * 17 : * * 18 : * SORTIES : * 19 : * ________ * 20 : * * 21 : * DHOOK = matrice de HOOKE après le changement de repère * 22 : * * 23 : *---------------------------------------------------------------------* 24 : IMPLICIT INTEGER(I-N) 25 : IMPLICIT REAL*8(A-H,O-Z) 26 : * 27 : DIMENSION DHOOK(LHOOK,LHOOK),RO1HOO(3,3),D3HOO1(3,3) 28 : DIMENSION D3HOO2(3,3),D6HOO1(3,3) 29 : DIMENSION D6HOO2(3,3),RO4HOO(3,3),RO3HOO(3,3) 30 : DIMENSION RO2HOO(2,2),D2HOO1(2,2),D2HOO2(2,2) 31 : PARAMETER (DEUX=2.D0) 32 : * 32 : CALL ZERO(D3HOO1,3,3) 32 : CALL ZERO(D3HOO2,3,3) 32 : CALL ZERO(D6HOO1,3,3) 32 : CALL ZERO(D6HOO2,3,3) 33 : * 34 : DO 1000 I=1,3 35 : DO 1000 J=1,3 36 : D3HOO1(I,J) = DHOOK(I,J) 37 : D6HOO1(I,J) = DHOOK(I+3,J+3) 38 : 1000 CONTINUE 39 : * 40 : 41 : COS2 = COSA**2 42 : SIN2 = SINA**2 43 : SINCOS = SINA * COSA 44 : RO1HOO(1,1) = COS2 45 : RO1HOO(1,2) = SIN2 46 : RO1HOO(1,3) = - SINCOS 47 : RO1HOO(2,1) = SIN2 48 : RO1HOO(2,2) = COS2 49 : RO1HOO(2,3) = SINCOS 50 : RO1HOO(3,1) = DEUX*SINCOS 51 : RO1HOO(3,2) = - DEUX*SINCOS 52 : RO1HOO(3,3) = COS2 - SIN2 53 : C 54 : C PASSAGE DANS LE REPERE DE L'ELEMENT: 54 : CALL PRODT (D3HOO2,D3HOO1,RO1HOO,3,3) 54 : CALL PRODT (D6HOO2,D6HOO1,RO1HOO,3,3) 55 : DO 1150 I=1,3 56 : DO 1150 J=1,3 57 : DHOOK(I,J) = D3HOO2(I,J) 58 : DHOOK(I+3,J+3) = D6HOO2(I,J) 59 : 1150 CONTINUE 60 : * 61 : C 62 : DO 1100 I=1,2 63 : DO 1100 J=1,2 64 : D2HOO1(I,J) = DHOOK(I+6,J+6) 65 : 1100 CONTINUE 66 : * 67 : RO2HOO(1,1) = COSA 68 : RO2HOO(1,2) = -SINA 69 : RO2HOO(2,1) = SINA 70 : RO2HOO(2,2) = COSA 70 : CALL PRODT (D2HOO2,D2HOO1,RO2HOO,2,2) 71 : DO 1200 I=1,2 72 : DO 1200 J=1,2 73 : DHOOK(6+I,6+J) = D2HOO2(I,J) 74 : 1200 CONTINUE 75 : * 76 : RETURN 77 : END 78 : 79 : 80 : 81 : 82 : 83 : 84 : 85 :
© Cast3M 2003 - All rights reserved.
Disclaimer