C SJONC2 SOURCE CHAT 05/01/13 03:20:33 5004 SUBROUTINE SJONC2(SIGI,DEPST,VARI,XMAT,TRAS,NTRAS, > SIGF,VARF,DEFP,KERRE) C----------------------------------------------------------------------- C C ROUTINE DE CALCUL DE L'ECOULEMENT DANS LE JOINT C C WORK ONLY IN 2-D PLANE STATE C C INPUT C SIGI INITIAL STRESS C DEPST INCREMENT OF STRAIN C XMAT MATERIAL PROPERTIES C TRAS SHEAR CURVE C VARI INITIAL INTERNAL VARIABLES C C OUTPUT C SIGF FINAL STRESS C VARF FINAL INTERNAL VARIABLES C DEFP INCREMENT OF PLASTIQUE STRAIN C C----------------------------------------------------------------------- C P.PEGON SEPTEMBER 2001 C----------------------------------------------------------------------- IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) * DIMENSION SIGI(*),DEPST(*),VARI(*), . SIGF(*),VARF(*) ,DEFP(*), . XMAT(*),TRAS(2,NTRAS) C C----------------------------------------------------------------------- C MATERIAL PARAMETERS C =================== C C KS = XMAT(1) Shear modulus C TRAS = X/Y PLASTIC Shear curve C BETA = XMAT(5) Unloading Coefficient C----------------------------------------------------------------------- C STRESS C ====== C C SMS1. = SIG.(1) C SMS2 = SIG.(2) C----------------------------------------------------------------------- C STRAIN C ====== C C DRS1 = EPS(1) C DRS2 = EPS(2) C----------------------------------------------------------------------- C INTERNAL VARIABLES C ================== C C C EPSS = VAR.(1) PLASTIC SHEAR COEFFICIENT C C C----------------------------------------------------------------------- C C CURRENT POSITION ON THE LOADING CURVE C EPSS=VARI(1) CALL YOFXCU(EPSS,TRAS,NTRAS,SMSNP,DSMSNP,KERRE) IF (KERRE.NE.0) RETURN C C VALUE OF THE LOADING/UNLOADING MODULUS C DMODU=SMSNP/(EPSS+(TRAS(2,1)/XMAT(1))) DMODU=(1-XMAT(5))*XMAT(1)+DMODU*XMAT(5) C C ELASTIC STRESS PREDICTION C SIGF(1)=SIGI(1)+DMODU*DEPST(1) SIGF(2)=SIGI(2)+DMODU*DEPST(2) SMSN=SQRT(SIGF(1)**2+SIGF(2)**2) C C TEST ON THE FLOW C IF (SMSN.GT.SMSNP) THEN C C -> YIELDING IN SHEAR ... C EPSS= EPSS+(SMSN-SMSNP)/DMODU CALL YOFXCU(EPSS,TRAS,NTRAS,SMSNP,DSMSNP,KERRE) IF (KERRE.NE.0) RETURN C SIGF(1)=SIGF(1)*SMSNP/SMSN SIGF(2)=SIGF(2)*SMSNP/SMSN C ENDIF C VARF(1)= EPSS DEFP(1) = VARF(1) - VARI(1) C RETURN END