tufien
C TUFIEN SOURCE CHAT 05/01/13 03:55:36 5004 & XM0,XP0,XJ1C,T,RAYOM,EPAI,YOUN) IMPLICIT INTEGER(I-N) IMPLICIT REAL*8 (A-H,O-Z) C======================================================================= C CE SOUS PROGRAMME SERT A CALCULER LE NOUVEL ANGLE DE LA C FISSURE DANS LE CAS D UN INCREMENT DE CHARGE POUR C LEQUEL IL Y A PROPAGATION EN ELASTICITE C SI ON PLASTIFIE ON RENVOIT LA PARTIE DE L INCREMENT C QU IL VA FALLOIR ECOULER C IL EST APPELE PAR TUFPLA C C ENTREES:XM VALEUR DU MOMENT AU DEBUT DU PAS C XP VALEUR DE L EFFORT NORMAL AU DEBUT DU PAS C DELTAM INCREMENT DE MOMENT C DELTAP INCREMENT D EFFORT NORMAL C THETA ANGLE DE LA FISSURE AU DEBUT DU PAS C XJP VALEUR DE LA PARTIE PLASTIQUE DE J C C SORTIES:XM VALEUR DU MOMENT A LA FIN DU PAS C XP VALEUR DE L EFFORT NORMAL A LA FIN DU PAS C DELTAM PARTIE DE L INCREMENT DE MOMENT RESTANT C A ECOULER EN PLASTICITE C DELTAP PARTIE DE L INCREMENT D EFFORT NORMAL C RESTANT A ECOULER EN PLASTICITE C THETA ANGLE DE LA FISSURE A LA FIN DU PAS C======================================================================= -INC CCREEL -INC PPARAM -INC CCOPTIO DIMENSION XX(2,2),YY(2,2) XM1=XM+DELTAM XP1=XP+DELTAP C C ON CALCULE LE NOUVEL ANGLE DE LA FISSURE PAR LA METHODE C DE NEWTON EN APPROXIMANT LA DERIVEE C X0=THETA NBIT=0 1 CONTINUE FP=(F1-F0)/(X1-X0) X2=X1-F1/FP IF(X2.LT.THETA0) THEN IF(IIMPI.EQ.999)THEN WRITE(IOIMP,111) 111 FORMAT(1X,'L ANGLE EST INFERIEUR A L ANGLE INITIAL') ENDIF DELTAM=0.D0 DELTAP=0.D0 RETURN ENDIF IF(X2.GT.360.D0) THEN IF(IIMPI.EQ.999)THEN WRITE(IOIMP,222) 222 FORMAT(1X,'PAS DE SOLUTION REALISTE') ENDIF DELTAM=0.D0 DELTAP=0.D0 RETURN ENDIF NBIT=NBIT+1 CRI=ABS((X2-X1)/X1) CRU=ABS(F2) IF(CRI.GE.PRECIS.OR.CRU.GE.PRECIS) THEN X0=X1 X1=X2 GOTO 1 ELSE THETA=X2 IF(IIMPI.EQ.999)THEN WRITE(IOIMP,*)'NBRE ITERATIONS',NBIT WRITE(IOIMP,900)VER 900 FORMAT(1X,'VERIF RESOLUTION',1X,F12.5) ENDIF C C THETA EST LE NOUVEL ANGLE DE LA FISSURE C ENDIF C C ON TESTE POUR SAVOIR SI ON EST TOUJOURS ELASTIQUE C C C SI OUI ON A TOUT ECOULE ET ON MET DELTAM ET DELTAP C A ZERO C IF(IRETOU.EQ.0) THEN XM=XM+DELTAM XP=XP+DELTAP DELTAM=0.D0 DELTAP=0.D0 RETURN C C SINON ON CHERCHE L ANGLE QUI CORRESPOND A LA FRONTIERE C DU DOMAINE D ELASTICITE C ON RESOUD UN SYSTEME DU TYPE F(A,B)=G(A,B)=0 D UNE C MANIERE ANALOGUE A LA METHODE DE NEWTON C ELSE IF(IIMPI.EQ.999)THEN WRITE(IOIMP,901) 901 FORMAT(1X,'MAIS ON PLASTIFIE') ENDIF NBIT=0 A1=0.D0 B1=1.D0 XM1=XM+A1*DELTAM XP1=XP+A1*DELTAP A2=1.D0 B2=0.9D0 XM2=XM+A2*DELTAM XP2=XP+A2*DELTAP 2 CONTINUE XX(1,1)=(F21-F11)/(A2-A1) XX(1,2)=(F12-F11)/(B2-B1) & YOUN) & YOUN) XX(2,1)=(G21-G11)/(A2-A1) & YOUN) XX(2,2)=(G12-G11)/(B2-B1) & YOUN) A3=A2-YY(1,1)*F22-YY(1,2)*G22 B3=B2-YY(2,1)*F22-YY(2,2)*G22 XM3=XM+A3*DELTAM XP3=XP+A3*DELTAP NBIT=NBIT+1 CRA=ABS((A3-A2)/A2) CRO=ABS((B3-B2)/B2) CRU=CRA+CRO & YOUN) CRI=(F3**2+G3**2)**0.5D0 IF(CRI.GE.PRECIS.OR.CRU.GE.PRECIS) THEN A1=A2 B1=B2 A2=A3 B2=B3 XM1=XM2 XP1=XP2 THETA1=THETA2 XM2=XM3 XP2=XP3 THETA2=THETA3 GOTO 2 ELSE C C ON A ENFIN TROUVE A ET B QUI CONVIENNENT C A=A3 B=B3 ENDIF XM=XM+A*DELTAM XP=XP+A*DELTAP DELTAM=(1.D0-A)*DELTAM DELTAP=(1.D0-A)*DELTAP & YOUN) IF(IIMPI.EQ.999)THEN WRITE(IOIMP,903)VER1,VER2 903 FORMAT(1X,'REVERIF RESO',1X,2F12.5) WRITE(IOIMP,*)'NBRE ITERATIONS',NBIT ENDIF RETURN ENDIF END
© Cast3M 2003 - Tous droits réservés.
Mentions légales