smallpea14
Geotechnical
- Sep 19, 2013
- 7
Hi all,
I got great help from reading previous posts relate to defining elasticity function by USDFLD. By imitating those examples, I defined young's modulus as a simple function of minor principal stress by following two methods. Young's modulus was defined as field variable by itself in method a while minor principal stress was defined as filed variable. I run a simple triaxial test by applying 10kpa confining stress and downward displacement of 0.3 m for a asymmetric block of 1m. I got bizarre stress after the displacement reached to 0.15m by method b and vary different stress at the end of calculation by two methods. Could anyone please give me some hints what is the reason for this? I don't really have any clue. Thanks so much in advance.
method a:
PARAMETER (PA=101.3D0,EK=300.0D0,EN=0.5D0,EMIN=50.0D0,EC=250.D0)
CALL GETVRM('SP',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
& LACCFLA)
SP1=ARRAY(1)
SP2=ARRAY(2)
SP3=ARRAY(3)
WRITE (6,*) SP1,SP2,SP3
IF (SP3.EQ.0.0) EJ=EC
IF (SP3.GT.0.0) EJ=EJMIN
IF (SP3.LT.0.0) EJ=EK*PA*(-SP3/PA)**EN
FIELD(1)=EJ
STATEV(1)=EJ
*Elastic, dependencies=1
10., 0.3, , 10.
1e+06, 0.3, , 1e+06
method b:
PARAMETER (PA=101.3D0,EK=300.0D0,EN=0.5D0,EMIN=50.0D0,EC=250.D0)
CALL GETVRM('SP',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
& LACCFLA)
SP1=ARRAY(1)
SP2=ARRAY(2)
SP3=ARRAY(3)
WRITE (6,*) SP1,SP2,SP3
IF (SP3.LT.0) THEN
FIELD(1)=-SP3
STATEV(1)=EK*PA*(-SP3/PA)**EN
ELSE
FIELD(1)=0
STATEV(1)=EC
END IF
*Elastic, dependencies=1
250., 0.3, , 0.
9548.3, 0.3, , 10.
I got great help from reading previous posts relate to defining elasticity function by USDFLD. By imitating those examples, I defined young's modulus as a simple function of minor principal stress by following two methods. Young's modulus was defined as field variable by itself in method a while minor principal stress was defined as filed variable. I run a simple triaxial test by applying 10kpa confining stress and downward displacement of 0.3 m for a asymmetric block of 1m. I got bizarre stress after the displacement reached to 0.15m by method b and vary different stress at the end of calculation by two methods. Could anyone please give me some hints what is the reason for this? I don't really have any clue. Thanks so much in advance.
method a:
PARAMETER (PA=101.3D0,EK=300.0D0,EN=0.5D0,EMIN=50.0D0,EC=250.D0)
CALL GETVRM('SP',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
& LACCFLA)
SP1=ARRAY(1)
SP2=ARRAY(2)
SP3=ARRAY(3)
WRITE (6,*) SP1,SP2,SP3
IF (SP3.EQ.0.0) EJ=EC
IF (SP3.GT.0.0) EJ=EJMIN
IF (SP3.LT.0.0) EJ=EK*PA*(-SP3/PA)**EN
FIELD(1)=EJ
STATEV(1)=EJ
*Elastic, dependencies=1
10., 0.3, , 10.
1e+06, 0.3, , 1e+06
method b:
PARAMETER (PA=101.3D0,EK=300.0D0,EN=0.5D0,EMIN=50.0D0,EC=250.D0)
CALL GETVRM('SP',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
& LACCFLA)
SP1=ARRAY(1)
SP2=ARRAY(2)
SP3=ARRAY(3)
WRITE (6,*) SP1,SP2,SP3
IF (SP3.LT.0) THEN
FIELD(1)=-SP3
STATEV(1)=EK*PA*(-SP3/PA)**EN
ELSE
FIELD(1)=0
STATEV(1)=EC
END IF
*Elastic, dependencies=1
250., 0.3, , 0.
9548.3, 0.3, , 10.