UHYPER_STRETCH

User subroutine to define a hyperelastic material in terms of principal stretches.

User subroutine UHYPER_STRETCH:

  • can be used to define the strain energy potential for isotropic hyperelastic material behavior;

  • is called at all material calculation points of elements for which the material definition contains user-defined hyperelastic behavior;

  • can include material behavior dependent on field variables or state variables;

  • requires that the strain energy density function has the Valanis-Landel form (see Valanis-Landel Form); and
  • requires that the values of the derivatives of the strain energy density function of the hyperelastic material be defined with respect to the principal deviatoric stretches and the elastic volume ratio (see Valanis-Landel Form).

This page discusses:

Shells That Calculate Transverse Shear Energy

When you use UHYPER_STRETCH to define the material response of shell elements that calculate transverse shear energy, Abaqus/Standard cannot calculate a default value for the transverse shear stiffness of the element.Therefore, you must define the material transverse shear modulus (see Defining the Elastic Transverse Shear Modulus) or the element's transverse shear stiffness (see Shell Section Behavior).

Elements with Hourglassing Modes

If you use UHYPER_STRETCH to describe the material of elements with hourglassing modes, you must define the hourglass stiffness for hourglass control based on the total stiffness approach. The hourglass stiffness is not required for enhanced hourglass control, but you can define a scaling factor for the stiffness associated with the drill degree of freedom (rotation about the surface normal) [see Section Controls].

User Subroutine Interface

      SUBROUTINE UHYPER_STRETCH(DLAMBDA,AJ,U,U1,U2,U3,U4,TEMP,NOEL,
     1 CMNAME,INCMPFLAG,NUMSTATEV,STATEVOLD,STATEV,NUMFIELDV,FIELDV,
     2 FIELDVINC,NUMPROPS,PROPS,I_ARRAY,NIARRAY,R_ARRAY,NRARRAY,C_ARRAY,NCARRAY)
C
      INCLUDE 'ABA_PARAM.INC'
C
      CHARACTER*80 CMNAME,C_ARRAY(*)
      DIMENSION DLAMBDA(*),U(2),U1(4),U2(4),U3(4),U4(3),STATEVOLD(*),STATEV(*),FIELDV(*),
     2 FIELDVINC(*),PROPS(*),I_ARRAY(),R_ARRAY(*)


      user coding to define U,U1,U2,U3,U4,STATEV


      RETURN
      END

Variables to Be Defined

U(1)

U, strain energy density function. For a compressible material, at least one derivative involving J must be nonzero. For an incompressible material, all derivatives involving J are ignored. The principal deviatoric stretches (λ¯1, λ¯2, λ¯3, and J) are defined in Hyperelastic Behavior of Rubberlike Materials.

U(2)

U~dev, the deviatoric part of the strain energy density of the primary material response. This quantity is needed only if the current material definition includes the Mullins effect (see Mullins Effect).

U1(1)

U / λ ¯ 1 .

U1(2)

U / λ ¯ 2 .

U1(3)

U / λ ¯ 3 .

U1(4)

U / J .

U2(1)

2 U / λ ¯ 1 2 .

U2(2)

2 U / λ ¯ 2 2 .

U2(3)

2 U / λ ¯ 3 2 .

U2(4)

2 U / J 2 .

U3(1)

3 U / λ ¯ 1 3 .

U3(2)

3 U / λ ¯ 2 3 .

U3(3)

3 U / λ ¯ 3 3 .

U3(4)

3 U / J 3 .

U4(1)

4 U / λ ¯ 1 4 .

U4(2)

4 U / λ ¯ 2 4 .

U4(3)

4 U / λ ¯ 3 4 .

STATEV

Array containing the user-defined solution-dependent state variables at this point. These are supplied as values at the start of the increment or as values updated by other user subroutines (see About User Subroutines and Utilities) and must be returned as values at the end of the increment.

Variables Passed in for Information

DLAMBDA(1)

λ¯1.

DLAMBDA(2)

λ¯2.

DLAMBDA(3)

λ¯3.

AJ

J.

TEMP

Current temperature at this point.

NOEL

Element number.

CMNAME

User-specified material name, left justified.

INCMPFLAG

Incompressibility flag defined to be 1 if the material is specified as incompressible or 0 if the material is specified as compressible.

NUMSTATEV

User-defined number of solution-dependent state variables associated with this material (see Allocating Space for Solution-Dependent State Variables).

STATEVOLD

Array containing the user-defined solution-dependent state variables at this material point at the start of the increment.

NUMFIELDV

Number of field variables.

FIELDV

Array of interpolated values of predefined field variables at this material point at the end of the increment based on the values read in at the nodes (initial values at the beginning of the analysis and current values during the analysis).

FIELDVINC

Array of increments of predefined field variables at this material point for this increment; this includes any values updated by user subroutine USDFLD.

NUMPROPS

Number of material properties entered for this user-defined hyperelastic material.

PROPS

Array of material properties entered for this user-defined hyperelastic material.

I_ARRAY

Integer array for future expansion.

NIARRAY

Size of array I_ARRAY.

R_ARRAY

Real array for future expansion.

NRARRAY

Size of array R_ARRAY.

C_ARRAY

Character array for future expansion.

NCARRAY

Size of array C_ARRAY.