1 : C DOHFIS1 SOURCE CHAT 05/01/12 22:53:32 5004
2 : SUBROUTINE DOHFIS1(VALMAT,VALCAR,MATE,IFOU,LHOOK,DDHOOK,IRET)
3 : C
4 : C=======================================================================
5 : C
6 : C MATRICE DE HOOK DU TUYAU FISSURE
7 : C
8 : C ENTREES
9 : C VALMAT() = materiau dans un tableau de travail
10 : C VALCAR() = caracteristiques geom. dans un tableau de travail
11 : C MATE = Nom du materiau
12 : C IFOU = num{ro d'harmonique de fourier: IFOUR de CCOPTIO
13 : C LHOOK = taille de la matrice de hooke
14 : C
15 : C SORTIES
16 : C DDHOOK(LHOOK,LHOOK) = matrice de hooke
17 : C IRET = 1 si option existante 0 SINON
18 : C
19 : C Passage en nouveau CHAMELEM par I.Monnier le 4 05 90
20 : C=======================================================================
21 : C
22 : IMPLICIT INTEGER(I-N)
23 : IMPLICIT REAL*8(A-H,O-Z)
24 : C Include contenant quelques constantes dont XPI :
25 : -INC CCREEL
26 : PARAMETER(UNDEMI=.5D0)
27 : PARAMETER(UN=1.D0,DEUX=2.D0)
28 : PARAMETER(D6=1.D06)
29 : CHARACTER*8 MATE
30 : C
31 : DIMENSION VALMAT(*),VALCAR(*),DDHOOK(LHOOK,*)
32 : C
33 : IRET=1
33 : CALL ZERO(DDHOOK,LHOOK,LHOOK)
34 : C
35 : C MATERIAU ISOTROPE
36 : C
37 : IF(MATE.EQ.'ISOTROPE') THEN
38 : C
39 : C TRIDIMENSIONNEL
40 : C
41 : IF(IFOU.EQ.2) THEN
42 : YOU=VALMAT(1)
43 : XNU=VALMAT(2)
44 : CISA = YOU /(DEUX *(UN + XNU))
45 : RAYO=VALCAR(1)
46 : EPAI=VALCAR(2)
47 : TETA1=VALCAR(9)*UNDEMI
48 :
49 : C CONVERSION DE TETA1 EN RADIAN
50 : TETA = (TETA1 * XPI)/180.D0
51 : TESPI = TETA/XPI
52 : C ON MET DANS 'RAYMO' LE RAYON MOYEN DU TUYAU.
53 : RAYMO =RAYO - (EPAI/DEUX)
54 : C CALCUL DE A COEFIICIENT ZAHOR
55 : RSURT=RAYMO / EPAI
56 : IF(RSURT.LE.10.D0.AND.RSURT.GE.4.9D0) THEN
57 : AXX = ( .125D0*RSURT - .25D0 ) **.25D0
58 : ELSE IF(RSURT.GT.10.D0.AND.RSURT.LE.35.D0) THEN
59 : AXX = ( .4D0*RSURT - 3.D0 ) **.25D0
60 : ELSE
61 : KERRE=3
62 : ENDIF
63 : C
64 : C INITIALISATION DES TERMES DE PENALISATION
65 : C
66 : PPFX = DEUX * XPI * EPAI * YOU * RAYMO * D6
67 : PPFY = DEUX * XPI * EPAI * CISA * RAYMO * D6
68 : PPFZ = PPFY
69 : PPMX = DEUX * XPI * EPAI * CISA * (RAYMO**2) * D6
70 : PPMY = YOU * XPI * EPAI * (RAYMO**2) * D6
71 : PPMZ = PPMY
72 : IF (TETA1.LE.(0.5D0)) THEN
73 : RR11 = PPFX
74 : RR16 = XZERO
75 : RR66 = PPMZ
76 : ELSE
76 : CALL TUFIFP(TESPI,AXX,FP,FM,FMP,FOP,FOM)
77 : DENOM = FP*FM - FMP*FMP
78 : COEF = (YOU * XPI * EPAI)/(DENOM * (TETA**2))
79 : RR11 = COEF * DEUX * FM
80 : RR16 = COEF * RAYMO * FMP
81 : RR66 = COEF * (RAYMO**2) * FP *UNDEMI
82 : ENDIF
83 : C
84 : DDHOOK(1,1)=RR11
85 : DDHOOK(1,6)=RR16
86 : DDHOOK(2,2)=PPFY
87 : DDHOOK(3,3)=PPFZ
88 : DDHOOK(4,4)=PPMX
89 : DDHOOK(5,5)=PPMY
90 : DDHOOK(6,1)=DDHOOK(1,6)
91 : DDHOOK(6,6)=RR66
92 : ELSE
93 : IRET=0
94 : ENDIF
95 : ELSE
96 : IRET=0
97 : ENDIF
98 : RETURN
99 : END
100 :
101 :
102 :
103 :
104 :
© Cast3M 2003 - All rights reserved.
Disclaimer