VUSUPERELASHARDMOD

User subroutine to modify the material constants of the superelasticity model as a function of the plastic strain.

User subroutine VUSUPERELASHARDMOD:

  • is called at all material calculation points of elements for which the material definition includes user-defined hardening modifications; and

  • can use field variables or state variables.

This page discusses:

User Subroutine Interface

      subroutine vusuperelashardmod(
C Read only -
     *     nblock, 
     *     jElem, kIntPt, kLayer, kSecPt, 
     *     stepTime, totalTime, dt, cmname,
     *     nstatev, nfieldv, nprops, 
     *     props, tempOld, tempNew, fieldOld, fieldNew,
     *     stateOld,
     *     CAS, CSA, eqps, RefT, EmodARef,
     *     EnuARef, EmodSRef, EnuSRef, SsASRef, SfASRef, SsSARef,
     *     SfSARef, 
C     Write only (modifiable) variables -
     *     EmodA, EnuA, EmodS, EnuS, SsAS, SfAS, SsSA, SfSA,
     *     stateNew )
C
      include 'vaba_param.inc'
C
      dimension props(nprops), tempOld(nblock), tempNew(nblock),
     1   fieldOld(nblock,nfieldv), fieldNew(nblock,nfieldv),
     2   stateOld(nblock,nstatev), CAS(nblock), CSA(nblock),eqps(nblock),
     3   RefT(nblock), EmodARef(nblock),EnuARef(nblock),EmodSRef(nblock),
     4   EnuSRef(nblock), SsASRef(nblock),SfASRef(nblock),SsSARef(nblock),
     5   SfSARef(nblock),EmodA(nblock),EnuA(nblock),EmodS(nblock),
     4   EnuS(nblock),SsAS(nblock),SfAS(nblock),SsSA(nblock),
     5   SfSA(nblock),stateNew(nblock,nstatev),jElem(nblock)
C
      character*80 cmname
C
      do 100 km = 1,nblock
        user coding
  100 continue
C
      return
      end

Variables to Be Defined

EmodA(nblock)

EA, austenite's Young's modulus.

EnuA(nblock)

νA, austenite's Poisson's ratio.

EmodS(nblock)

EM, martensite's Young's modulus.

EnuS(nblock)

νM, martensite's Poisson's ratio.

SsAS(nblock)

σtLS, stress at which the transformation begins during loading in tension.

SfAS(nblock)

σtLE, stress at which the transformation ends during loading in tension.

SsSA(nblock)

σtUS, stress at which the reverse transformation begins during unloading in tension.

SfSA(nblock)

σtUE, stress at which the reverse transformation begins during unloading in tension.

stateNew(nblock,nstatev)

Array containing the state variables at the material points at the end of the increment. The allocation of this array is described in Solution-Dependent State Variables.

Variables Passed in for Information

nblock

Number of material points.

jElem(nblock)

Array of element numbers.

kIntPt

Integration point number.

kLayer

Layer number (for composite shells).

kSecPt

Section point number within the current layer.

stepTime

Value of time since the step began.

totalTime

Value of total time. The time at the beginning of the step is given by totalTime-stepTime.

dt

Time increment size.

cmname

Material name, left-justified. It is passed in as an uppercase character string. Some internal material models are given names starting with the “ABQ_” character string. To avoid conflict, “ABQ_” should not be used as the leading string for cmname.

nstatev

Number of user-defined state variables that are associated with this material type (see Allocating Space for Solution-Dependent State Variables).

nfieldv

Number of user-defined external field variables.

nprops

User-specified number of user-defined material properties.

tempOld(nblock)

Temperatures at the material points at the beginning of the increment.

tempNew(nblock)

Temperatures at the material points at the end of the increment.

fieldOld(nblock,nfieldv)

Values of the user-defined field variables at the material points at the beginning of the increment.

fieldNew(nblock,nfieldv)

Values of the user-defined field variables at the material points at the end of the increment.

stateOld(nblock,nstatev)

State variables at the material points at the beginning of the increment.

CAS(nblock)

(δσδT)L, slope of the stress versus temperature curve for loading.

CSA(nblock)

(δσδT)U, slope of the stress versus temperature curve for unloading.

eqps(nblock)

Equivalent plastic strain at the material points.

RefT(nblock)

Reference temperature.

EmodARef(nblock)

EA, reference value of austenite's Young's modulus.

EnuARef(nblock)

νA, reference value of austenite's Poisson's ratio.

EmodSRef(nblock)

EM, reference value of martensite's Young's modulus.

EnuSRef(nblock)

νM, reference value of martensite's Poisson's ratio.

SsASRef(nblock)

σtLS, reference value of stress at which the transformation begins during loading in tension.

SfASRef(nblock)

σtLE, reference value of stress at which the transformation ends during loading in tension.

SsSARef(nblock)

σtUS, reference value of stress at which the reverse transformation begins during unloading in tension.

SfSARef(nblock)

σtUE, reference value of stress at which the reverse transformation begins during unloading in tension.