ecubi1
C ECUBI1 SOURCE CHAT 05/01/12 23:28:00 5004
1 YOUNG,COHE1,TSUG,DEFPL,DLAM1,CO11,SI11,HACHE1,IDAM,KERRE)
IMPLICIT INTEGER(I-N)
IMPLICIT REAL*8(A-H,O-Z)
DIMENSION DEFPL(*),TSUG1(4),SOG1(*),DSOG1(*),DSAG1(4),SAG1(4),
1 DSUG1(4),SYG1(4),SUG1(4),TSUG(4),DEFPL1(4),DSUG(4),DSEG1(4)
ITER=0
ZER=0.D0
DLA1=0.D0
IDAM=1
DO 48 ITYP=1,4
DEFPL(ITYP)=0.D0
48 CONTINUE
C ---------------------------------------------------------
C ON EFFECTUE L'ECOULEMENT1 .PAS DE 2EME CRITERE
C ---------------------------------------------------------
C ----------------------------------------------
C ON SE PLACE SUR LE CRITERE 1
C
DO 90 ITYP=1,4
SAG1(ITYP)=SOG1(ITYP)+GAMMA1*DSOG1(ITYP)
DSAG1(ITYP)=(1.D0-GAMMA1)*DSOG1(ITYP)
90 CONTINUE
C ----------------------------------------------
C --------------------------------------------------------
C CALCUL DE DLAMDA
C
CIS1=SIGN(1.D0,SAG1(4))
DLA1=(PHI1*DSAG1(2)+CIS1
1 *DSAG1(4)+VCRIT1)/HACHE1
C--------------------------
C CAS DEFO PLANES
C
1 *DLA1,DSUG1(1),DSUG1(2),DSUG1(3),DSUG1(4),XNU,YOUNG)
C--------------------------
C CAS CONT PLANES
C
# CIS1*DLA1,DSUG1(1),DSUG1(2)
# ,DSUG1(3),DSUG1(4),XNU,YOUNG)
C--------------------------
DO 91 ITYP=1,4
TSUG1(ITYP)=DSAG1(ITYP)+SAG1(ITYP)-DSUG1(ITYP)
91 CONTINUE
C---------------------------------------------------------
C----------------------------------------------------
C CAS OU ON DEPASSE LA LIMITE EN TRACTION
C ON CALCULE UN NOUVEAU DLAMDA
C
IF(ITER.EQ.0) GO TO 234
DO 77 ITYP=1,4
DSUG1(ITYP)=DSOG1(ITYP)+SOG1(ITYP)-TSUG1(ITYP)
77 CONTINUE
DLAM1=DLAM1+DLA1
GO TO 700
234 IF(TSUG1(2).LE.TRA1) DLAM1=DLAM1+DLA1
IF(TSUG1(2).LE.TRA1) GO TO 700
C--------------------------
C CAS DEFO PLANES
C
1 ,SYG1(1),SYG1(2),SYG1(3),SYG1(4),XNU,YOUNG)
C--------------------------
C CAS CONT PLANES
C
1 ,SYG1(1),SYG1(2),SYG1(3),SYG1(4),XNU,YOUNG)
C--------------------------
C ON CALCULE UN NOUVEAU DLAMDA
C
XAT=(TRA1-SAG1(2)+VCRIT1*SYG1(2)/HACHE1)/(DSAG1(2)-SYG1(2)*(DLA1
1 -VCRIT1/HACHE1))
DLA1=XAT*(DLA1-VCRIT1/HACHE1)+VCRIT1/HACHE1
C-----------------------------------------------------
C ON CALCULE LES CONTRAINTES A LA POINTE ET
C L INCREMENT DE CONTRAINTES
C ON EFFECTUE L ECOULEMENT EN RAMENANT A LA POINTE
C DU CRITERE
C AVANT ON REGARDE SI ON PEUT ECOULER SUIVANT L'AUTRE
C DIRECTION D'ECOULEMENT
C-----------------------------------------------------
C
DO 92 ITYP=1,4
TSUG1(ITYP)=SAG1(ITYP)+XAT*DSAG1(ITYP)-DLA1*SYG1(ITYP)
DSEG1(ITYP)=DSAG1(ITYP)*(1.D0-XAT)
92 CONTINUE
VCRT=-DSEG1(2)+PSI1*ABS(DSEG1(4))
IF(VCRT.LE.0.D0.OR.ITER.GT.0) GO TO 456
ITER=ITER+1
CIS1=SIGN(1.D0,DSEG1(4))
DLAM1=DLAM1+DLA1
DO 97 ITYP=1,4
SAG1(ITYP)=TSUG1(ITYP)
DSAG1(ITYP)=DSEG1(ITYP)
97 CONTINUE
GO TO 457
C-----------------------------------------------------
C CAS DEFO PLANES
C
456 CONTINUE
IF (NCAS.NE.1) HOOK=YOUNG/(1.D0+XNU)/(1.D0-2.D0*XNU)
IF (NCAS.NE.1) BETA=(DSEG1(4)+TSUG1(4))/HOOK/(1.D0-2.D0*XNU)
C--------------------------
C CAS CONT PLANES
C
IF (NCAS.EQ.1) HOOK=YOUNG/(1.D0-XNU*XNU)
IF (NCAS.EQ.1) BETA=(DSEG1(4)+TSUG1(2))/HOOK/(1.D0-XNU)
C-----------------------------------------------------
# BETA,DSAG1(1),DSAG1(2)
# ,DSAG1(3),DSAG1(4),XNU,YOUNG)
# BETA,DSAG1(1),DSAG1(2)
# ,DSAG1(3),DSAG1(4),XNU,YOUNG)
DO 453 ITYP=1,4
TSUG1(ITYP)=TSUG1(ITYP)+DSEG1(ITYP)-DSAG1(ITYP)
DSUG1(ITYP)=DSOG1(ITYP)+SOG1(ITYP)-TSUG1(ITYP)
453 CONTINUE
C-----------------------------------------------------
C CAS DEFO PLANES
C
C--------------------------
C CAS CONT PLANES
C
C-----------------------------------------------------
RETURN
END
					© Cast3M 2003 - Tous droits réservés.
					Mentions légales