NEML2 2.0.0
Loading...
Searching...
No Matches
[Models]

Table of Contents

Note
Clicking on the option with a triangle bullet ▸ next to it will expand/collapse its detailed information.
Type name written in PascalCase typically refer to a NEML2 object type, oftentimes a primitive tensor type.
The 🔗 symbol means that the tensor value can be cross-reference another object. See Model parameters (revisited) for details.
You can always use Ctrl+F or Cmd+F to search the entire page.

The following symbols are used throughout the documentation to denote different components of function definition.

  • 🇮: input variable
  • 🇴: output variable
  • 🇵: parameter
  • 🇧: buffer

Available objects and their input file syntax

Refer to System Documentation for detailed explanation about this system.

AdvectiveStress

Calculate the advective stress, \( p_s \), taking the form of \( p_s = \frac{c}{3J} P_{ij}F_{ij} \). Here, \( J, P, F \) are the the deformation gradient Jacobian, the 1st Piola-Kirchhoff stress and the defomration gradient. \( c \) is the volume change coefficient.

advective_stress 🇴 The average advective stress

  • Type: variable name
  • Default: state/advective_stress
coefficient 🇵 Coefficient c

  • Type: Scalar 🔗
deformation_gradient 🇮 The deformation gradient

  • Type: variable name
  • Default: forces/F
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
js 🇮 The Jacobian of the deformation gradient associated with the swelling and phase change

  • Type: variable name
jt 🇮 The Jacobian of the deformation gradient associated with the thermal and volume expansion

  • Type: variable name
pk1_stress 🇮 1st Piola-Kirchhoff stress

  • Type: variable name
  • Default: state/P
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ArrheniusParameter

Define the variable as a function of temperature according to the Arrhenius law \( p = p_0 \exp \left( -\frac{Q}{RT} \right) \), where \( p_0 \) is the reference value, \( Q \) is the activation energy, \( R \) is the ideal gas constant, and \( T \) is the temperature.

activation_energy 🇵 Activation energy

  • Type: Scalar 🔗
ideal_gas_constant The ideal gas constant

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
parameter 🇴 The output parameter

  • Type: variable name
  • Default: parameters/p
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_value 🇵 Reference value

  • Type: Scalar 🔗
temperature 🇮 Temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

AssociativeIsotropicPlasticHardening

Map the flow rate (i.e., the consistency parameter in the KKT conditions) to the rate of internal variables. This object calculates the rate of equivalent plastic strain following associative flow rule, i.e. \( \dot{\bar{\varepsilon}}_p = - \dot{\gamma} \frac{\partial f}{\partial k} \), where \( \dot{\bar{\varepsilon}}_p \) is the equivalent plastic strain, \( \dot{\gamma} \) is the flow rate, \( f \) is the yield function, and \( k \) is the isotropic hardening.

equivalent_plastic_strain_rate 🇴 Rate of equivalent plastic strain

  • Type: variable name
  • Default: state/internal/ep_rate
flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
isotropic_hardening_direction 🇮 Direction of associative isotropic hardening which can be calculated using Normality.

  • Type: variable name
  • Default: state/internal/Nk
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

AssociativeJ2FlowDirection

The plastic flow direction assuming an associative J2 flow.

flow_direction Flow direction

  • Type: variable name
  • Default: state/NM
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
mandel_stress Mandel stress

  • Type: variable name
  • Default: state/M
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

AssociativeKinematicPlasticHardening

Map the flow rate (i.e., the consistency parameter in the KKT conditions) to the rate of internal variables. This object calculates the rate of kinematic plastic strain following associative flow rule, i.e. \( \dot{\boldsymbol{K}}_p = - \dot{\gamma} \frac{\partial f}{\partial \boldsymbol{X}} \), where \( \dot{\boldsymbol{K}}_p \) is the kinematic plastic strain, \( \dot{\gamma} \) is the flow rate, \( f \) is the yield function, and \( \boldsymbol{X} \) is the kinematic hardening.

flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
kinematic_hardening_direction 🇮 Direction of associative kinematic hardening which can be calculated using Normality.

  • Type: variable name
  • Default: state/internal/NX
kinematic_plastic_strain_rate 🇴 Rate of kinematic plastic strain

  • Type: variable name
  • Default: state/internal/Kp_rate
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

AssociativePlasticFlow

Map the flow rate (i.e., the consistency parameter in the KKT conditions) to the rate of internal variables. This object calculates the rate of plastic strain following associative flow rule, i.e. \( \dot{\boldsymbol{\varepsilon}}_p = - \dot{\gamma} \frac{\partial f}{\partial \boldsymbol{M}} \), where \( \dot{\boldsymbol{\varepsilon}}_p \) is the plastic strain, \( \dot{\gamma} \) is the flow rate, \( f \) is the yield function, and \( \boldsymbol{M} \) is the Mandel stress.

flow_direction 🇮 Flow direction which can be calculated using Normality

  • Type: variable name
  • Default: state/internal/NM
flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
plastic_strain_rate 🇴 Rate of plastic strain

  • Type: variable name
  • Default: state/internal/Ep_rate
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

AvramiErofeevNucleation

Avrami-Erofeev nucleation model, takes the form of \( f = k(1-a)(-ln(1-a))^n \), where \( k \) is the reaction coefficient, \( n \) is the reaction order, and \( a \) is the degree of conversion

conversion_degree 🇮 Degree of conversion

  • Type: variable name
  • Default: state/a
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reaction_coef 🇵 Reaction coefficient

  • Type: Scalar 🔗
reaction_order 🇵 Reaction order

  • Type: Scalar 🔗
reaction_rate 🇴 Reaction rate

  • Type: variable name
  • Default: state/f

Detailed documentation link

BrooksCoreyCapillaryPressure

Relate the porous flow capillary pressure to the effective saturation using the Brooks Corey correlation taking the form of \( P_c = P_t S_e^{-\frac{1}{p}} \). Here \( S_e \) is the effective saturation, \( P_t \) is the threshold pressure at zero saturation, and \( p \) is the shape parameter

capillary_pressure 🇴 Capillary pressure.

  • Type: variable name
  • Default: state/Pc
effective_saturation 🇮 The effective saturation

  • Type: variable name
  • Default: state/S
exponent 🇵 The shape parameter p

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
log_extension Whether to apply logarithmic extension

  • Type: bool
  • Default: false
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
threshold_pressure 🇵 The threshold entry pressure

  • Type: Scalar 🔗
transition_saturation The transistion value of the effective saturation below which to apply the logarithmic extension

  • Type: number

Detailed documentation link

ChabochePlasticHardening

Map the flow rate (i.e., the consistency parameter in the KKT conditions) to the rate of internal variables. This object defines the non-associative Fredrick-Armstrong kinematic hardening. In the model, back stress is directly treated as an internal variable. Rate of back stress is given as \( \dot{\boldsymbol{X}} = \left( \frac{2}{3} C \frac{\partial f}{\partial \boldsymbol{M}} - g \boldsymbol{X} \right) \dot{\gamma} \). \( \frac{\partial f}{\partial \boldsymbol{M}} \) is the flow direction, \( \dot{\gamma} \) is the flow rate, and \( C \) and \( g \) are material parameters. The complete Chaboche model adds static recovery terms \( - A \lVert \boldsymbol{X} \rVert^{a - 1} \boldsymbol{X} \), so the model includes kinematic hardening, dynamic recovery, and static recovery. \( A \) and \( a \) are additional material parameters.

A 🇵 Static recovery prefactor

  • Type: Scalar 🔗
C 🇵 Kinematic hardening coefficient

  • Type: Scalar 🔗
a 🇵 Static recovery exponent

  • Type: Scalar 🔗
back_stress 🇮 Back stress

  • Type: variable name
  • Default: state/internal/X
back_stress_rate 🇴 Back stress rate, defaults to back_stress + _rate

  • Type: variable name
flow_direction 🇮 Flow direction

  • Type: variable name
  • Default: state/internal/NM
flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
g 🇵 Dynamic recovery coefficient

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ComposedModel

Compose multiple models together to form a single model. The composed model can then be treated as a new model and composed with others. The system documentation provides in-depth explanation on how the models are composed together.

additional_outputs Extra output variables to be extracted from the composed model in addition to the ones identified through dependency resolution.

  • Type: list of variable name
automatic_nonlinear_parameter Whether to automatically add dependent nonlinear parameters

  • Type: bool
  • Default: true
automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
models Models being composed together

  • Type: list of string
priority Priorities of models in decreasing order. A model with higher priority will be evaluated first. This is useful for breaking cyclic dependency.

  • Type: list of string
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ContractingGeometry

The contracting geometry model, often encountered in non-isothermal decomposition or solid-gas reactions, takes the form of \( f = k(1-a)^n \), where \( k \) is the reaction coefficient (often temperature-dependent), \( n \) is the reaction order, and \( a \) is the degree of conversion.

conversion_degree 🇮 Degree of conversion

  • Type: variable name
  • Default: state/a
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reaction_coef 🇵 Reaction coefficient, k

  • Type: Scalar 🔗
reaction_order 🇵 Reaction order, n

  • Type: Scalar 🔗
reaction_rate 🇴 Reaction rate

  • Type: variable name
  • Default: state/f

Detailed documentation link

CopyMillerIndex

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyQuaternion

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyR2

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyR3

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyRot

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopySFFR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopySFR3

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopySR2

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopySSR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopySWR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyScalar

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyVec

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyWFFR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyWR2

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyWSR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CopyWWR4

Copy the value from one variable to another.

from 🇮 Variable to copy value from

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 Variable to copy value to

  • Type: variable name

Detailed documentation link

