VSDVINI

User subroutine to define initial solution-dependent state variable fields.

User subroutine VSDVINI:

  • will be called for user-defined initial solution-dependent state variable fields at particular material points or shell section points (see Initial Conditions);

  • can be used to initialize solution-dependent state variables allocated at particular material points or shell section points, as described in Allocating Space for Solution-Dependent State Variables; and

  • returns a value of zero for any solution-dependent state variables that have no defined initial condition.

This page discusses:

Use of Solution-Dependent State Variables in Other User Subroutines

Solution-dependent state variables initialized in VSDVINI can be used and updated in other user subroutines called at particular material points (such as VUMAT or VUHARD) or shell section points (for example, VUGENS).

User Subroutine Interface

      subroutine vsdvini(
C Read only -
     *     nblock, jElem, nIntPt, nLayer, nSectPt, 
     *     ndim, nStateV, cMName, coordMp, charLength,
C Write only (modifiable) -
     *     stateIni ) 
C
      include 'vaba_param.inc'
C
      dimension charLength(nblock), coordMp(nblock,ndim),
     *   stateIni(nblock,nStateV), jElem(nblock)
C
      character*80 cMName
C
      do 100 km = 1,nblock
      user coding to define stateIni(nblock,nStateV)
   100 continue
C
      return
      end

Variables to Be Defined

stateIni(nblock,nStateV)

An array containing initial solution-dependent state variables at the material points or shell section points. The allocation of this array is described in Solution-Dependent State Variables.

Variables Passed in for Information

nblock

Number of material points to be processed in this call to VSDVINI.

jElem(nblock)

Array of element numbers.

nIntPt

Integration point number in the element.

nLayer

Layer number (for composite shells and layered solids).

nSecPt

Section point number within the current layer or section. Section point 1 is used for all pure heat transfer, coupled temperature-displacement, and coupled thermal-electrical-structural analyses.

nDim

Space dimension of coordinates.

nStateV

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

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.

coordMp(nblock,ndim)

Material point coordinates. It is the midplane material point for shell elements and the centroid for beam elements.

charLength(nblock)

Characteristic element length, which is either the default value based on the geometric mean or the user-defined characteristic element length defined in user subroutine VUCHARLENGTH. The default value is a typical length of a line across an element for a first-order element; it is half of the same typical length for a second-order element. For beams and trusses the default value is a characteristic length along the element axis. For membranes and shells, it is a characteristic length in the reference surface. For axisymmetric elements, it is a characteristic length in the r–z plane only. For cohesive elements, it is equal to the constitutive thickness.