User sub routines (Groovy): list of variables

Physical Parameter .groovy

Here are the settings of “PhysicalParameter.groovy”:

Variable Type Size Informations
inputValues Double[] 0:n-1 The n arguments of the “User” function.
outputValue Double

Material Law.groovy

Here are the settings of “MaterialLaw.groovy”:

Variable Type Size Informations
material String The name of the material
userCoeff Double[] n The n user coefficients
paramSpatialCurrent Map [k,v]* n The n spatial quantities
paramIOCurrent Map [k,v] n The n I / O parameters
nbReal Integer This points out if the problem is real (1) or complex (2)
nbComponent Integer This points out if the variable is scalar (1) or vector (3)
varin Double[][] nbReal x nbComponent This is the input variable, computed by Flux
varou Double[][] nbReal x nbComponent This is the output variable, computed by the user model
tensor Double[][][] nbReal x

nbComponent x

nbComponent

This is the output tensor, computed by the user model
iostatus Integer This points out an error to the user, if its value is different from 1 or 2

* For each value v, there is an appropriate key k. k represents the name of the spatial quantity and this map is used as follows: paramSpatialCurrent [“k”] = v.

Hysteresys Material Law.groovy

Here are the settings of “HysteresysMaterialLaw.groovy”:

Variable Type Size Informations
material String The name of the material
userCoeff Double[] n The n user coefficients
paramSpatialCurrent Map [k,v] n The n spatial quantities
paramIOCurrent Map [k,v] n The n I / O parameters
step Integer This points out the step of the computation process (1 to 8)
arrayDSize Integer This points out the size of the arrayD table
arrayISize Integer This points out the size of the arrayI table
arrayD Double[] arrayDSize Work table
arrayI Integer[] arrayISize Work table
coordPoint Double[] 3 The coordinates of the Gauss point
times Double[] 2

This points out the time step :

  • times0 : current
  • times1 : previous
nbReal Integer This points out if the problem is real (1) or complex (2)
nbComponent Integer This points out if the variable is scalar (1) or vector (3)
varin Double[][] nbReal x nbComponent This is the input variable, computed by Flux
varou Double[][] nbReal x nbComponent This is the output variable, computed by the user model
tensor Double[][][] nbReal x nbComponent x nbComponnt This is the output tensor, computed by the user model
iostatus Integer This points out an error to the user, if its value is different from 1 to 8