pevoz23
Civil/Environmental
- Oct 25, 2016
- 6
Hi,
I'm trying to model a stress dependency of the Young's modulus of an elasto-plastic soil (Mohr-Coulomb) in Abaqus using the subroutine USDFLD (in plane strain conditions with CPE4 mesh elements).
My first simple implementation is:
This implementation however leads to convergence problems as soon as it is used (Geostatic step if I use it on this step, on the first static increment otherwise).
Can anyone explain me why and how can I improve this first implementation?
In this old post, Bartosz said:
Is this my problem? How can I achieve this?
Thanks in advance
EDIT: THe problem should be the fact that at the beginning of my geostatic step I have FIELD(1)=0 and the change in stiffness is too aggressive. But how can I initialize the field variable for t=0? The value of this variable namely changes for every node of my soil part.
I'm trying to model a stress dependency of the Young's modulus of an elasto-plastic soil (Mohr-Coulomb) in Abaqus using the subroutine USDFLD (in plane strain conditions with CPE4 mesh elements).
My first simple implementation is:
Code:
SUBROUTINE USDFLD(FIELD,STATEV,PNEWDT,DIRECT,T,CELENT,
1 TIME,DTIME,CMNAME,ORNAME,NFIELD,NSTATV,NOEL,NPT,LAYER,
2 KSPT,KSTEP,KINC,NDI,NSHR,COORD,JMAC,JMATYP,MATLAYO,LACCFLA)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME,ORNAME
CHARACTER*3 FLGRAY(15)
DIMENSION FIELD(NFIELD),STATEV(NSTATV),DIRECT(3,3),
1 T(3,3),TIME(2)
DIMENSION ARRAY(15),JARRAY(15),JMAC(*),JMATYP(*),COORD(*)
DOUBLE PRECISION PE11, PE22, PE33, PE12, PE23, PE31
call GETVRM('S',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
1 LACCFLA)
FIELD(1) = 1.0D0/3.0D0*(ARRAY(1)+ARRAY(2)+ARRAY(3))
RETURN
END
This implementation however leads to convergence problems as soon as it is used (Geostatic step if I use it on this step, on the first static increment otherwise).
Can anyone explain me why and how can I improve this first implementation?
In this old post, Bartosz said:
akabarten said:The subroutine works ok for reduced elements (with one integration points) if you want to use fully integrated elements then you need to modify the subroutine.
I believe the best solution is to calculate E value for all material points in an element and assign one average value.
Is this my problem? How can I achieve this?
Thanks in advance
EDIT: THe problem should be the fact that at the beginning of my geostatic step I have FIELD(1)=0 and the change in stiffness is too aggressive. But how can I initialize the field variable for t=0? The value of this variable namely changes for every node of my soil part.