1 : C NORMBL SOURCE CHAT 05/01/13 02:00:18 5004 2 : SUBROUTINE NORMBL ( AAA , FT, ISGN1 , ISGN2 , NSURF, FFF) 3 : C Calcul du gradient pour les differents mecanismes 4 : C 13/06/95 5 : C 6 : IMPLICIT INTEGER(I-N) 7 : IMPLICIT REAL*8(A-H,O-Z) 8 : C 9 : C======================================================================== 10 : C Cette routine calcule le gradient (ou la normale) 11 : C 12 : C ENTREES: 13 : C ------- 14 : C AAA = Vecteurs contraintes egal a SIGT pour les deux surfaces 15 : C ISGN1 = 1 EN TRACTION -1 EN COMPRESSION 16 : C ISGN2 = -1 SI ON ECOULE SUR LA PLUS PETITE CONT. PRIN. 17 : C +1 SI ON ECOULE SUR LA PLUS GRANDE CONT. PRINC. 18 : C FT = Contrainte de reference pour le test de l'apex 19 : C SORTIES: 20 : C ------- 21 : C FFF = Vecteur normal 22 : C 23 : C 24 : C======================================================================== 25 : C 26 : PARAMETER(UNDEMI=.5D0, DEUX =2.D0 , PRECIS=1.D-4) 27 : C 28 : DIMENSION AAA(4) , FFF(4) 29 : C 30 : C======================================================================== 31 : C Calcul de phi 32 : C==================================================================== 33 : PHI = SQRT ((UNDEMI*(AAA(1)-AAA(2)))**2+AAA(4)**2) 34 : IF (PHI.LT.ABS(PRECIS*FT)) THEN 35 : C Cas de l'apex 36 : FFF(4) = 0.D0 37 : IF (NSURF.EQ.2) THEN 38 : FFF(1) = ISGN1*UNDEMI*SQRT(2.D0) 39 : FFF(2) = FFF(1) 40 : ELSE 41 : IF (AAA(1).GE.AAA(2)) THEN 42 : FFF(1) = ISGN1*(ISGN2 + 1.)*UNDEMI 43 : FFF(2) = ISGN1*(-ISGN2 + 1.)*UNDEMI 44 : ELSE 45 : FFF(1) = ISGN1*(-ISGN2 + 1.)*UNDEMI 46 : FFF(2) = ISGN1*(ISGN2 + 1.)*UNDEMI 47 : ENDIF 48 : ENDIF 49 : ELSE 50 : C Cas regulier 51 : FFF(1) = ISGN1*(ISGN2*UNDEMI/PHI*UNDEMI*(AAA(1)-AAA(2)) 52 : & + UNDEMI) 53 : FFF(2) = ISGN1*(ISGN2*UNDEMI/PHI*UNDEMI*(AAA(2)-AAA(1)) 54 : & + UNDEMI) 55 : FFF(4) = ISGN1*ISGN2*AAA(4)/PHI 56 : ENDIF 57 : C======================================================================== 58 : C Fin de la routine 59 : C======================================================================== 60 : RETURN 61 : END 62 : 63 :
© Cast3M 2003 - All rights reserved.
Disclaimer