User login

Navigation

You are here

Some problem concerning the position of increment in ABAQUS subroutines.

Lianhua Ma's picture

Dear all,

 

 I have a puzzling question. 

As we know, the positions of a increment in a FEM analysis ( in abaqus) include :

 1.  the start of the increment    2.    the end of the increment   3.     the current increment     etc

 It is easily understood. But the data transfer process in different subroutines have me puzzled.  

For example:  Subroutines of ABAQUS 

1.        USDFLD –FIELD:  An array containing the field variables at the current material point. These are passed in with the values interpolated from the nodes at the end of the current increment, the redefinition of field variables in USDFLD is local to the current increment.The position of field variables--- the current increment. 

2.        UMAT-PREDEF: Array of interpolated values of predefined field variables at this point at the start of the increment, based on the values read in at the nodes.The position of field variables value--- the start of the increment. 

3.        UHYPEL--PREDEF : An array containing current values of the predefined field variables at this point (initial values at the beginning of the analysis and current values during the analysis).The position of field variables value--- current values. 

4.     CREEP---PREDEF :An array containing the values of all of the user-specified predefined variables at this point at the end of the increment (initial values at the beginning of the analysis and current values during the analysis).  The position of field variables value--- at the end of the increment.  

The positions of different subroutines are different.

From the help document of ABAQUS, we know the field variables value can be passed from one subroutine(USDFLD) to another subroutine (UMAT)   

-In USDFLD subroutine:

The values of the field variables defined in this routine USDFLDare used to calculate values of material properties that are defined to depend on field variables and are passed into other user subroutines that are called at the material point, such as the following: ·         CREEP ·         HETVAL ·         UEXPAN ·         UHARD ·         UHYPEL ·         UMAT ·         UMATHT ·         UTRS   

In UMAT subroutine:User subroutine UMAT:

·         can be used to define the mechanical constitutive behavior of a material; ·         will be called at all material calculation points of elements for which the material definition includes a user-defined material behavior; ·         can be used with any procedure that includes mechanical behavior; ·         can use solution-dependent state variables; ·         must update the stresses and solution-dependent state variables to their values at the end of the increment for which it is called; ·         must provide the material Jacobian matrix, , for the mechanical constitutive model;

·         can be used in conjunction with user subroutine USDFLD to redefine any field variables before they are passed in;

 

 In USDFLD, the position of the defined field variable is -- the current increment.


Since the redefinition of field variables in USDFLD is local to the current increment, field variables are restored to the values interpolated from the nodal values at the start of each increment However, In UMAT, the position of the passed field variable value is--- the start of the increment.

The positions are different!  How can the field variable be passed from USDFLD to UMAT?

If we need pass field variable from USDFLD to the end of the increment in UMAT, how can we deal with it?

THANKS!

LH

Comments

Dear Lianhua Ma,

I have some questions for you... please look at http://imechanica.org/node/6854

Thanks in advance

Subscribe to Comments for "Some problem concerning the position of increment in ABAQUS subroutines."

Recent comments

More comments

Syndicate

Subscribe to Syndicate