User Subroutine Interface
SUBROUTINE UEXPAN(EXPAN,DEXPANDT,TEMP,TIME,DTIME,PREDEF,
1 DPRED,STATEV,CMNAME,NSTATV,IARRAY)
C
INCLUDE 'ABA_PARAM.INC'
C
CHARACTER*80 CMNAME
C
DIMENSION EXPAN(*),DEXPANDT(*),TEMP(2),TIME(2),PREDEF(*),
1 DPRED(*),STATEV(NSTATV),IARRAY(3)
user coding to define EXPAN, DEXPANDT and update
STATEV if necessary.
RETURN
END
Variables to Be Defined
-
EXPAN(*)
-
Increments of thermal strain. The number of values to be defined and the order in
which they are arranged depend on the type of thermal expansion being defined.
-
For isotropic expansion give the isotropic thermal strain increment as the first
and only component of the matrix.
-
For orthotropic expansion give
,
, and
as the first, second, and third components of the matrix,
respectively. For plane stress only two components of the matrix are needed; give
and
as the first and second components.
-
For anisotropic expansion give
,
,
,
,
, and
. Direct components are stored first, followed by shear
components in the order presented here. For plane stress only three components of
the matrix are needed; give
,
, and
as the first, second, and third components, respectively.
-
DEXPANDT(*)
-
Variation of thermal strains with respect to temperature,
. The number of values and the order in which they are arranged
depend on the type of thermal expansion being defined. For field expansion strains,
this parameter is scalar and should be defined as zero.
-
For isotropic expansion give the variation of the isotropic thermal strain with
respect to temperature as the first and only component of the matrix.
-
For orthotropic expansion give
,
, and
as the first, second, and third components of the matrix,
respectively. For plane stress only two components of the matrix are needed; give
and
as the first and second components.
-
For anisotropic expansion give
,
,
,
,
, and
. Direct components are stored first, followed by shear
components in the order presented here. For plane stress only three components of
the matrix are needed; give
,
, and
, as the first, second, and third components, respectively.
Variables That Can Be Updated
-
STATEV(NSTATV)
-
Array containing the user-defined solution-dependent state variables at this point.
Except for coupled temperature-displacement and coupled thermal-electrical-structural
analyses, these are supplied as values at the start of the increment and can be
updated to their values at the end of the increment. For coupled
temperature-displacement and coupled thermal-electrical-structural analyses, UEXPAN is called twice per
material point per iteration. In the first call for a given material point and
iteration, the values supplied are those at the start of the increment and can be
updated. In the second call for the same material point and iteration, the values
supplied are those returned from the first call, and they can be updated again to
their values at the end of the increment.
User subroutine UEXPAN allows for the
incremental thermal strains to be only weakly dependent on the state variables. The
Jacobian terms arising from the derivatives of the thermal strains with respect to the
state variables are not taken into account.
Variables Passed in for Information
-
TEMP(1)
-
Current temperature (at the end of the increment).
-
TEMP(2)
-
Temperature increment.
-
TIME(1)
-
Step time at the end of the increment.
-
TIME(2)
-
Total time at the end of the increment.
-
DTIME
-
Time increment.
-
PREDEF(*)
-
Array containing the values of all the user-specified predefined field variables at
this point (initial values at the beginning of the analysis and current values during
the analysis).
-
DPRED(*)
-
Array of increments of predefined field variables.
-
CMNAME
-
User-specified material name or gasket behavior name, left justified.
-
NSTATV
-
Number of solution-dependent state variables associated with this material or gasket
behavior type (specified when space is allocated for the array; see Allocating Space for Solution-Dependent State Variables).
-
IARRAY
-
IARRAY(1) |
User-defined element number. |
IARRAY(2) |
Pore fluid flag that is set to 1 if the pore fluid expansion strain
must be defined for this call to the user subroutine. It is set to 0
otherwise. |
IARRAY(3) |
Field variable number for which the field expansion strain must be
defined for this call to the user subroutine. It is set to 0 if the thermal
strain must be defined for this call to the user subroutine. |
|