CrackGeometricFunctionAT1

Crack geometric function associated with the AT-1 functional, \( \alpha = d \)

crack 🇴 Value of the crack geometric function

  • Type: variable name
  • Default: state/alpha
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase 🇮 Phase-field variable

  • Type: variable name
  • Default: state/d
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

CrackGeometricFunctionAT2

Crack geometric function associated with the AT-2 functional, \( \alpha = d^2 \)

crack 🇴 Value of the crack geometric function

  • Type: variable name
  • Default: state/alpha
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase 🇮 Phase-field variable

  • Type: variable name
  • Default: state/d
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

CubicElasticityTensor

This class defines a cubic anisotropic elasticity tensor using three parameters. Various options are available for which three parameters to provide.

coefficient_as_parameter Whether to treat the coefficients as (trainable) parameters. Default is true. Setting this option to false will treat the coefficients as buffers.

  • Type: list of bool
  • Default: 1
coefficient_types Types for each parameter, options are: INVALID, P_WAVE_MODULUS, POISSONS_RATIO, YOUNGS_MODULUS, SHEAR_MODULUS, BULK_MODULUS, LAME_LAMBDA

  • Type: MultiEnumSelection
  • Default: (INVALID)
coefficients 🇵 Coefficients used to define the elasticity tensor

  • Type: list of Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

CylindricalChannelGeometry

Calculate the dimensionless inner and outer radii of the reaction product

inner_radius 🇴 Dimensionless inner radius of the product phase

  • Type: variable name
  • Default: state/ri
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
outer_radius 🇴 Dimensionless outer radius of the product phase

  • Type: variable name
  • Default: state/ro
product_fraction 🇮 Volume fraction of the product phase

  • Type: variable name
  • Default: state/phi_p
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
solid_fraction 🇮 Volume fraction of the solid phase

  • Type: variable name
  • Default: state/phi_s

Detailed documentation link

DiffusionLimitedReaction

Calculate the void fraction rate of change

diffusion_coefficient 🇵 Diffusion coefficient of the rate-limiting species in the product phase

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
liquid_reactivity 🇮 Reactivity of the liquid phase, between 0 and 1

  • Type: variable name
  • Default: state/R_l
molar_volume Molar volume of the rate-limiting (liquid) species

  • Type: number
product_dummy_thickness Minimum product thickness to avoid division by 0

  • Type: number
  • Default: 0.01
product_inner_radius 🇮 Inner radius of the product phase

  • Type: variable name
  • Default: state/ri
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reaction_rate 🇴 Product phase substance (mol/V) rate of change

  • Type: variable name
  • Default: state/alpha_rate
solid_inner_radius 🇮 Inner raidus of the solid phase

  • Type: variable name
  • Default: state/ro
solid_reactivity 🇮 Reactivity of the solid phase, between 0 and 1

  • Type: variable name
  • Default: state/R_s

Detailed documentation link

EffectiveSaturation

Calculate the effective saturation, taking the form of \( S = \frac{\frac{\phi}{\phi_\mathrm{max}} - S_r}{1-S_r} \) where \( \phi \) is the volume fraction of the flowing fluid, \( \phi_\mathrm{max} \) is the maximum allowable volume fraction and \( S_r \) is the residual saturation.

effective_saturation 🇴 Effective saturation

  • Type: variable name
  • Default: state/effective_saturation
fluid_fraction 🇮 Volume fraction of the fluid

  • Type: variable name
  • Default: forces/fluid_fraction
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
max_fraction 🇵 Maximum allowable volume fraction of the fluid

  • Type: Scalar 🔗
  • Default: 1
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
residual_saturation 🇵 Liquid's residual volume fraction

  • Type: Scalar 🔗

Detailed documentation link

EffectiveVolume

Calculate the total volume of a control mass. The volume has the form of \( V = \dfrac{M}{1-\phi_{o}} \sum_i \frac{\omega_i}{\rho_i} \), where \( \omega_i \) and \( \rho_i \) are respectively the mass fraction and the density of each component; \( \phi_{o} \) is the volume fraction accounting for leakage from the control mass; \( M \) is the reference mass of the composite.

composite_volume 🇴 Volume of the composite

  • Type: variable name
  • Default: state/V
densities 🇵 Densities of the components in the composite

  • Type: list of Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
mass_fractions Mass fractions of the components in the composite

  • Type: list of variable name
open_volume_fraction 🇮 Open volume fraction accounting for leakage

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_mass 🇵 Reference mass of the composite

  • Type: Scalar 🔗

Detailed documentation link

ElasticStrainRate

Calculates the elastic strain rate as \(\dot{\varepsilon} = d - d^p - \varepsilon w + w \varepsilon \) where \( d \) is the deformation rate, \( d^p \) is the plastic deformation rate, \( w \) is the vorticity, and \( \varepsilon \) is the elastic strain.

deformation_rate 🇮 Name of the deformation rate

  • Type: variable name
  • Default: forces/deformation_rate
elastic_strain 🇮 Name of the elastic strain

  • Type: variable name
  • Default: state/elastic_strain
elastic_strain_rate 🇴 Name of the elastic strain rate

  • Type: variable name
  • Default: state/elastic_strain_rate
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
plastic_deformation_rate 🇮 Name of the plastic deformation rate

  • Type: variable name
  • Default: state/internal/plastic_deformation_rate
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
vorticity 🇮 Name of the vorticity

  • Type: variable name
  • Default: forces/vorticity

Detailed documentation link

ExponentialLawPermeability

Define the relationship between non-dimensionalized porosity and permeability. The exponential porosity-permeability relation takes the form of \( K_0 \exp \left[ a(\varphi_o-\varphi) \right] \) where \( a \) is the scaling parameter; \( \varphi_0 \) and \( K_0 \) are the reference porosity and permeability respectively.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
permeability 🇴 Porous flow permeability

  • Type: variable name
  • Default: state/permeability
porosity 🇮 porosity

  • Type: variable name
  • Default: state/porosity
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_permeability 🇵 the reference permeability

  • Type: Scalar 🔗
reference_porosity 🇵 the reference porosity

  • Type: Scalar 🔗
scale 🇵 Scaling constant in the exponential law

  • Type: Scalar 🔗

Detailed documentation link

FischerBurmeister

By default, if \( a \ge 0, b \ge 0, ab = 0 \) then the Fischer Burmeister (FB) condition is: \(a+b-\sqrt(a^2+b^2)\), where a, b is the first_var and second_var respectively and first_inequality = second_inequality = 'GE'. One could set first_inequality = 'LE' (i.e. \( a \le 0, b \ge 0, ab = 0 \), FB conditions is \(-a+b-\sqrt(a^2+b^2) \)). Same goes for second_inequality = 'LE'.

first_inequality Type of inequality for the first variable.Default: GE. Options are LE, GE

  • Type: EnumSelection
  • Default: GE
first_var 🇮 First condition

  • Type: variable name
  • Default: state/a
fischer_burmeister 🇴 Fischer Burmeister condition

  • Type: variable name
  • Default: state/fb
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
second_inequality Type of inequality for the second variable.Default: GE. Options are LE, GE

  • Type: EnumSelection
  • Default: GE
second_var 🇮 Second condition

  • Type: variable name
  • Default: state/b

Detailed documentation link

FixOrientation

Checks the value of the modified Rodrigues parameter by checking if \( \left\lVert r \right\rVert > t \), with \( t \) a threshold value set to 1.0 by default and replacing all the orientations that exceed this limit with their shadow parameters values.

input_orientation 🇮 Name of input tensor of orientations to operate on.

  • Type: variable name
  • Default: state/orientation
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output_orientation 🇴 Name of output tensor

  • Type: variable name
  • Default: state/orientation
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
threshold Threshold value for translating to the shadow parameters

  • Type: number
  • Default: 1

Detailed documentation link

FredrickArmstrongPlasticHardening

Map the flow rate (i.e., the consistency parameter in the KKT conditions) to the rate of internal variables. This object defines the non-associative Fredrick-Armstrong kinematic hardening. In the model, back stress is directly treated as an internal variable. Rate of back stress is given as \( \dot{\boldsymbol{X}} = \left( \frac{2}{3} C \frac{\partial f}{\partial \boldsymbol{M}} - g \boldsymbol{X} \right) \dot{\gamma} \). \( \frac{\partial f}{\partial \boldsymbol{M}} \) is the flow direction, \( \dot{\gamma} \) is the flow rate, and \( C \) and \( g \) are material parameters.

C 🇵 Kinematic hardening coefficient

  • Type: Scalar 🔗
back_stress 🇮 Back stress

  • Type: variable name
  • Default: state/internal/X
back_stress_rate 🇴 Back stress rate, defaults to back_stress + _rate

  • Type: variable name
flow_direction 🇮 Flow direction

  • Type: variable name
  • Default: state/internal/NM
flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
g 🇵 Dynamic recovery coefficient

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

GTNYieldFunction

Gurson-Tvergaard-Needleman yield function for poroplasticity. The yield function is defined as \( f = \left( \frac{\bar{\sigma}}{\sigma_y + k} \right)^2 + 2 q_1 \phi \cosh \left( \frac{1}{2} q_2 \frac{3\sigma_h-\sigma_s}{\sigma_y + k} \right) - \left( q_3 \phi^2 + 1 \right) \), where \( \bar{\sigma} \) is the von Mises stress, \( \sigma_y \) is the yield stress, \( k \) is isotropic hardening, \( \phi \) is the porosity, \( \sigma_h \) is the hydrostatic stress, and \( \sigma_s \) is the void growth back stress (sintering stress). \( q_1 \), \( q_2 \), and \( q_3 \) are parameters controlling the yield mechanisms.

