1 : C DOUO88 SOURCE CHAT 05/01/12 22:54:30 5004
2 : SUBROUTINE DOUO88(VELA,MATE,IFOU,LHOOK,DDHOOK,IRET)
3 : C
4 : C=======================================================================
5 : C
6 : C MATRICE DE HOOKE DES ELEMENTS JOINTS JOI4 ET JOT3 (3D)
7 : C
8 : C ENTREES
9 : C VELA() = materiau dans un tableau de travail
10 : C MATE = Nom du materiau
11 : C IFOU = num{ro d'harmonique de fourier: IFOUR de CCOPTIO
12 : C LHOOK = taille de la matrice de hooke
13 : C
14 : C SORTIES
15 : C DDHOOK(LHOOK,LHOOK) = matrice de hooke
16 : C IRET = 1 si option existante 0 SINON
17 : C
18 : C REMARQUE : ATTENTION : DANS LES CAS CONTRAINTES PLANES,
19 : C DEFORMATIONS PLANES ET AXISYMETRIQUE,
20 : C LA MATRICE DE HOOK N'A PLUS LA DIMENSION
21 : C (3X3), MAIS (2X2). C'EST DONC LES DIMENSIONS DU CAS
22 : C BIDIMENSIONNEL.
23 : C
24 : C CECI EST UN DOUBLE DE DOHO88, MAIS AVEC LA THEORIE DE PARVIS
25 : C POUR LE CALCUL DE LA MATRICE DE TRANSFORMATION. LA MATRICE DE
26 : C ROTATION ROTHOO TRANSFORME UN VECTEUR (EN L'OCCURENCE LE VECTEUR
27 : C DEPLACEMENT) DU REPERE D'ORTHOTROPIE AU REPERE GLOBAL. IL FAUT
28 : C BIEN VOIR QUE CECI EST UNE TRANSFORMATION D'UN VECTEUR EN UN AUTRE
29 : C VECTEUR, ET NON PAS LA TRANSFORMATION D'UN TENSEUR (EX: TENSEUR
30 : C DES CONTRAINTES) EN UN AUTRE TENSEUR. C'EST DONC CETTE SUBROUTINE
31 : C QUI EST LA BONNE, CAR JE RAISONNE EN TERMES DE DEPLACEMENTS, ET
32 : C NON EN TERMES DE CONTRAINTES, DANS LE CAS DES JOINTS (cf. LA
33 : C RELATION FORCES/DEPLACEMENTS ET NON PAS CONTRAINTES/DEFORMATIONS)
34 : C
35 : C=======================================================================
36 : C
37 : IMPLICIT INTEGER(I-N)
38 : IMPLICIT REAL*8(A-H,O-Z)
39 : CHARACTER*8 MATE
40 : C
41 : DIMENSION VELA(*),DDHOOK(LHOOK,*)
42 : REAL*8 D3HOO1(3,3),D3HOO2(3,3),ROTHOO(3,3)
43 : DATA DEUX/2.0D0/
44 : C
45 : IRET=1
45 : CALL ZERO(DDHOOK,LHOOK,LHOOK)
45 : CALL ZERO(D3HOO1,LHOOK,LHOOK)
46 : C
47 : C MATERIAU ISOTROPE
48 : C
49 : IF(MATE.EQ.'ISOTROPE') THEN
50 : C
51 : C CAS TRIDIMENSIONNEL
52 : C
53 : IF(IFOU.EQ.2) THEN
54 : ZK1 =VELA(1)
55 : ZK2 =VELA(1)
56 : ZK3 =VELA(2)
57 : C
58 : DDHOOK(1,1)=ZK1
59 : DDHOOK(2,2)=ZK2
60 : DDHOOK(3,3)=ZK3
61 : C
62 : C CAS CONTRAINTES PLANES DANS LE PLAN (S1,N)
63 : C DEFORMATIONS PLANES DANS LE PLAN (S1,N)
64 : C AXISYMETRIE DANS LE PLAN (S1,N)
65 : C
66 : ELSE IF(IFOU.EQ.-3.OR.IFOU.EQ.-2.OR.IFOU.EQ.-1.OR.IFOU.EQ.0) THEN
67 : ZK1 =VELA(1)
68 : ZK2 =VELA(2)
69 : C
70 : DDHOOK(1,1)=ZK1
71 : DDHOOK(2,2)=ZK2
72 : C
73 : C OPTION NON DEFINIE
74 : C
75 : ELSE
76 : IRET=0
77 : ENDIF
78 : C
79 : C MATERIAU ORTHOTROPE
80 : C
81 : ELSE IF(MATE.EQ.'ORTHOTRO') THEN
82 : C
83 : C CAS TRIDIMENSIONNEL
84 : C
85 : IF(IFOU.EQ.2) THEN
86 : ZK1 =VELA(1)
87 : ZK2 =VELA(2)
88 : ZK3 =VELA(3)
89 : COSA=VELA(4)
90 : SINA=VELA(5)
91 : C
92 : D3HOO1(1,1)=ZK1
93 : D3HOO1(2,2)=ZK2
94 : D3HOO1(3,3)=ZK3
95 : C
96 : ROTHOO(1,1) = COSA
97 : ROTHOO(1,2) = -SINA
98 : ROTHOO(1,3) = 0.0D0
99 : ROTHOO(2,1) = SINA
100 : ROTHOO(2,2) = COSA
101 : ROTHOO(2,3) = 0.0D0
102 : ROTHOO(3,1) = 0.0D0
103 : ROTHOO(3,2) = 0.0D0
104 : ROTHOO(3,3) = 1.0D0
105 : C
106 : C PASSAGE DANS LE REPERE DE L'ELEMENT:
107 : C
107 : CALL PRODT (D3HOO2,D3HOO1,ROTHOO,3,3)
108 : DO 400 J=1,3
109 : DO 400 I=1,3
110 : DDHOOK(I,J) = D3HOO2(I,J)
111 : 400 CONTINUE
112 : C
113 : C OPTION NON DEFINIE
114 : C
115 : ELSE
116 : IRET=0
117 : ENDIF
118 : C
119 : C OPTION NON DEFINIE
120 : C
121 : ELSE
122 : IRET=0
123 : ENDIF
124 : C
125 : RETURN
126 : END
127 :
128 :
129 :
© Cast3M 2003 - All rights reserved.
Disclaimer