1 : C ENDO SOURCE AM 09/12/08 21:15:13 6582 2 : SUBROUTINE ENDO(EPSILO,NSTRS,NVARI,CMAT,DEP,SIGF,VAR0, 3 : * VARF,NMAT,IFOUR) 4 : C 5 : C_________________________________________________________________ 6 : C 7 : C CALCUL DE L ENDOMMAGEMENT ET DES CONTRAINTES APPARENTES FINALES 8 : C_________________________________________________________________ 9 : C 10 : C declaration des variables 11 : C 12 : C 13 : IMPLICIT INTEGER(I-N) 14 : IMPLICIT REAL*8(A-H,O-Z) 15 : DIMENSION EPS33(3,3),EPSIPP(3),EPSILT(3),VALP33(3,3) 16 : DIMENSION SIGP(3),SIGPT(3),SIGPC(3) 17 : DIMENSION EPSILO(NSTRS),SIGF(NSTRS),CMAT(NMAT) 18 : DIMENSION DEP(NSTRS,NSTRS),VARF(NVARI),VAR0(NVARI) 19 : C 20 : XZERO=0.D0 21 : UN=1.D0 22 : XPETIT=1.D-12 23 : C 24 : C RECUPERATION DES PARAMETRES MATERIAUX 25 : C ET DES VARIABLES INTERNES 26 : C 27 : YOUN = CMAT(1) 28 : XNU = CMAT(2) 29 : EPSD0= CMAT(5) 30 : ATRA = CMAT(6) 31 : BTRA = CMAT(7) 32 : ACOM = CMAT(8) 33 : BCOM = CMAT(9) 34 : DINI = VAR0(2) 35 : C 36 : C CHANGEMENT EPSILO 37 : C CONTRAINTES PLANES 38 : C 39 : IF (IFOUR.EQ.-2) THEN 40 : temp = EPSILO(3) 41 : EPSILO(3) = EPSILO(4) 42 : EPSILO(4) = temp 43 : ENDIF 44 : C 45 : C REECRITURE DU VECTEUR DEFORMATION SOUS FORME MATRICIELLE 46 : C ENTREE : EPSILO -> VECTEUR DEFORMATION ELASTIQUE 47 : C SORTIE : EPS33 -> MATRICE DEFORMATION ELASTIQUE 48 : C Le 2 correspond au cisaillement 49 : C 49 : CALL ENDOCB (EPSILO,EPS33,2,IFOUR) 50 : C 51 : C DIAGONALISATION DE LA MATRICE DEFORMATION ELASTIQUE EPS33 52 : C SORTIE : EPSIPP(3) - VALEURS PROPRES 53 : C VALP33(3,3) - VECTEURS PROPRES 54 : C 55 : IF (IFOUR.EQ.2) THEN 55 : CALL JACOB3 (EPS33,3,EPSIPP,VALP33) 56 : ELSE 56 : CALL JACOB3 (EPS33,2,EPSIPP,VALP33) 57 : ENDIF 58 : C 59 : C CALCUL DES CONTRAINTES PRINCIPALES 60 : C 61 : DO 10 I=1,3 62 : SIGP(I)= XZERO 63 : DO 10 J=1,3 64 : SIGP(I)=SIGP(I)+DEP(I,J)*EPSIPP(J) 65 : 10 CONTINUE 66 : C 67 : C ON COMPLETE LA DEFORMATION DANS LE CAS DES 68 : C CONTRAINTES PLANES 69 : C 70 : IF (IFOUR.EQ. -2) THEN 71 : EPSIPP(3)= -(EPSIPP(1) + EPSIPP(2))*XNU / (UN-XNU) 72 : ENDIF 73 : C 74 : C CALCUL DE EPSILON TILDA (DEFORMATION POSITIVE) 75 : C 76 : EPSTIL=MAX( XZERO , EPSIPP(1) )**2 + 77 : * MAX( XZERO , EPSIPP(2) )**2 + 78 : * MAX( XZERO , EPSIPP(3) )**2 79 : EPSTIL=SQRT (EPSTIL) 80 : C 81 : C TEST EPSTIL>EPSD0 82 : C 83 : IF ( EPSTIL .GT. EPSD0) THEN 84 : C 85 : C CALCUL DE L ENDOMMAGEMENT 86 : C 87 : C CALCUL DE LA TRACE DES CONTRAINTES 88 : C NEGATIVE (COMPRESSION) : TRSIGC 89 : C POSITIVE (TRACTION) : TRSIGT 90 : C 91 : DO 20 I=1,3 92 : IF (SIGP(I).LT. XZERO) THEN 93 : SIGPC(I) = SIGP(I) 94 : SIGPT(I) = XZERO 95 : ELSE 96 : SIGPT(I) = SIGP(I) 97 : SIGPC(I) = XZERO 98 : ENDIF 99 : 20 CONTINUE 100 : C 101 : TRSIGT = SIGPT(1)+SIGPT(2)+SIGPT(3) 102 : TRSIGC = SIGPC(1)+SIGPC(2)+SIGPC(3) 103 : C 104 : C CALCUL DES DEFORMATIONS DUES AU CONTRAINTES POSITIVES 105 : C 106 : DO 30 I=1,3 107 : EPSILT(I) = (SIGPT(I)*(UN+XNU)-TRSIGT*XNU)/YOUN 108 : 30 CONTINUE 109 : C 110 : C CALCUL DE ALFAT ET ALFAC 111 : C 112 : ALFAT = MAX(XZERO,EPSIPP(1))*EPSILT(1) + 113 : * MAX(XZERO,EPSIPP(2))*EPSILT(2) + 114 : * MAX(XZERO,EPSIPP(3))*EPSILT(3) 115 : ALFAT = ALFAT/(EPSTIL*EPSTIL) 116 : ALFAC = UN - ALFAT 117 : C 118 : C AMELIORATION DE LA REPONSE EN CISAILLEMENT 119 : C POUR BETA > 1 120 : C 121 : BETA = UN 122 : IF (BETA .GT. UN) THEN 123 : IF ( ALFAT .GT. XPETIT ) THEN 124 : ALFAT=ALFAT**BETA 125 : ENDIF 126 : IF ( ALFAC .GT. XPETIT ) THEN 127 : ALFAC=ALFAC**BETA 128 : ENDIF 129 : ENDIF 130 : C 131 : c CALCUL DE DT, DC ET D 132 : C 133 : DT = UN - (EPSD0/EPSTIL)*( 134 : * (UN + ATRA)*EXP(-BTRA*(EPSTIL-EPSD0)) - 135 : * ATRA*EXP(-2.D0*BTRA*(EPSTIL-EPSD0))) 136 : DC = UN - (EPSD0/EPSTIL)*( 137 : * (UN + ACOM)*EXP(-BCOM*(EPSTIL-EPSD0)) - 138 : * ACOM*EXP(-2.D0*BCOM*(EPSTIL-EPSD0))) 139 : D = ALFAT*DT + ALFAC*DC 140 : C 141 : C ON BORNE LA VALEUR DE D a 0.99999 142 : C 143 : D = MIN ( D , UN-1.D-05 ) 144 : C 145 : ELSE 146 : D = XZERO 147 : ENDIF 148 : C 149 : C ON TESTE LA CROISSANCE DE D 150 : C 151 : D=MAX ( D , DINI ) 152 : C 153 : C STOCKAGE DES VARIABLES INTERNES FINALES 154 : C 155 : VARF(2) = D 156 : C 157 : C CONTRAINTES APPARENTES 158 : C 159 : DO 40 I=1,NSTRS 160 : SIGF(I) = SIGF(I)*(1.D0-D) 161 : 40 CONTINUE 162 : C 163 : C CHANGEMENT EPSILO 164 : C CONTRAINTES PLANES 165 : C 166 : IF (IFOUR.EQ.-2) THEN 167 : temp = EPSILO(3) 168 : EPSILO(3) = EPSILO(4) 169 : EPSILO(4) = temp 170 : ENDIF 171 : C 172 : END 173 : 174 :
© Cast3M 2003 - All rights reserved.
Disclaimer