flow_invariant 🇮 Effective stress driving plastic flow

  • Type: variable name
  • Default: state/internal/se
isotropic_hardening 🇮 Isotropic hardening

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
poro_invariant 🇮 Effective stress driving porous flow

  • Type: variable name
  • Default: state/internal/sp
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
q1 🇵 Parameter controlling the balance/competition between plastic flow and void evolution.

  • Type: Scalar 🔗
q2 🇵 Void evolution rate

  • Type: Scalar 🔗
q3 🇵 Pore pressure

  • Type: Scalar 🔗
void_fraction 🇮 Void fraction (porosity)

  • Type: variable name
  • Default: state/internal/f
yield_function 🇴 Yield function

  • Type: variable name
  • Default: state/internal/fp
yield_stress 🇵 Yield stress

  • Type: Scalar 🔗

Detailed documentation link

GeneralElasticity

Relates elastic strain to stress with some non-isotropic tensor. This verion implements a general relation using the elasticity tensor, expressed as an SSR4 object

compliance Whether the model defines the compliance relationship, i.e., mapping from stress to elastic strain. When set to false (default), the model maps elastic strain to stress.

  • Type: bool
  • Default: false
elastic_stiffness_tensor 🇵 Elastic stiffness tensor

  • Type: SSR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation 🇮 Active convention orientation from reference to current

  • Type: variable name
  • Default: state/orientation
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate_form Whether the model defines the stress-strain relationship in rate form. When set to true, the model maps elastic strain rate to stress rate.

  • Type: bool
  • Default: false
strain 🇮 Elastic strain

  • Type: variable name
  • Default: state/internal/Ee
stress 🇴 Stress

  • Type: variable name
  • Default: state/S

Detailed documentation link

GreenLagrangeStrain

Green-Lagrange strain, \( E = \frac{1}{2} (C - I) \), where \( C = F^T F \) is the right Cauchy-Green tensor and \( I \) is the identity tensor.

deformation_gradient 🇮 The deformation gradient

  • Type: variable name
  • Default: forces/F
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
strain 🇴 The Green-Lagrange strain

  • Type: variable name
  • Default: state/E

Detailed documentation link

GursonCavitation

Local mass balance used in conjunction with the GTNYieldFunction, \( \dot{\phi} = (1-\phi) \dot{\varepsilon}_p \).

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
plastic_strain_rate 🇮 Plastic strain rate

  • Type: variable name
  • Default: state/internal/Ep_rate
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
void_fraction 🇮 Void fraction (porosity)

  • Type: variable name
  • Default: state/internal/f
void_fraction_rate 🇴 Rate of void evolution

  • Type: variable name
  • Default: state/internal/f_rate

Detailed documentation link

HermiteSmoothStep

The smooth step function defined by Hermite polynomials

argument 🇮 Argument of the smooth step function

  • Type: variable name
complement Whether takes 1 to subtract the function.

  • Type: bool
  • Default: false
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
lower_bound 🇧 Lower bound of the argument

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
upper_bound 🇧 Upper bound of the argument

  • Type: Scalar 🔗
value 🇴 Value of the smooth step function

  • Type: variable name

Detailed documentation link

ImplicitUpdate

Update an implicit model by solving the underlying implicit system of equations.

implicit_model The implicit model defining the implicit system of equations to be solved

  • Type: string
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
solver Solver used to solve the implicit system

  • Type: string

Detailed documentation link

IsotropicElasticityTensor

This class defines an isotropic elasticity tensor using two parameters. Various options are available for which two parameters to provide.

coefficient_as_parameter Whether to treat the coefficients as (trainable) parameters. Default is true. Setting this option to false will treat the coefficients as buffers.

  • Type: list of bool
  • Default: 1
coefficient_types Types for each parameter, options are: INVALID, P_WAVE_MODULUS, POISSONS_RATIO, YOUNGS_MODULUS, SHEAR_MODULUS, BULK_MODULUS, LAME_LAMBDA

  • Type: MultiEnumSelection
  • Default: (INVALID)
coefficients 🇵 Coefficients used to define the elasticity tensor

  • Type: list of Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

IsotropicMandelStress

Map Cauchy stress to Mandel stress For isotropic material under small deformation, the Mandel stress and the Cauchy stress coincide.

cauchy_stress 🇮 Cauchy stress

  • Type: variable name
  • Default: state/S
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
mandel_stress 🇴 Mandel stress

  • Type: variable name
  • Default: state/internal/M
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

KocksMeckingActivationEnergy

Calculates the Kocks-Mecking normalized activation as \(g = \frac{kT}{\mu b^3} \log \frac{\dot{\varepsilon}_0}{\dot{\varepsilon}} \) with \( \mu \) the shear modulus, \( k \) the Boltzmann constant, \( T \) the absolute temperature, \( b \) the Burgers vector length, \( \dot{\varepsilon}_0 \) a reference strain rate, and \( \dot{\varepsilon} \) the current strain rate.

activation_energy 🇴 Output name of the activation energy

  • Type: variable name
  • Default: forces/g
b Magnitude of the Burgers vector

  • Type: number
eps0 Reference strain rate

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
k The Boltzmann constant

  • Type: number
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
shear_modulus 🇵 The shear modulus

  • Type: Scalar 🔗
strain_rate 🇮 Name of the effective strain rate

  • Type: variable name
  • Default: forces/effective_strain_rate
temperature 🇮 Absolute temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

KocksMeckingFlowSwitch

Switches between rate independent and rate dependent flow rules based on the value of the Kocks-Mecking normalized activation energy. For activation energies less than the threshold use the rate independent flow rule, for values greater than the threshold use the rate dependent flow rule. This version uses a soft switch between the models, based on a tanh sigmoid function.

activation_energy 🇮 The input name of the activation energy

  • Type: variable name
  • Default: forces/g
flow_rate 🇴 Output name for the mixed flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
g0 🇵 Critical value of activation energy

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate_dependent_flow_rate 🇮 Input name of the rate dependent flow rate

  • Type: variable name
  • Default: state/internal/rd_rate
rate_independent_flow_rate 🇮 Input name of the rate independent flow rate

  • Type: variable name
  • Default: state/internal/ri_rate
sharpness A steepness parameter that controls the tanh mixing of the models. Higher values gives a sharper transition.

  • Type: number
  • Default: 1

Detailed documentation link

KocksMeckingFlowViscosity

Calculates the temperature-dependent flow viscosity for a Perzyna-type model using the Kocks-Mecking model. The value is \( \eta = \exp{B} \mu \dot{\varepsilon}_0^\frac{-k T A}{\mu b^3} \) with \( \mu \) the shear modulus, \( \dot{\varepsilon}_0 \) a reference strain rate, \( b \) the Burgers vector, \( k\) the Boltzmann constant, \( T \) absolute temperature, \( A \) the Kocks-Mecking slope parameter, and \( B \) the Kocks-Mecking intercept parameter.

A 🇵 The Kocks-Mecking slope parameter

  • Type: Scalar 🔗
B 🇵 The Kocks-Mecking intercept parameter

  • Type: Scalar 🔗
b The Burgers vector

  • Type: number
eps0 The reference strain rate

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
k Boltzmann constant

  • Type: number
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
shear_modulus 🇵 The shear modulus

  • Type: Scalar 🔗
temperature 🇮 Absolute temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

KocksMeckingIntercept

The critical value of the normalized activation energy given by \( g_0 \frac{C-B}{A} \)

A 🇵 The Kocks-Mecking slope

  • Type: Scalar 🔗
B 🇵 The Kocks-Mecking intercept

  • Type: Scalar 🔗
C 🇵 The Kocks-Mecking horizontal value

  • Type: Scalar 🔗
intercept 🇴 The intercept

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

KocksMeckingRateSensitivity

Calculates the temperature-dependent rate sensitivity for a Perzyna-type model using the Kocks-Mecking model. The value is \( n = \frac{\mu b^3}{k T A} \) with \( \mu \) the shear modulus, \( b \) the Burgers vector, \( k\) the Boltzmann constant, \( T \) absolute temperature, and \( A \) the Kocks-Mecking slope parameter.

A 🇵 The Kocks-Mecking slope parameter

  • Type: Scalar 🔗
b The Burgers vector

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
k Boltzmann constant

  • Type: number
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
shear_modulus 🇵 The shear modulus

  • Type: Scalar 🔗
temperature 🇮 Absolute temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

KocksMeckingYieldStress

The yield stress given by the Kocks-Mecking model. \( \sigma_y = \exp{C} \mu \) with \( \mu \) the shear modulus and \( C \) the horizontal intercept from the Kocks-Mecking diagram.

C 🇵 The Kocks-Mecking horizontal intercept

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
shear_modulus 🇵 The shear modulus

  • Type: Scalar 🔗

Detailed documentation link

KozenyCarmanPermeability

Define the relationship between non-dimensionalized porosity and permeability. The Kozeny-Carman porosity-permeability relation takes the form of \( K = K_0 \frac{\varphi^n (1-\varphi_0^m)}{\varphi_0^m (1-\varphi)^n} \) where \( n \) and \( m \) are shape parameters. \( varphi_0 \) and \( K_0 \) are the reference porosity and permeability respectively.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
m 🇵 Shape parameter m

  • Type: Scalar 🔗
n 🇵 Shape parameter n

  • Type: Scalar 🔗
permeability 🇴 Porous flow permeability

  • Type: variable name
  • Default: state/permeability
porosity 🇮 porosity

  • Type: variable name
  • Default: state/porosity
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_permeability 🇵 the reference permeability

  • Type: Scalar 🔗
