1 : C CJFDEC SOURCE KICH 09/09/11 21:16:04 6505 2 : C JFDECO SOURCE AM 00/12/13 21:37:04 4045 3 : SUBROUTINE CJFDEC(WRK52,WRK53,WRK54,WRKK2,NSTRS1,NVARI,ICARA, 4 : $ xecou) 5 : C 6 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 : C % % 8 : C % subroutine integrant le comportement du beton % 9 : C % % 10 : C % - determine les nouvelles valeurs des variables % 11 : C % d'histoire YLIM1 YLIM2 D1 et D2 % 12 : C % % 13 : C % % 14 : C % en fonction du vecteur des deformations % 15 : C % % 16 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 17 : C 18 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 19 : C % % 20 : C % % 21 : C % declaration des variables % 22 : C % % 23 : C % % 24 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 25 : C 26 : C 27 : C 28 : IMPLICIT INTEGER(I-N) 29 : IMPLICIT REAL*8(A-H,O-Z) 30 : -INC CCOPTIO 31 : -INC DECHE 32 : SEGMENT WRKK2 33 : REAL*8 EPSILI(NSTRS) 34 : END SEGMENT 35 : SEGMENT XECOU 36 : * COMMON/XECOU/DTOPTI,TSOM,TCAR,DTT,DT,TREFA,TEMP00 37 : REAL*8 DTOPTI,TSOM,TCAR,DTT,DT,TREFA,TEMP00 38 : ENDSEGMENT 39 : SEGMENT WRK3 40 : REAL*8 EPSILO(NSTRS) 41 : END SEGMENT 42 : * 43 : REAL*8 YLIM1,YLIM2,DOM1,DOM2,Y1,Y2,Z1,Z2 44 : * 45 : REAL*8 EPS33(3,3),XROTA(3,3),EPSA(3),EPSN(3) 46 : REAL*8 SIGNN(3),SIGA(3),SIGMAN(3,3) 47 : INTEGER JSIGN(3) 48 : * 49 : * 50 : LOGICAL CONV 51 : REAL*8 UN,DEUX,ZERO 52 : PARAMETER (ZERO=0.D0) 53 : PARAMETER (UN=1.D0) 54 : PARAMETER (DEUX=2.D0) 55 : * 56 : * -----> RECUPERATION DES VARIABLES INTERNES 57 : * 58 : YLIMA1 = VAR0(1) 59 : YLIMA2 = VAR0(2) 60 : DOM1 = VAR0(3) 61 : DOM2 = VAR0(4) 62 : E = XMAT(1) 63 : * 64 : * 65 : * 66 : Z1=UN/(UN-DOM1) 67 : Z2=UN/(UN-DOM2) 68 : * 69 : * -----> ON DIAGONALISE LES ANCIENNES DEFORMATIONS 70 : * 70 : CALL ENDOCA(EPSILI,EPS33,2) 70 : CALL JACOB3(EPS33,2,EPSA,XROTA) 71 : * PRINT*,'ANCIENNES DEFORMATIONS PPALES',EPSA(1),EPSA(2),EPSA(3) 72 : * 73 : * -----> ON DIAGONALISE LES ANCIENNES CONTRAINTES 74 : * 74 : CALL ENDOCA(SIG0,EPS33,1) 74 : CALL JACOB3(EPS33,2,SIGA,XROTA) 75 : * 76 : * -----> ON CALCULE LES DEFORMATIONS TOTALES 77 : * 78 : SEGINI WRK3 79 : DO ISTRS=1,NSTRS1 80 : EPSILO(ISTRS)=EPSILI(ISTRS)+DEPST(ISTRS) 81 : * print*,'ISTRS',ISTRS,'EPSILO',EPSILO(ISTRS) 82 : END DO 83 : * 84 : * -----> ON LES DIAGONALISE 85 : * 85 : CALL ENDOCA(EPSILO,EPS33,2) 85 : CALL JACOB3(EPS33,2,EPSN,XROTA) 86 : * PRINT*,'DEFORMATIONS PPALES',EPSN(1),EPSN(2),EPSN(3) 87 : * 88 : * -----> ON INITIALISE Y1 ET Y2 89 : * 90 : IF (SIGA(1) .GE. ZERO) THEN 91 : JSIGN(1)=1 92 : ELSE 93 : JSIGN(1)=0 94 : END IF 95 : IF (SIGA(2) .GE. ZERO) THEN 96 : JSIGN(2)=1 97 : ELSE 98 : JSIGN(2)=0 99 : END IF 100 : TRSIG=SIGA(1)+SIGA(2) 101 : IF (TRSIG .GE. ZERO) THEN 102 : FSIG=TRSIG 103 : ELSE IF (TRSIG.GE.-SIGF) THEN 104 : FSIG=TRSIG*(UN+TRSIG/(DEUX*SIGF)) 105 : ELSE 106 : FSIG=-SIGF*TRSIG/DEUX 107 : END IF 108 : YA1=( JSIGN(1)*SIGA(1)*SIGA(1)+JSIGN(2)*SIGA(2)*SIGA(2) ) 109 : & *Z1*Z1/(DEUX*E) 110 : YA2=( (1-JSIGN(1))*SIGA(1)*SIGA(1)+ 111 : & (1-JSIGN(2))*SIGA(2)*SIGA(2) ) 112 : & *Z2*Z2/(DEUX*E) 113 : C 114 : C 115 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 116 : C % % 117 : C % DECOUPAGE DE L'INCREMENT DE DEFORMATION % 118 : C % % 119 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 120 : c 121 : NEPS=1 122 : CONV=.FALSE. 123 : DO WHILE ((.NOT. CONV).AND.(NEPS.LE.100)) 124 : SIG1 = SIGA(1) 125 : SIG2 = SIGA(2) 126 : YLIM1=YLIMA1 127 : YLIM2=YLIMA2 128 : IF (SIG1.GE.0.D0)THEN 129 : JSIGN(1)=1 130 : ELSE 131 : JSIGN(1)=0 132 : END IF 133 : IF (SIG2.GE.0.D0)THEN 134 : JSIGN(2)=1 135 : ELSE 136 : JSIGN(2)=0 137 : END IF 138 : Z1=1.D0/(1.D0-DOM1) 139 : Z2=1.D0/(1.D0-DOM2) 140 : Y1 = YA1 141 : Y2 = YA2 142 : DEPS1=(EPSN(1)-EPSA(1))/NEPS 143 : DEPS2=(EPSN(2)-EPSA(2))/NEPS 144 : IEPS=0 145 : DT1=DT/NEPS 146 : c print*,'Vitesse',(DEPS1/dt1),(DEPS2/dt1) 147 : CONV=.TRUE. 148 : DO WHILE (CONV .AND. (IEPS.LT.NEPS)) 149 : IEPS=IEPS+1 150 : EPSP1=EPSA(1)+IEPS*DEPS1 151 : EPSP2=EPSA(2)+IEPS*DEPS2 152 : c 153 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 154 : C % % 155 : C % CALCUL DES VALEURS DES VARIABLES INTERNES % 156 : C % % 157 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 158 : C 159 : C 160 : c 160 : CALL CODJFD(WRK52,WRK53,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2,Y1,Y2, 161 : 1 JSIGN,SIG1,SIG2,CONV,DT1) 162 : if (.not. conv ) then 163 : conv=.true. 163 : CALL CODJF2(WRK52,WRK53,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2, 164 : 1 Y1,Y2,JSIGN,SIG1,SIG2,CONV,DT1) 165 : endif 166 : C 167 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 168 : C % % 169 : C % REACTUALISATION DES SEUILS % 170 : C % % 171 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 172 : c 173 : IF (CONV) THEN 174 : VARF(1)=dmax1(Y1,VAR0(1)) 175 : VARF(2)=dmax1(Y2,VAR0(2)) 176 : VARF(3)=dmax1(1.D0-1.D0/Z1,VAR0(3)) 177 : VARF(4)=dmax1(1.D0-1.D0/Z2,VAR0(4)) 178 : c IF (Y1 .GT.YLIM1)THEN 179 : c VARF(1)=Y1 180 : c VARF(3)=1.D0-1.D0/Z1 181 : c ELSE 182 : c VARF(1)=VAR0(1) 183 : c VARF(3)=VAR0(3) 184 : c END IF 185 : c IF (Y2 .GT. YLIM2)THEN 186 : c VARF(2)=Y2 187 : c VARF(4)=1.D0-1.D0/Z2 188 : c ELSE 189 : c VARF(2)=VAR0(2) 190 : c VARF(4)=VAR0(4) 191 : c END IF 192 : END IF 193 : END DO 194 : NEPS=NEPS*10 195 : END DO 196 : IF (.NOT. CONV)THEN 197 : print*,'valeur de neps et ieps',neps,ieps 198 : print*, 'NON CONVERGE DANS EULER',EPSP1,EPSP2 198 : C CALL MODJFD(WRK0,NMATT,EPSP1,EPSP2,YLIM1,YLIM2,Z1,Z2,Y1,Y2, 199 : C 1 JSIGN,SIG1,SIG2,CONV,DT1) 200 : SEGSUP WRK3 201 : KERRE=56 202 : return 203 : END IF 204 : C 205 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 206 : C % % 207 : C % CALCUL DES CONTRAINTES DANS LE REPERE DE L'ELEMENT % 208 : C % % 209 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 210 : C 211 : SIGNN(1)=SIG1 212 : SIGNN(2)=SIG2 213 : SIGNN(3)=0.D0 213 : CALL PRODT2 (SIGMAN,SIGNN,XROTA,3) 214 : SIGF(1)=SIGMAN(1,1) 215 : SIGF(2)=SIGMAN(2,2) 216 : SIGF(3)=SIGMAN(3,3) 217 : SIGF(4)=SIGMAN(1,2) 218 : C 219 : C 220 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 221 : C % % 222 : C % CALCUL DES DEFORMATIONS ANELASTIQUES % 223 : C % % 224 : C %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 225 : C 225 : CALL MATVE1 (DDHOOK,SIGF,NSTRS1,NSTRS1,EPSILI,1) 226 : DO ISTRS=1,NSTRS1 227 : EPINF(ISTRS)=EPSILO(ISTRS)-EPSILI(ISTRS) 228 : END DO 229 : SEGSUP WRK3 230 : RETURN 231 : END 232 : 233 : 234 : 235 : 236 : 237 : 238 : 239 : 240 : 241 : 242 : 243 : 244 :
© Cast3M 2003 - All rights reserved.
Disclaimer