reference_porosity 🇵 the reference porosity

  • Type: Scalar 🔗

Detailed documentation link

LinearIsotropicElasticJ2TrialStressUpdate

Update the trial stress under the assumptions of J2 plasticity and isotropic linear elasticity

coefficient_as_parameter Whether to treat the coefficients as (trainable) parameters. Default is true. Setting this option to false will treat the coefficients as buffers.

  • Type: list of bool
  • Default: 1
coefficient_types Types for each parameter, options are: INVALID, P_WAVE_MODULUS, POISSONS_RATIO, YOUNGS_MODULUS, SHEAR_MODULUS, BULK_MODULUS, LAME_LAMBDA

  • Type: MultiEnumSelection
  • Default: (INVALID)
coefficients 🇵 Coefficients used to define the elasticity tensor

  • Type: list of Scalar 🔗
elastic_trial_stress 🇮 Initial trial stress assuming a purely elastic step

  • Type: variable name
  • Default: forces/s
equivalent_plastic_strain 🇮 Current guess for the equivalent plastic strain

  • Type: variable name
  • Default: state/ep
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
updated_trial_stress 🇴 Trial stress corrected for the current increment of plastic deformation

  • Type: variable name
  • Default: state/s

Detailed documentation link

LinearIsotropicElasticity

Relate elastic strain to stress for linear isotropic material. \( \boldsymbol{\sigma} = K \tr \boldsymbol{\varepsilon}_e + 2 G \text{dev} \boldsymbol{\varepsilon}_e \), where \( K \) and \( G \) are bulk and shear moduli, respectively. Other pairs of Lame parameters are also supported.

coefficient_as_parameter Whether to treat the coefficients as (trainable) parameters. Default is true. Setting this option to false will treat the coefficients as buffers.

  • Type: list of bool
  • Default: 1
coefficient_types Types for each parameter, options are: INVALID, P_WAVE_MODULUS, POISSONS_RATIO, YOUNGS_MODULUS, SHEAR_MODULUS, BULK_MODULUS, LAME_LAMBDA

  • Type: MultiEnumSelection
  • Default: (INVALID)
coefficients 🇵 Coefficients used to define the elasticity tensor

  • Type: list of Scalar 🔗
compliance Whether the model defines the compliance relationship, i.e., mapping from stress to elastic strain. When set to false (default), the model maps elastic strain to stress.

  • Type: bool
  • Default: false
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate_form Whether the model defines the stress-strain relationship in rate form. When set to true, the model maps elastic strain rate to stress rate.

  • Type: bool
  • Default: false
strain 🇮 Elastic strain

  • Type: variable name
  • Default: state/internal/Ee
stress 🇴 Stress

  • Type: variable name
  • Default: state/S

Detailed documentation link

LinearIsotropicHardening

Map equivalent plastic strain to isotropic hardening following a linear relationship, i.e., \( h = K \bar{\varepsilon}_p \) where \( K \) is the hardening modulus.

equivalent_plastic_strain 🇮 Equivalent plastic strain

  • Type: variable name
  • Default: state/internal/ep
hardening_modulus 🇵 Hardening modulus

  • Type: Scalar 🔗
isotropic_hardening 🇴 Isotropic hardening

  • Type: variable name
  • Default: state/internal/k
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

LinearIsotropicStrainEnergyDensity

Calculates elastic strain energy density based on linear elastic isotropic response

coefficient_as_parameter Whether to treat the coefficients as (trainable) parameters. Default is true. Setting this option to false will treat the coefficients as buffers.

  • Type: list of bool
  • Default: 1
coefficient_types Types for each parameter, options are: INVALID, P_WAVE_MODULUS, POISSONS_RATIO, YOUNGS_MODULUS, SHEAR_MODULUS, BULK_MODULUS, LAME_LAMBDA

  • Type: MultiEnumSelection
  • Default: (INVALID)
coefficients 🇵 Coefficients used to define the elasticity tensor

  • Type: list of Scalar 🔗
decomposition Strain energy density decomposition types, options are: VOLDEV, SPECTRAL, NONE

  • Type: EnumSelection
  • Default: NONE
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
strain 🇮 Elastic strain

  • Type: variable name
  • Default: state/internal/Ee
strain_energy_density_active 🇴 Active part of the strain energy density

  • Type: variable name
  • Default: state/psie_active
strain_energy_density_inactive 🇴 Inactive part of the strain energy density

  • Type: variable name
  • Default: state/psie_inactive

Detailed documentation link

LinearKinematicHardening

Map kinematic plastic strain to back stress following a linear relationship, i.e., \( \boldsymbol{X} = H \boldsymbol{K}_p \) where \( H \) is the hardening modulus.

back_stress 🇴 Back stress

  • Type: variable name
  • Default: state/internal/X
hardening_modulus 🇵 Hardening modulus

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
kinematic_plastic_strain 🇮 Kinematic plastic strain

  • Type: variable name
  • Default: state/internal/Kp
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

LinearSingleSlipHardeningRule

Simple linear slip system hardening defined by \( \dot{\tau} = \theta \sum_{i=1}^{n_{slip}} \left| \dot{\gamma}_i \right| \) where \( \theta \) is the hardening slope.

hardening_slope 🇵 Hardening rate

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_hardening 🇮 Name of current values of slip hardening

  • Type: variable name
  • Default: state/internal/slip_hardening
slip_hardening_rate 🇴 Name of tensor to output the slip system hardening rates into

  • Type: variable name
  • Default: state/internal/slip_hardening_rate
sum_slip_rates 🇮 Name of tensor containing the sum of the slip rates

  • Type: variable name
  • Default: state/internal/sum_slip_rates

Detailed documentation link

MillerIndexConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: MillerIndex 🔗

Detailed documentation link

MillerIndexDynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

MillerIndexDynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

MillerIndexInputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

MillerIndexIntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

MillerIndexIntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

MillerIndexParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: MillerIndex 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

MixedControlSetup

Object to setup a model for mixed control. Copies the values of the fixed_values and the mixed_state (the conjugate) into the input variables used by the model.

above_variable 🇴 The prescribed variable when the control signal is greater than the threshold

  • Type: variable name
below_variable 🇴 The prescribed variable when the control signal is less than the threshold

  • Type: variable name
control 🇮 The control signal.

  • Type: variable name
  • Default: forces/control
fixed_values 🇮 The name of the fixed values, i.e. the actual values being imposed on the model

  • Type: variable name
  • Default: forces/fixed_values
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
mixed_state 🇮 The name of the mixed state tensor. This holds the conjugate values to those being controlled

  • Type: variable name
  • Default: state/mixed_state
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
threshold The threshold to switch between the two control

  • Type: SR2 🔗
  • Default: 0.5

Detailed documentation link

Normality

Store the first derivatives of a scalar-valued function in given variables, i.e. \( u_i = \dfrac{f(\boldsymbol{v})}{v_i} \).

from Function arguments to take derivatives w.r.t.

  • Type: list of variable name
function Function to take derivative

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
model The model which evaluates the scalar-valued function

  • Type: string
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to Variables to store the first derivatives

  • Type: list of variable name

Detailed documentation link

OlevskySinteringStress

Define the Olevsky-Skorohod sintering stress to be used in conjunction with poroplasticity yield functions such as the GTNYieldFunction. The sintering stress is defined as \( \sigma_s = 3 \dfrac{\gamma}{r} \phi^2 \), where \( \gamma \) is the surface tension, \( r \) is the size of the particles/powders, and \( \phi \) is the void fraction.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
particle_radius 🇵 Particle radius

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
sintering_stress 🇴 Sintering stress

  • Type: variable name
  • Default: state/internal/ss
surface_tension 🇵 Surface tension

  • Type: Scalar 🔗
void_fraction 🇮 Void fraction

  • Type: variable name
  • Default: state/internal/f

Detailed documentation link

OrientationRate

Defines the rate of the crystal orientations as a spin given by \( \Omega^e = w - w^p - \varepsilon d^p + d^p \varepsilon \) where \( \Omega^e = \dot{Q} Q^T \), \( Q \) is the orientation, \( w \) is the vorticity, \( w^p \) is the plastic vorticity, \( d^p \) is the plastic deformation rate, and \( \varepsilon \) is the elastic stretch.

elastic_strain 🇮 The name of the elastic strain tensor

  • Type: variable name
  • Default: state/elastic_strain
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation_rate 🇴 The name of the orientation rate (spin)

  • Type: variable name
  • Default: state/orientation_rate
plastic_deformation_rate 🇮 The name of the plastic deformation rate

  • Type: variable name
  • Default: state/internal/plastic_deformation_rate
plastic_vorticity 🇮 The name of the plastic vorticity

  • Type: variable name
  • Default: state/internal/plastic_vorticity
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
vorticity 🇮 The name of the voriticty tensor

  • Type: variable name
  • Default: forces/vorticity

Detailed documentation link

PerzynaPlasticFlowRate

Perzyna's viscous approximation of the consistent yield envelope (with a power law), i.e. \( \dot{\gamma} = \left( \frac{\left< f \right>}{\eta} \right)^n \), where \( f \) is the yield function, \( \eta \) is the reference stress, and \( n \) is the power-law exponent.

exponent 🇵 Power-law exponent

  • Type: Scalar 🔗
flow_rate 🇴 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_stress 🇵 Reference stress

  • Type: Scalar 🔗
yield_function 🇮 Yield function

  • Type: variable name
  • Default: state/internal/fp

Detailed documentation link

PhaseTransformationEigenstrain

Define the (cummulative, as opposed to instantaneous) linear isotropic phase transformation (from phase A to phase B) eigenstrain, i.e. \( \boldsymbol{\varepsilon}_\mathrm{PT} = \Delta V f \boldsymbol{I} \), where \( \Delta V \) is the volume fraction change when going from phase A to B, \( f \) is the phase fraction (0 to 1, A to B).

eigenstrain 🇴 Eigenstrain

  • Type: variable name
  • Default: forces/Eg
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase_fraction 🇮 Phase fraction

  • Type: variable name
  • Default: state/f
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
volume_fraction_change 🇮 Change in volume fraction going from phase A to phase B

  • Type: variable name
  • Default: state/dv

Detailed documentation link

PlasticDeformationRate

Caclulates the plastic deformation rate as \( d^p = \sum_{i=1}^{n_{slip}} \dot{\gamma}_i Q \operatorname{sym}{\left(d_i \otimes n_i \right)} Q^T \) with \( d^p \) the plastic deformation rate, \( \dot{\gamma}_i \) the slip rate on the ith slip system, \(Q \) the orientation, \( d_i \) the slip system direction, and \( n_i \) the slip system normal.

crystal_geometry The name of the Data object containing the crystallographic information for the material

  • Type: string
  • Default: crystal_geometry
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation 🇮 The name of the orientation matrix tensor

  • Type: variable name
  • Default: state/orientation_matrix
plastic_deformation_rate 🇴 The name of the plastic deformation rate tensor

  • Type: variable name
  • Default: state/internal/plastic_deformation_rate
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_rates 🇮 The name of the tensor containg the current slip rates

  • Type: variable name
  • Default: state/internal/slip_rates

Detailed documentation link

PlasticSpatialVelocityGradient

Caclulates the plastic spatial velocity gradient as \( l^p = \sum_{i=1}^{n_{slip}} \dot{\gamma}_i Q \left(d_i \otimes n_i \right) Q^T \) with \( l^p \) the plastic spatial velocity gradient, \( \dot{\gamma}_i \) the slip rate on the ith slip system, \(Q \) the orientation, \( d_i \) the slip system direction, and \( n_i \) the slip system normal.

crystal_geometry The name of the Data object containing the crystallographic information for the material

  • Type: string
  • Default: crystal_geometry
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation 🇮 The name of the orientation matrix tensor

  • Type: variable name
  • Default: state/orientation_matrix
plastic_spatial_velocity_gradient 🇴 The name of the plastic spatial velocity gradient

  • Type: variable name
  • Default: state/internal/plastic_spatial_velocity_gradient
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_rates 🇮 The name of the tensor containg the current slip rates

  • Type: variable name
  • Default: state/internal/slip_rates

Detailed documentation link

PlasticVorticity

Caclulates the plastic vorcitity as \( w^p = \sum_{i=1}^{n_{slip}} \dot{\gamma}_i Q \operatorname{skew}{\left(d_i \otimes n_i \right)} Q^T \) with \( d^p \) the plastic deformation rate, \( \dot{\gamma}_i \) the slip rate on the ith slip system, \(Q \) the orientation, \( d_i \) the slip system direction, and \( n_i \) the slip system normal.

crystal_geometry The name of the Data object containing the crystallographic information for the material

  • Type: string
  • Default: crystal_geometry
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation 🇮 The name of the orientation matrix tensor

  • Type: variable name
  • Default: state/orientation_matrix
plastic_vorticity 🇴 The name of the plastic vorticity tensor

  • Type: variable name
  • Default: state/internal/plastic_vorticity
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_rates 🇮 The name of the tensor containg the current slip rates

  • Type: variable name
  • Default: state/internal/slip_rates

Detailed documentation link

PowerDegradationFunction

Power degradation function to degrade the elastic strain energy density, \( g = \left( 1-d \right)^p (1-\eta) + \eta \)

degradation 🇴 Value of the dedgradation function

  • Type: variable name
  • Default: state/g
eta Residual degradation when d = 1

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase 🇮 Phase-field variable

  • Type: variable name
  • Default: state/d
power Power of the degradation function

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

PowerLawIsotropicHardeningStaticRecovery

This particular model implements a power law recovery of the type \( \dot{k} = -\left(\frac{\lVert k \rVert}{\tau}\right)^{n-1} \frac{k}{\tau} \)

isotropic_hardening 🇮 Isotropic hardening variable

  • Type: variable name
  • Default: state/internal/k
isotropic_hardening_rate 🇮 Rate of isotropic hardening, defaults to isotropic_hardening + _recovery_rate

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
n 🇵 Recovery exponent

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
tau 🇵 Recovery rate

  • Type: Scalar 🔗

Detailed documentation link

PowerLawKinematicHardeningStaticRecovery

This object defines kinematic hardening static recovery on a backstress term. This particular model uses a power law for recovery \( \dot{X} = - \left(\frac{\lVert X \rVert}{\tau}\right)^{n-1} \frac{X}{\tau} \)where \( n \) is the power law recovery exponent and \(\tau\) is the recovery rate.

back_stress 🇮 Back stress

  • Type: variable name
  • Default: state/internal/X
back_stress_rate 🇴 Back stress rate, defaults to back_stress + _recovery_rate

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
n 🇵 Static recovery exponent

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
tau 🇵 Static recovery rate

  • Type: Scalar 🔗

Detailed documentation link

PowerLawPermeability

Define the relationship between non-dimensionalized porosity and permeability. The power law porosity-permeability relation takes the form of \( K_0 \left( \frac{\varphi}{\varphi_0} \right)^p \). \( varphi_0 \) and \( K_0 \) are the reference porosity and permeability respectively.

exponent 🇵 Exponent in the power law

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
permeability 🇴 Porous flow permeability

  • Type: variable name
  • Default: state/permeability
porosity 🇮 porosity

  • Type: variable name
  • Default: state/porosity
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_permeability 🇵 the reference permeability

  • Type: Scalar 🔗
reference_porosity 🇵 the reference porosity

  • Type: Scalar 🔗

Detailed documentation link

PowerLawSlipRule

Power law slip rule defined as \( \dot{\gamma}_i = \dot{\gamma}_0 \left| \frac{\tau_i}{\hat{\tau}_i} \right|^{n-1} \frac{\tau_i}{\hat{\tau}_i} \) with \( \dot{\gamma}_i \) the slip rate on system \( i \), \( \tau_i \) the resolved shear, \( \hat{\tau}_i \) the slip system strength, \( n \) the rate senstivity, and \( \dot{\gamma}_0 \) a reference slip rate.

gamma0 🇵 Reference slip rate

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
n 🇵 Rate sensitivity exponent

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
resolved_shears 🇮 Name of the resolved shear tensor

  • Type: variable name
  • Default: state/internal/resolved_shears
slip_rates 🇴 Name of the slip rate tensor

  • Type: variable name
  • Default: state/internal/slip_rates
slip_strengths 🇮 Name of the tensor containing the slip system strengths

  • Type: variable name
  • Default: state/internal/slip_strengths

Detailed documentation link

QuaternionConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: Quaternion 🔗

Detailed documentation link

QuaternionDynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

QuaternionDynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

QuaternionInputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

QuaternionIntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

QuaternionIntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

QuaternionParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: Quaternion 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

R2BackwardEulerTimeIntegration

Define the backward Euler time integration residual \( r = s - s_n - (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 Variable being integrated

  • Type: variable name

Detailed documentation link

R2ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: R2 🔗

Detailed documentation link

R2Determinant

Calculate the Jacobian of a second order tensor.

determinant 🇴 The determinant of the input tensor

  • Type: variable name
  • Default: state/J
input 🇮 The second order tensor to calculate the determinant of

  • Type: variable name
  • Default: state/F
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

R2DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R2DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R2IncrementToRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{\Delta f}{t-t_n} \), where \( \Delta f \) is the variable with the increment, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The incremental value

  • Type: variable name

Detailed documentation link

R2InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

R2IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R2IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R2LinearCombination

Calculate linear combination of multiple R2 tensors as \( u = c_i v_i + s \) (Einstein summation assumed), where \( c_i \) are the coefficients, and \( v_i \) are the variables to be summed. \( s \) is a constant offset.

coefficient_as_parameter By default, the coefficients are declared as buffers. Set this option to true to declare them as (trainable) parameters. This option takes a list of booleans, one for each coefficient. When the length of this list is 1, the boolean applies to all coefficients.

  • Type: list of bool
coefficients 🇵 Weights associated with each variable. This option takes a list of weights, one for each coefficient. When the length of this list is 1, the same weight applies to all coefficients.

  • Type: list of Scalar 🔗
  • Default: 1
constant_coefficient 🇵 The constant coefficient added to the final summation

  • Type: Scalar 🔗
constant_coefficient_as_parameter By default, the constant_coefficient are declared as buffers. Set this option to true to declare them as (trainable) parameters.

  • Type: bool
  • Default: false
from_var R2 tensors to be summed

  • Type: list of variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to_var 🇴 The sum

  • Type: variable name

Detailed documentation link

R2Multiplication

Multiplication of form \( A B \), where \( A \) and \( B \) are second order tensors. A and B can be inverted and/or transposed per request.

A Variable A

  • Type: variable name
B Variable B

  • Type: variable name
invert_A Whether to invert A

  • Type: bool
  • Default: false
invert_B Whether to invert B

  • Type: bool
  • Default: false
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The result of the multiplication

  • Type: variable name
transpose_A Whether to transpose A

  • Type: bool
  • Default: false
transpose_B Whether to transpose B

  • Type: bool
  • Default: false

Detailed documentation link

R2ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: R2 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

R2toSR2

Extract the symmetric part of a R2 tensor

input 🇮 Rank two tensor to split

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output 🇴 Output symmetric rank two tensor

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

R2toWR2

Extract the skew symmetric part of a R2 tensor

input 🇮 Rank two tensor to split

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output 🇴 Output skew symmetric rank two tensor

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

R3ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: R3 🔗

Detailed documentation link

R3DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R3DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R3InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

R3IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R3IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R3ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: R3 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

R4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: R4 🔗

Detailed documentation link

R4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

R4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

R4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: R4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

RateIndependentPlasticFlowConstraint

Solve the consistent plasticity yield envelope by solving the equivalent complementarity condition

\[ r = \dot{\gamma} - f^p - \sqrt{{\dot{\gamma}}^2 + {f^p}^2} \]

flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
yield_function 🇮 Yield function

  • Type: variable name
  • Default: state/internal/fp

Detailed documentation link

RationalDegradationFunction

Power degradation function to degrade the elastic strain energy density, \( g = \frac{\left( 1-d \right)^p}{\left( 1-d \right)^p + Q\left(d \right)} \) where, \( Q\left(d \right) = b_{1}d\left( 1+b_{2}d+b_{2}b_{3}d^2 \right)\)

degradation 🇴 Value of the dedgradation function

  • Type: variable name
  • Default: state/g
eta Residual degradation when d = 1

  • Type: number
fitting_param_1 Material dependent fitting parameter 1

  • Type: Scalar 🔗
fitting_param_2 Material dependent fitting parameter 2

  • Type: Scalar 🔗
fitting_param_3 Material dependent fitting parameter 3

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase 🇮 Phase-field variable

  • Type: variable name
  • Default: state/d
power Power of the degradation function

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ResolvedShear

Calculates the resolved shears as \( \tau_i = \sigma : Q \operatorname{sym}\left(d_i \otimes n_i \right) Q^T \) where \( \tau_i \) is the resolved shear on slip system i, \( \sigma \) is the Cauchy stress \( Q \) is the orientation matrix, \( d_i \) is the slip direction, and \( n_i \) is the slip system normal.

crystal_geometry The name of the data object with the crystallographic information

  • Type: string
  • Default: crystal_geometry
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
orientation 🇮 The name of the orientation matrix

  • Type: variable name
  • Default: state/orientation_matrix
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
resolved_shears 🇴 The name of the resolved shears

  • Type: variable name
  • Default: state/internal/resolved_shears
stress 🇮 The name of the Cauchy stress tensor

  • Type: variable name
  • Default: state/internal/cauchy_stress

Detailed documentation link

RotConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: Rot 🔗

Detailed documentation link

RotDynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

RotDynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

RotInputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

RotIntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

RotIntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

RotParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: Rot 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

RotationMatrix

Convert a Rot (rotation represented in Rodrigues format) to R2 (a full rotation matrix).

from 🇮 Rot to convert

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 R2 to store the resulting rotation matrix

  • Type: variable name

Detailed documentation link

SFFR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: SFFR4 🔗

Detailed documentation link

SFFR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFFR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFFR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

SFFR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFFR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFFR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: SFFR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

SFR3ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: SFR3 🔗

Detailed documentation link

SFR3DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFR3DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFR3InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

SFR3IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFR3IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SFR3ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: SFR3 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

SR2BackwardEulerTimeIntegration

Define the backward Euler time integration residual \( r = s - s_n - (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 Variable being integrated

  • Type: variable name

Detailed documentation link

SR2BilinearInterpolation

Interpolate a SR2 as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a bilinear interpolation.

abscissa1 Scalar defining the abscissa values of the first interpolation axis

  • Type: Scalar 🔗
abscissa2 Scalar defining the abscissa values of the second interpolation axis

  • Type: Scalar 🔗
argument1 🇮 First argument used to query the interpolant along the first axis

  • Type: variable name
argument2 🇮 Second argument used to query the interpolant along the second axis

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate SR2 defining the ordinate values of the interpolant

  • Type: SR2 🔗
output 🇴 SR2 output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

SR2ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: SR2 🔗

Detailed documentation link

SR2Determinant

Calculate the Jacobian of a second order tensor.

determinant 🇴 The determinant of the input tensor

  • Type: variable name
  • Default: state/J
input 🇮 The second order tensor to calculate the determinant of

  • Type: variable name
  • Default: state/F
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

SR2DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SR2DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SR2ForwardEulerTimeIntegration

Perform forward Euler time integration defined as \( s = s_n + (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇴 Variable being integrated

  • Type: variable name

Detailed documentation link

SR2IncrementToRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{\Delta f}{t-t_n} \), where \( \Delta f \) is the variable with the increment, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The incremental value

  • Type: variable name

Detailed documentation link

SR2InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

SR2IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SR2IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SR2Invariant

Calculate the invariant of a symmetric second order tensor (of type SR2).

invariant 🇴 Invariant

  • Type: variable name
invariant_type Type of invariant. Options are: INVALID, EFFECTIVE_STRAIN, VONMISES, I2, I1

  • Type: EnumSelection
  • Default: INVALID
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
tensor 🇮 SR2 which is used to calculate the invariant of

  • Type: variable name

Detailed documentation link

SR2LinearCombination

Calculate linear combination of multiple SR2 tensors as \( u = c_i v_i + s \) (Einstein summation assumed), where \( c_i \) are the coefficients, and \( v_i \) are the variables to be summed. \( s \) is a constant offset.

coefficient_as_parameter By default, the coefficients are declared as buffers. Set this option to true to declare them as (trainable) parameters. This option takes a list of booleans, one for each coefficient. When the length of this list is 1, the boolean applies to all coefficients.

  • Type: list of bool
coefficients 🇵 Weights associated with each variable. This option takes a list of weights, one for each coefficient. When the length of this list is 1, the same weight applies to all coefficients.

  • Type: list of Scalar 🔗
  • Default: 1
constant_coefficient 🇵 The constant coefficient added to the final summation

  • Type: Scalar 🔗
constant_coefficient_as_parameter By default, the constant_coefficient are declared as buffers. Set this option to true to declare them as (trainable) parameters.

  • Type: bool
  • Default: false
from_var SR2 tensors to be summed

  • Type: list of variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to_var 🇴 The sum

  • Type: variable name

Detailed documentation link

SR2LinearInterpolation

Interpolate a SR2 as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a linear interpolation.

abscissa Scalar defining the abscissa values of the interpolant

  • Type: Scalar 🔗
argument 🇮 Argument used to query the interpolant

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
  • Default: -1
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate SR2 defining the ordinate values of the interpolant

  • Type: SR2 🔗
output 🇴 SR2 output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

SR2ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: SR2 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

SR2TwoStageThermalAnnealing

Thermal annealing recovery for a hardening variable of type SR2.For temperatures below \( T_1 \) the model keeps the base model hardenign rate.For temperatures above \(T_1\) but below \(T_2 \) the model zeros the hardening rate.For temperatures above \(T_2\) the model replaces the hardening rate with \( \dot{h} = \frac{-h}{\tau} \) where \( \tau \) is the rate of recovery.

T1 🇵 First stage annealing temperature

  • Type: Scalar 🔗
T2 🇵 Second stage annealing temperature

  • Type: Scalar 🔗
base 🇮 Underlying base hardening variable

  • Type: variable name
base_rate 🇮 Base hardening rate

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
modified_rate 🇴 Output for the modified hardening rate.

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
tau 🇵 Recovery rate for second stage annealing.

  • Type: Scalar 🔗
temperature 🇮 Temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

SR2VariableRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{f-f_n}{t-t_n} \), where \( f \) is the force variable, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The variable to take time derivative with

  • Type: variable name

Detailed documentation link

SR2toR2

Convert a symmetric rank two tensor to a full tensor

input 🇮 Symmetric tensor to convert

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output 🇴 Output full rank two tensor

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

SSR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: SSR4 🔗

Detailed documentation link

SSR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SSR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SSR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

SSR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SSR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SSR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: SSR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

SWR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: SWR4 🔗

Detailed documentation link

SWR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SWR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SWR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

SWR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SWR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

SWR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: SWR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

ScalarBackwardEulerTimeIntegration

Define the backward Euler time integration residual \( r = s - s_n - (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 Variable being integrated

  • Type: variable name

Detailed documentation link

ScalarBilinearInterpolation

Interpolate a Scalar as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a bilinear interpolation.

abscissa1 Scalar defining the abscissa values of the first interpolation axis

  • Type: Scalar 🔗
abscissa2 Scalar defining the abscissa values of the second interpolation axis

  • Type: Scalar 🔗
argument1 🇮 First argument used to query the interpolant along the first axis

  • Type: variable name
argument2 🇮 Second argument used to query the interpolant along the second axis

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate Scalar defining the ordinate values of the interpolant

  • Type: Scalar 🔗
output 🇴 Scalar output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ScalarConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: Scalar 🔗

Detailed documentation link

ScalarDynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

ScalarDynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

ScalarForwardEulerTimeIntegration

Perform forward Euler time integration defined as \( s = s_n + (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇴 Variable being integrated

  • Type: variable name

Detailed documentation link

ScalarIncrementToRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{\Delta f}{t-t_n} \), where \( \Delta f \) is the variable with the increment, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The incremental value

  • Type: variable name

Detailed documentation link

ScalarInputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

ScalarIntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

ScalarIntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

ScalarLinearCombination

Calculate linear combination of multiple Scalar tensors as \( u = c_i v_i + s \) (Einstein summation assumed), where \( c_i \) are the coefficients, and \( v_i \) are the variables to be summed. \( s \) is a constant offset.

coefficient_as_parameter By default, the coefficients are declared as buffers. Set this option to true to declare them as (trainable) parameters. This option takes a list of booleans, one for each coefficient. When the length of this list is 1, the boolean applies to all coefficients.

  • Type: list of bool
coefficients 🇵 Weights associated with each variable. This option takes a list of weights, one for each coefficient. When the length of this list is 1, the same weight applies to all coefficients.

  • Type: list of Scalar 🔗
  • Default: 1
constant_coefficient 🇵 The constant coefficient added to the final summation

  • Type: Scalar 🔗
constant_coefficient_as_parameter By default, the constant_coefficient are declared as buffers. Set this option to true to declare them as (trainable) parameters.

  • Type: bool
  • Default: false
from_var Scalar tensors to be summed

  • Type: list of variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to_var 🇴 The sum

  • Type: variable name

Detailed documentation link

ScalarLinearInterpolation

Interpolate a Scalar as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a linear interpolation.

abscissa Scalar defining the abscissa values of the interpolant

  • Type: Scalar 🔗
argument 🇮 Argument used to query the interpolant

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
  • Default: -1
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate Scalar defining the ordinate values of the interpolant

  • Type: Scalar 🔗
output 🇴 Scalar output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ScalarMultiplication

Calculate the multiplication (product) of multiple Scalar variable with a constant coefficient. Using reciprocal, one can have the reciprocity of variable 'a', aka. '1/a'

coefficient 🇵 The coefficient multiply to the final product

  • Type: Scalar 🔗
  • Default: 1
from_var Scalar variables to be multiplied

  • Type: list of variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reciprocal List of boolens, one for each variable, in which the reciprocity of the corresponding variable is taken. When the length of this list is 1, the same reciprocal condition applies to all variables.

  • Type: list of bool
to_var 🇴 The multiplicative product

  • Type: variable name

Detailed documentation link

ScalarParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

ScalarToDiagonalSR2

Create a diagonal symmetric rank 2 tensor with values filled by a scalar

input 🇮 Symmetric tensor to convert

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output 🇴 Output full rank two tensor

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

ScalarTwoStageThermalAnnealing

Thermal annealing recovery for a hardening variable of type Scalar.For temperatures below \( T_1 \) the model keeps the base model hardenign rate.For temperatures above \(T_1\) but below \(T_2 \) the model zeros the hardening rate.For temperatures above \(T_2\) the model replaces the hardening rate with \( \dot{h} = \frac{-h}{\tau} \) where \( \tau \) is the rate of recovery.

T1 🇵 First stage annealing temperature

  • Type: Scalar 🔗
T2 🇵 Second stage annealing temperature

  • Type: Scalar 🔗
base 🇮 Underlying base hardening variable

  • Type: variable name
base_rate 🇮 Base hardening rate

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
modified_rate 🇴 Output for the modified hardening rate.

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
tau 🇵 Recovery rate for second stage annealing.

  • Type: Scalar 🔗
temperature 🇮 Temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

ScalarVariableRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{f-f_n}{t-t_n} \), where \( f \) is the force variable, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The variable to take time derivative with

  • Type: variable name

Detailed documentation link

SingleSlipStrengthMap

Calculates the slip system strength for all slip systems as \( \hat{\tau}_i = \bar{\tau} + \tau_0 \) where \( \hat{\tau}_i \) is the strength for slip system i, \( \bar{\tau} \) is an evolving slip system strength (one value of all systems), defined by another object, and \( \tau_0 \) is a constant strength.

constant_strength 🇵 The constant slip system strength

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_hardening 🇮 The name of the evolving, scalar strength

  • Type: variable name
  • Default: state/internal/slip_hardening
slip_strengths 🇴 Name of the slip system strengths

  • Type: variable name
  • Default: state/internal/slip_strengths

Detailed documentation link

SlopeSaturationVoceIsotropicHardening

SlopeSaturationVoce isotropic hardening model, \( \dot{h} = \theta_0 \left(1 - \frac{h}{R} \right) \varepsilon_p \), where \( R \) is the isotropic hardening upon saturation, and \( \theta_0 \) is the initial hardening rate. In addition to the reparameterization, this model differences from the VoceIsotropicHardening model in that it defines the hardening rate in a non-assocative manner. This is sometimes handy, for example in supplementing the model with static recovery.

flow_rate 🇮 Flow rate

  • Type: variable name
  • Default: state/internal/gamma_rate
initial_hardening_rate 🇵 Initial hardening rate

  • Type: Scalar 🔗
isotropic_hardening 🇮 Isotropic hardening variable

  • Type: variable name
  • Default: state/internal/k
isotropic_hardening_rate 🇮 Rate of isotropic hardening, defaults to isotropic_hardening + _rate

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
saturated_hardening 🇵 Saturated isotropic hardening

  • Type: Scalar 🔗

Detailed documentation link

SumSlipRates

Calculates the sum of the absolute value of all the slip rates as \( \sum_{i=1}^{n_{slip}} \left| \dot{\gamma}_i \right| \).

dim The intermediate dimension over which to sum the slip rates.

  • Type: number
  • Default: -1
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
slip_rates 🇮 The name of individual slip rates

  • Type: variable name
  • Default: state/internal/slip_rates
sum_slip_rates 🇴 The output name for the scalar sum of the slip rates

  • Type: variable name
  • Default: state/internal/sum_slip_rates

Detailed documentation link

SwellingAndPhaseChangeDeformationJacobian

Define the linear isotropic phase change deformation Jacobian for a freezing liquid or a melting solid, i.e. \( J = \left( 1 + \alpha c \phi^f + (1-c) \phi^f \Delta \Omega \right) \), where \( \alpha \) is the coefficient of swelling, \( \Delta \Omega \) is relative difference of the reference volume between the two phases, \( \phi^f \) is the fluid fraction associated with swelling, and \( c \) is the phase fraction.

fluid_fraction 🇮 Volume fraction of the fluid phase.

  • Type: variable name
  • Default: state/phi_f
jacobian Phase change deformation Jacobian

  • Type: variable name
  • Default: state/J
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
phase_fraction 🇵 Phase fraction during the phase change. 0 means all solid, 1 means all liquid.

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_volume_difference 🇵 Relative difference between the reference volumes of the two phases.

  • Type: Scalar 🔗
swelling_coefficient 🇵 Coefficient of phase expansion

  • Type: Scalar 🔗

Detailed documentation link

SymmetricHermiteInterpolation

Define the symmetric Hermite interpolation function, taking the form of \( \dfrac{1}{x_h-x_l}(24c^2-32c^3) \) for \( 0 le c le 0.5 \); \( \dfrac{1}{x_h-x_l} (24(1-c)^2 - 32(1-c)^3) \) for \( 0.5 le c le 1 \), and 0.0 otherwise. Here, \( c = \frac{x-x_l}{x_h-x_l} \) where \(x_l\) and \(x_h\) are the lower and upper bound for rescaling the input argument.

argument 🇮 Argument of the smooth step function

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
lower_bound 🇧 Lower bound of the argument

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
upper_bound 🇧 Upper bound of the argument

  • Type: Scalar 🔗
value 🇴 Value of the smooth step function

  • Type: variable name

Detailed documentation link

ThermalDeformationJacobian

Define the linear isotropic thermal deformation Jacobian, i.e. \( J = 1 + \alpha (T - T_0) \), where \( \alpha \) is the coefficient of thermal expansion (CTE), \( T \) is the temperature, and \( T_0 \) is the reference (stress-free) temperature.

CTE 🇵 Coefficient of thermal expansion

  • Type: Scalar 🔗
jacobian Thermal deformation Jacobian

  • Type: variable name
  • Default: state/J
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_temperature 🇧 Reference (stress-free) temperature

  • Type: Scalar 🔗
temperature 🇮 Temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

ThermalEigenstrain

Define the (cummulative, as opposed to instantaneous) linear isotropic thermal eigenstrain, i.e. \( \boldsymbol{\varepsilon}_T = \alpha (T - T_0) \boldsymbol{I} \), where \( \alpha \) is the coefficient of thermal expansion (CTE), \( T \) is the temperature, and \( T_0 \) is the reference (stress-free) temperature.

CTE 🇵 Coefficient of thermal expansion

  • Type: Scalar 🔗
eigenstrain 🇴 Eigenstrain

  • Type: variable name
  • Default: forces/Eg
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_temperature 🇧 Reference (stress-free) temperature

  • Type: Scalar 🔗
temperature 🇮 Temperature

  • Type: variable name
  • Default: forces/T

Detailed documentation link

VanGenuchtenCapillaryPressure

Relate the porous flow capillary pressure to the effective saturation using the van Genuchten correlation for capillary pressure, taking the form of \( a \left( S_e^{-\frac{1}{m}} - 1 \right)^{1-m} \). Here \( S_e \) is the effective saturation, \( a \) and \( m \) are shape parameters

a 🇵 Shape parameter a

  • Type: Scalar 🔗
capillary_pressure 🇴 Capillary pressure.

  • Type: variable name
  • Default: state/Pc
effective_saturation 🇮 The effective saturation

  • Type: variable name
  • Default: state/S
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
log_extension Whether to apply logarithmic extension

  • Type: bool
  • Default: false
m 🇵 Shape parameter m

  • Type: Scalar 🔗
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
transition_saturation The transistion value of the effective saturation below which to apply the logarithmic extension

  • Type: number

Detailed documentation link

VecBackwardEulerTimeIntegration

Define the backward Euler time integration residual \( r = s - s_n - (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 Variable being integrated

  • Type: variable name

Detailed documentation link

VecBilinearInterpolation

Interpolate a Vec as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a bilinear interpolation.

abscissa1 Scalar defining the abscissa values of the first interpolation axis

  • Type: Scalar 🔗
abscissa2 Scalar defining the abscissa values of the second interpolation axis

  • Type: Scalar 🔗
argument1 🇮 First argument used to query the interpolant along the first axis

  • Type: variable name
argument2 🇮 Second argument used to query the interpolant along the second axis

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate Vec defining the ordinate values of the interpolant

  • Type: Vec 🔗
output 🇴 Vec output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

VecConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: Vec 🔗

Detailed documentation link

VecDynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

VecDynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

VecForwardEulerTimeIntegration

Perform forward Euler time integration defined as \( s = s_n + (t - t_n) \dot{s} \), where \(s\) is the variable being integrated, \(\dot{s}\) is the variable rate, and \(t\) is time. Subscripts \(n\) denote quantities from the previous time step.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇴 Variable being integrated

  • Type: variable name

Detailed documentation link

VecIncrementToRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{\Delta f}{t-t_n} \), where \( \Delta f \) is the variable with the increment, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The incremental value

  • Type: variable name

Detailed documentation link

VecInputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

VecIntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

VecIntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

VecLinearCombination

Calculate linear combination of multiple Vec tensors as \( u = c_i v_i + s \) (Einstein summation assumed), where \( c_i \) are the coefficients, and \( v_i \) are the variables to be summed. \( s \) is a constant offset.

coefficient_as_parameter By default, the coefficients are declared as buffers. Set this option to true to declare them as (trainable) parameters. This option takes a list of booleans, one for each coefficient. When the length of this list is 1, the boolean applies to all coefficients.

  • Type: list of bool
coefficients 🇵 Weights associated with each variable. This option takes a list of weights, one for each coefficient. When the length of this list is 1, the same weight applies to all coefficients.

  • Type: list of Scalar 🔗
  • Default: 1
constant_coefficient 🇵 The constant coefficient added to the final summation

  • Type: Scalar 🔗
constant_coefficient_as_parameter By default, the constant_coefficient are declared as buffers. Set this option to true to declare them as (trainable) parameters.

  • Type: bool
  • Default: false
from_var Vec tensors to be summed

  • Type: list of variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to_var 🇴 The sum

  • Type: variable name

Detailed documentation link

VecLinearInterpolation

Interpolate a Vec as a function of the given argument. See neml2::Interpolation for rules on shapes of the interpolant and the argument. This object performs a linear interpolation.

abscissa Scalar defining the abscissa values of the interpolant

  • Type: Scalar 🔗
argument 🇮 Argument used to query the interpolant

  • Type: variable name
dim Intermediate dimension along which to interpolate

  • Type: number
  • Default: -1
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
ordinate Vec defining the ordinate values of the interpolant

  • Type: Vec 🔗
output 🇴 Vec output of the interpolant

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

VecParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: Vec 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

VecVariableRate

Calculate the first order discrete time derivative of a variable as \( \dot{f} = \frac{f-f_n}{t-t_n} \), where \( f \) is the force variable, and \( t \) is time.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇴 The variable's rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 The variable to take time derivative with

  • Type: variable name

Detailed documentation link

VoceIsotropicHardening

Voce isotropic hardening model, \( h = R \left[ 1 - \exp(-d \bar{\varepsilon}_p) \right] \), where \( R \) is the isotropic hardening upon saturation, and \( d \) is the hardening rate.

equivalent_plastic_strain 🇮 Equivalent plastic strain

  • Type: variable name
  • Default: state/internal/ep
isotropic_hardening 🇴 Isotropic hardening

  • Type: variable name
  • Default: state/internal/k
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
saturated_hardening 🇵 Saturated isotropic hardening

  • Type: Scalar 🔗
saturation_rate 🇵 Hardening saturation rate

  • Type: Scalar 🔗

Detailed documentation link

VoceSingleSlipHardeningRule

Voce hardening for a SingleSlipStrength type model defined by \( \dot{\tau} = \theta_0 \left( 1 - \frac{\tau}{\tau_f} \right) \sum_{i=1}^{n_{slip}} \left| \dot{\gamma}_i \right| \) where \( \theta_0 \) is the initial rate of work hardening, \( \tau_f \) is the saturated, maximum value of the slip system strength, and \( \dot{\gamma}_i \) is the slip rate on each system.

initial_slope 🇵 The initial rate of hardening

  • Type: Scalar 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
saturated_hardening 🇵 The final, saturated value of the slip system strength

  • Type: Scalar 🔗
slip_hardening 🇮 Name of current values of slip hardening

  • Type: variable name
  • Default: state/internal/slip_hardening
slip_hardening_rate 🇴 Name of tensor to output the slip system hardening rates into

  • Type: variable name
  • Default: state/internal/slip_hardening_rate
sum_slip_rates 🇮 Name of tensor containing the sum of the slip rates

  • Type: variable name
  • Default: state/internal/sum_slip_rates

Detailed documentation link

VolumeAdjustDeformationGradient

Calculate the volume-adjusted deformation gradient, i.e. \( F_e = J^{-\frac{1}/{3}} F \), where \( F \) is the pre-adjusted deformation gradient and \( J \) is the total jacobian of the volumetric deformation gradients to be removed.

input 🇮 Input deformation gradient

  • Type: variable name
jacobian 🇮 The jacobian that controls the volume adjustment of the input deformation gradient

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
output 🇴 Output adjusted deformation gradient

  • Type: variable name
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false

Detailed documentation link

VolumeChangeEigenstrain

Define the (cummulative, as opposed to instantaneous) linear isotropic volume expansion eigenstrain, i.e. \( \boldsymbol{\varepsilon}_V = (\frac{V}{V0})^(1/3)-1 \boldsymbol{I} \), where \( V \) is the current volume, and \( V0 \) is the reference (initial) volume.

eigenstrain 🇴 Eigenstrain

  • Type: variable name
  • Default: forces/Eg
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
reference_volume 🇵 Reference (initial) volume

  • Type: Scalar 🔗
volume 🇮 Volume

  • Type: variable name
  • Default: state/V

Detailed documentation link

WFFR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: WFFR4 🔗

Detailed documentation link

WFFR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WFFR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WFFR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

WFFR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WFFR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WFFR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: WFFR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

WR2ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: WR2 🔗

Detailed documentation link

WR2DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WR2DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WR2ExplicitExponentialTimeIntegration

Perform explicit discrete exponential time integration of a rotation. The update can be written as \( s = \exp\left[ (t-t_n)\dot{s}\right] \circ s_n \), where \( \circ \) denotes the rotation operator.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate of change

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇴 Variable being integrated

  • Type: variable name

Detailed documentation link

WR2ImplicitExponentialTimeIntegration

Define the implicit discrete exponential time integration residual of a rotation variable. The residual can be written as \( r = s - \exp\left[ (t-t_n)\dot{s}\right] \circ s_n \), where \( \circ \) denotes the rotation operator.

automatic_scaling Whether to perform automatic scaling. See neml2::NonlinearSystem::init_scaling for implementation details.

  • Type: bool
  • Default: false
automatic_scaling_miter Maximum number of automatic scaling iterations. No error is produced upon reaching the maximum number of scaling iterations, and the scaling matrices obtained at the last iteration are used to scale the nonlinear system.

  • Type: number
  • Default: 20
automatic_scaling_tol Tolerance used in iteratively updating the scaling matrices.

  • Type: number
  • Default: 0.01
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
rate 🇮 Variable rate

  • Type: variable name
time 🇮 Time

  • Type: variable name
  • Default: forces/t
variable 🇮 Variable being integrated

  • Type: variable name

Detailed documentation link

WR2InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

WR2IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WR2IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WR2ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: WR2 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

WSR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: WSR4 🔗

Detailed documentation link

WSR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WSR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WSR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

WSR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WSR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WSR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: WSR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

WWR4ConstantParameter

A parameter that is just a constant value, generally used to refer to a parameter in more than one downstream object.

jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
value 🇵 The constant value of the parameter

  • Type: WWR4 🔗

Detailed documentation link

WWR4DynamicMean

Average a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WWR4DynamicSum

Sum a dynamic dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WWR4InputParameter

A parameter that is defined through an input variable. This object is not intended to be used directly in the input file.

from 🇮 The input variable that defines this parameter

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the parameter, default to 'parameters/object_name'

  • Type: variable name

Detailed documentation link

WWR4IntermediateMean

Average an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WWR4IntermediateSum

Sum an intermediate dimension

dim The dimension over which to perform the reduction.

  • Type: number
  • Default: -1
from 🇮 Variable to reduce

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The reduced variable

  • Type: variable name

Detailed documentation link

WWR4ParameterToState

Convert the parameter to state variable.

from 🇵 The input parameter

  • Type: WWR4 🔗
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
to 🇴 The name of the variables, default to 'state/object_name'

  • Type: variable name

Detailed documentation link

YieldFunction

Classical macroscale plasticity yield function, \( f = \bar{\sigma} - \sigma_y - h \), where \( \bar{\sigma} \) is the effective stress, \( \sigma_y \) is the yield stress, and \( h \) is the isotropic hardening.

effective_stress 🇮 Effective stress

  • Type: variable name
  • Default: state/internal/s
isotropic_hardening 🇮 Isotropic hardening

  • Type: variable name
jit Use JIT compilation for the forward operator

  • Type: bool
  • Default: true
production Production mode. This option is used to disable features like function graph tracking and tensor version tracking which are useful for training (i.e., calibrating model parameters) but are not necessary in production runs.

  • Type: bool
  • Default: false
yield_function 🇴 Yield function

  • Type: variable name
  • Default: state/internal/fp
yield_stress 🇵 Yield stress

  • Type: Scalar 🔗

Detailed documentation link