6 solid_mechanics_definitions (release)
Contains all the definitions specific to a solid mechanics procedure.
Name 
 Type 
 Description 
 Default 
boundary_conditions (release) [optional] 
 LIST 
 A boundary condition object defines a static or kinematic displacement type boundary condition. Boundary conditions can be applied to sets representing both boundaries and bodies. 
 
load_conditions (release) [optional] 
 LIST 
 The load_conditions object defines applied loads. Loads can be applied to sets representing boundaries and bodies. 
 
initial_conditions (alpha) [optional] 
 LIST 
 An initial condition definition defines a condition of the procedure at its start time. 
 
outputs (release) [optional] 
 LIST 
 The outputs object holds all output objects, identified by user defined identifiers, each of which define an output for this procedure. If a chosen set was specified as an immersed set during geometry creation, that set must the only item in the sets list. If an immersed set is selected the output command will produce two separate files. The main file will include a tessellated surface representation of the boundary. The second file (with suffix envelope), will include a smooth volumetric output of the Uspline envelope domain for the immersed set. When viewing results on the envelope domain take care that only values on the interior of the model of interest are considered as values at the extremities of this representation may not exhibit physically relevant behavior. Not all elements from the original mesh used may be shown, in general only those that intersect the model of interest will be included. 
 
probes (release) [optional] 
 LIST 
 The probes object holds all user defined probe_variables. Probe variables are used to track quantities of interest at specific locations in a model over time. For example, a user may want to track von Mises stress at a specific location in a model over time. 
 
interactions (release) [optional] 
 LIST 
 Each object in the interaction definitions array defines an interaction for the procedure. Currently the supported interactions are mechanical_contact and tied_constraint. 
 
interaction_search_parameters (beta) [optional] 
 LIST 
 Each object in the interaction search definitions array defines search parameters to be used in an interaction. Currently the supported search definitions is a sensorbased layout. 
 
interaction_properties (beta) [optional] 
 LIST 
 The interaction property definition allows the user to define the type of friction and movement that occurs once contact is initiated. 

6.1 boundary_conditions (release)
A boundary condition object defines a static or kinematic displacement type boundary condition. Boundary conditions can be applied to sets representing both boundaries and bodies.
Name 
 Type 
 Description 
 Default 
label 
 STRING 
 A user defined identifier for this boundary condition. 
 
displacement (release)  velocity (beta)  acceleration (beta) 
 SUB OBJECT  SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify kinematic variable to be constrained by this boundary condition 
 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on 
 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
quadrature_options (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

Example Usage:boundary_conditions: [ { label: "hold_bottom", displacement: { components: [ "x", "y", "z" ], scale_factor: [ 0 ], function: "constant_1" }, set: "hold_surface", penalty: {value: 24000000000, dimensionless: false}, quadrature_options: { quadrature: "QP1"} } ]
6.1.1 displacement (release)
Name 
 Type 
 Description 
 Default 
components 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

Example Usage:displacement: { components: [ "x", "y", "z" ], scale_factor: [ 0 ], function: "constant_1" }
6.1.2 velocity (beta)
Name 
 Type 
 Description 
 Default 
components (beta) 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] (beta) 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function (beta) 
 STRING 
 The user defined identifier of the temporal function. 

6.1.3 acceleration (beta)
Name 
 Type 
 Description 
 Default 
components (beta) 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] (beta) 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function (beta) 
 STRING 
 The user defined identifier of the temporal function. 

6.1.4 part  set
Defines the set or part to be operated on
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.1.5 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.1.6 quadrature_options (beta)
Name 
 Type 
 Description 
 Default 
quadrature [optional] (beta) 
 “QP1”  “QP0”  “Q1”  “Q2”  “Q3”  “Q4”  “Q5”  “Q6”  “Q7”  “Q8”  “Q9”  “Q10” 
 Quadrature type enumeration. The quadrature type determines the point layout over a patch or patch element. The schemes following the pattern “Q#” specify that a Gauss quadrature scheme with #points will be used. The schemes following the pattern “QP#” specify that a Gauss quadrature scheme with points will be used, where is the degree of the patch's or patch element's basis. 
 QP1 
optimized_cut_quadrature_strategy [optional] (beta) 
 “match_uncut”  “reduce_from_uncut”  “match_basis” 
 Strategy to choose the degree of accuracy for quadrature on cut cells. The default strategy of reduce_from_uncut chooses quadrature rules with similar numbers of points as those used on uncut cells, as specified by quadrature; it has lower formal accuracy (integrating tensor products of monomials up to degree for uncut quadrature Q), but is a good default choice for practical calculations. The strategy match_uncut matches the formal accuracy of the quadrature on uncut cells, but is significantly more costly. The strategy match_basis chooses a rule that exactly integrates the basis functions; this is equivalent to reduce_from_uncut if the uncut cells use the default quadrature of QP1, but may differ for other choices of uncut quadrature. 
 reduce_from_uncut 
optimized_cut_quadrature_degree [optional] (beta) 
 NONNEGATIVE INTEGER 
 If provided, this value overrides optimized_cut_quadrature_strategy by specifying an explicit polynomial degree of accuracy for optimized quadrature rules on cut cells. 
 
optimization_method [optional] (beta) 
 “tet_pruning”  “grid_doubling”  “linear_programming” 
 Specifies the preferred method of quadrature generation for cut cells. If the preferred method fails on a particular cell, the other methods will be used in an attempt to recover. 
 tet_pruning 
optimization_residual_tolerance [optional] (beta) 
 DOUBLE 
 The absolute residual tolerance used in quadrature optimization on cut cells. A smaller value will result in a more accurate quadrature rule, but may increase the time to compute quadrature rules for cut cells. 
 1e12 
optimization_lawson_hanson_solve_completion [optional] 
 truefalse 
 An experimental option that controls the convergence behavior of quadrature optimization. For best results it is recommended to set this value to true. If set to true this causes each iteration of quadrature optimization to solve to the highest accuracy possible. The results at each iteration are then checked against the optimization_residual_tolerance to determine if a sufficient rule has been found. If this value is set to false then the optimization_residual_tolerance is passed to the solve at each iteration and can cause the solve step to terminate more quickly which can result in faster execution and a lower number of quadrature points. However the quality and accuracy of the resulting rule may be suspect. 
 true 
6.2 load_conditions (release)
The load_conditions object defines applied loads. Loads can be applied to sets representing boundaries and bodies.
Name 
 Type 
 Description 
 Default 
label 
 STRING 
 User defined identifier for this load condition. 
 
temperature_distribution (alpha)  surface_traction (release)  surface_pressure (release)  point_force (release)  line_traction (release)  body_force (release) 
 SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the class of load condition 
 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on 
 
follower [optional] (beta) 
 truefalse 
 If true, the load direction will follow the loaded region as it deforms and the current surface area will be used. If false, load direction and magnitude will remain unchanged as the domain deforms. 
 false 
quadrature_options (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

Example Usage:load_conditions: [ { label: "push_top", surface_pressure: { scale_factor: 2307.86806, function: "linear_ramp" }, set: "load_surface", follower: false, quadrature_options: { quadrature: "QP1"} } ]
6.2.1 temperature_distribution (alpha)
Name 
 Type 
 Description 
 Default 
scale_factor [optional] (alpha) 
 DOUBLE 
 A scalar value which scales the function. 
 1.0 
function (alpha) 
 STRING 
 The user defined identifier of the temporal function. 

6.2.2 surface_traction (release)
Define a surface traction load
Name 
 Type 
 Description 
 Default 
components 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

Example Usage:surface_traction: { components: [ "x", "y" ], scale_factor: [ 1, 1 ], function: "traction" }
6.2.3 surface_pressure (release)
Define a pressure load, a load which is always normal to the surface
Name 
 Type 
 Description 
 Default 
scale_factor [optional] 
 DOUBLE 
 A scalar value which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

Example Usage:surface_pressure: { scale_factor: 2307.86806, function: "linear_ramp" }
6.2.4 point_force (release)
Define a point force
Name 
 Type 
 Description 
 Default 
components 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

6.2.5 line_traction (release)
Define a point force
Name 
 Type 
 Description 
 Default 
components 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

6.2.6 body_force (release)
User must use the ’part’ option when defining sets for a body force
Name 
 Type 
 Description 
 Default 
components 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function 
 STRING 
 The user defined identifier of the temporal function. 

6.2.7 part  set
Defines the set or part to be operated on
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.2.8 quadrature_options (beta)
Name 
 Type 
 Description 
 Default 
quadrature [optional] (beta) 
 “QP1”  “QP0”  “Q1”  “Q2”  “Q3”  “Q4”  “Q5”  “Q6”  “Q7”  “Q8”  “Q9”  “Q10” 
 Quadrature type enumeration. The quadrature type determines the point layout over a patch or patch element. The schemes following the pattern “Q#” specify that a Gauss quadrature scheme with #points will be used. The schemes following the pattern “QP#” specify that a Gauss quadrature scheme with points will be used, where is the degree of the patch's or patch element's basis. 
 QP1 
optimized_cut_quadrature_strategy [optional] (beta) 
 “match_uncut”  “reduce_from_uncut”  “match_basis” 
 Strategy to choose the degree of accuracy for quadrature on cut cells. The default strategy of reduce_from_uncut chooses quadrature rules with similar numbers of points as those used on uncut cells, as specified by quadrature; it has lower formal accuracy (integrating tensor products of monomials up to degree for uncut quadrature Q), but is a good default choice for practical calculations. The strategy match_uncut matches the formal accuracy of the quadrature on uncut cells, but is significantly more costly. The strategy match_basis chooses a rule that exactly integrates the basis functions; this is equivalent to reduce_from_uncut if the uncut cells use the default quadrature of QP1, but may differ for other choices of uncut quadrature. 
 reduce_from_uncut 
optimized_cut_quadrature_degree [optional] (beta) 
 NONNEGATIVE INTEGER 
 If provided, this value overrides optimized_cut_quadrature_strategy by specifying an explicit polynomial degree of accuracy for optimized quadrature rules on cut cells. 
 
optimization_method [optional] (beta) 
 “tet_pruning”  “grid_doubling”  “linear_programming” 
 Specifies the preferred method of quadrature generation for cut cells. If the preferred method fails on a particular cell, the other methods will be used in an attempt to recover. 
 tet_pruning 
optimization_residual_tolerance [optional] (beta) 
 DOUBLE 
 The absolute residual tolerance used in quadrature optimization on cut cells. A smaller value will result in a more accurate quadrature rule, but may increase the time to compute quadrature rules for cut cells. 
 1e12 
optimization_lawson_hanson_solve_completion [optional] 
 truefalse 
 An experimental option that controls the convergence behavior of quadrature optimization. For best results it is recommended to set this value to true. If set to true this causes each iteration of quadrature optimization to solve to the highest accuracy possible. The results at each iteration are then checked against the optimization_residual_tolerance to determine if a sufficient rule has been found. If this value is set to false then the optimization_residual_tolerance is passed to the solve at each iteration and can cause the solve step to terminate more quickly which can result in faster execution and a lower number of quadrature points. However the quality and accuracy of the resulting rule may be suspect. 
 true 
6.3 initial_conditions (alpha)
An initial condition definition defines a condition of the procedure at its start time.
Name 
 Type 
 Description 
 Default 
label (alpha) 
 STRING 
 User defined identifier for this initial condition. 
 
 SUB OBJECT 
 See linked documentation 
 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on 

6.3.1 velocity (alpha)
Name 
 Type 
 Description 
 Default 
components (alpha) 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] (alpha) 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
6.3.2 part  set
Defines the set or part to be operated on
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.4 outputs (release)
The outputs object holds all output objects, identified by user defined identifiers, each of which define an output for this procedure. If a chosen set was specified as an immersed set during geometry creation, that set must the only item in the sets list. If an immersed set is selected the output command will produce two separate files. The main file will include a tessellated surface representation of the boundary. The second file (with suffix envelope), will include a smooth volumetric output of the Uspline envelope domain for the immersed set. When viewing results on the envelope domain take care that only values on the interior of the model of interest are considered as values at the extremities of this representation may not exhibit physically relevant behavior. Not all elements from the original mesh used may be shown, in general only those that intersect the model of interest will be included.
Name 
 Type 
 Description 
 Default 
label 
 STRING 
 The user defined identifier for this output definition. 
 
tessellate [optional] 
 truefalse 
 The output should be tessellated to hdf5 files for consumption by third party tools. 
 
 SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the class of output 

Example Usage:outputs: [ { label: "field_results", field: { database_name: "results", interval: "output_interval", part: "cframe", variables: { displacement: [ "x", "y", "z" ], stress: [ "all" ] }, element_variable_output_strategy: "interpolate", include_integration_point_output: false } }, { label: "probe_results", history: { interval: "output_interval", probe_variables: [ "stress_probe", "load_reaction_force" ] } } ]
6.4.1 field (release)
The field object is primarily useful for visualization and explorative analysis of the results. In addition to the result values, field output exports information needed to construct a visualization of the model.
Name 
 Type 
 Description 
 Default 
database_name 
 STRING 
 The file name prefix of the output file that will be written to disk. The field output is written out in the ParaView *.pvd format. 
 
interval 
 STRING 
 The user defined identifier of the interval to use for this output. This interval will specify when the output should be written, as determined by the time_increment or step_increment values within the interval. A time_increment of 0 acts the same as a step_increment of either 0 or 1, writing output after each intermediate solution step. A negative value for time_increment or step_increment will output only at the bounds of the interval. 
 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on. If nothing is specified, it is equivalent to including every part. 
 
 SUB OBJECT 
 See linked documentation 
 
element_variable_output_strategy [optional] 
 “max”  “min”  “average”  “interpolate” 
 This specifies how values are calculated within each cell. min, max, and average take the minimum, maximum, or average component point values at the integration points and report them across the entire cell. interpolate interpolates the component values from the integration points. 
 interpolate 
include_integration_point_output [optional] 
 truefalse 
 Whether to include output at integration points. Output at integration points is not included by default. 
 false 
Example Usage:field: { database_name: "results", interval: "output_interval", part: "cframe", variables: { displacement: [ "x", "y", "z" ], stress: [ "all" ] }, element_variable_output_strategy: "interpolate", include_integration_point_output: false }
6.4.1.1 part  set
Defines the set or part to be operated on. If nothing is specified, it is equivalent to including every part.
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.4.1.2 variables
The variable to output.
Name 
 Type 
 Description 
 Default 
displacement  velocity (beta)  acceleration (beta)  stress  nominal_strain (beta)  plastic_strain (beta)  deformation_gradient (alpha)  failure_indicator (alpha) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ]  [ “equivalent”, ... ]  [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ]  [ “value”, ... ] 
 Any of the given options can be defined 

Example Usage:variable: { stress: [ "xx", "yy", "zz" ] }
6.4.1.3 displacement  velocity  acceleration  stress  nominal_strain  plastic_strain  deformation_gradient  failure_indicator
Any of the given options can be defined
Name 
 Type 
 Description 
 Default 
displacement 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
velocity (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
acceleration (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
stress 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ] 

 
nominal_strain (beta) 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ] 

 
plastic_strain (beta) 
 [ “equivalent”, ... ] 

 
deformation_gradient (alpha) 
 [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ] 

 
failure_indicator (alpha) 
 [ “value”, ... ] 


6.4.2 history (release)
Define a history object to extract timehistory data from specific regions of interest. The history object is primarily useful for analysis at known regions of interest (ROI), especially when a hightemporal resolution is required to gain useful information from the results. Field output on the entire domain of the model is often intractable in these situations as writing the entire field at a high sample rate can negatively impact performance, especially when using explicit timeintegration, and can quickly generate enormous files that are cumbersome to process. History output writes a minimal set of information at user define probe_variable locations to an HDF5 file format that is easy to process in any number of downstream tools such as Excel, Matlab, or Python.
Name 
 Type 
 Description 
 Default 
interval 
 STRING 
 The user defined identifier of the interval to use for this output. 
 
probe_variables 
 [ STRING, ... ] 
 The userdefined probe_variables that should be included in the output file. 

Example Usage:history: { interval: "output_interval", probe_variables: [ "stress_probe", "load_reaction_force" ] }
6.5 probes (release)
The probes object holds all user defined probe_variables. Probe variables are used to track quantities of interest at specific locations in a model over time. For example, a user may want to track von Mises stress at a specific location in a model over time.
Name 
 Type 
 Description 
 Default 
label 
 STRING 
 The user defined identifier for this probe definition. 
 
field (release)  integrated_surface_quantity (release)  integrated_volume_quantity (beta)  l2_error_norm (release) 
 SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the class of probe 

Example Usage:probes: [ { label: "stress_probe", field: { single_point: { location: [ 0, 1.5, 4.25 ] }, location_configuration: "reference", field_variable_configuration: "reference", variables: { stress: [ "max_principal" ] } } }, { label: "load_reaction_force", integrated_surface_quantity: { variables: { reaction_force: [ "x", "y", "z" ] }, part: "cframe", use_set_from_load_condition: "push_top" } } ]
6.5.1 field (release)
Defines a probe that extracts field variable data.
Name 
 Type 
 Description 
 Default 
set  single_point (release)  along_line (release)  along_curve (release)  extremum (release) 
 STRING  SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the class of field probe 
 
location_configuration 
 “reference” 
 Defines the configuration of the probe location. The reference configuration will track the same material point through time. The current configuration will track the field_variable at a specific spatial location. If no part of the model covers the location when tracking the current configuration then zero values will be returned. Currently, only reference is supported. 
 
field_variable_configuration 
 “reference” 
 The configuration of the output coordinate system. Currently, only reference is supported. 
 
 SUB OBJECT 
 See linked documentation 

Example Usage:field: { single_point: { location: [ 0, 1.5, 4.25 ] }, location_configuration: "reference", field_variable_configuration: "reference", variables: { stress: [ "max_principal" ] } }
6.5.1.1 set  single_point  along_line  along_curve  extremum
One of the given keywords must be defined to specify the class of field probe
Name 
 Type 
 Description 
 Default 
set 
 STRING 
 Specifies the user defined identifier of the set in the Flex model. 
 
 SUB OBJECT 
 See linked documentation 
 
 SUB OBJECT 
 See linked documentation 
 
 SUB OBJECT 
 See linked documentation 
 
 SUB OBJECT 
 See linked documentation 

6.5.1.2 single_point (release)
Define a probe at a coordinate location
Name 
 Type 
 Description 
 Default 
location 
 [ DOUBLE, DOUBLE, DOUBLE ] 
 The coordinate location of the probe. 

Example Usage:single_point: { location: [ 0, 1.5, 4.25 ] }
6.5.1.3 along_line (release)
Define a series of probes along a straight line
Name 
 Type 
 Description 
 Default 
start_location 
 [ DOUBLE, DOUBLE, DOUBLE ] 
 The coordinate location of the first probe. 
 
stop_location 
 [ DOUBLE, DOUBLE, DOUBLE ] 
 The coordinate location of the last probe. 
 
num_points 
 NONNEGATIVE INTEGER 
 The number of probes between the first and last probe location (minimum 2). 

6.5.1.4 along_curve (release)
Define a series of probes at arbitrary coordinate locations
Name 
 Type 
 Description 
 Default 
locations 
 [ [ DOUBLE, ... ], ... ] 
 The evaluated coordinate locations of all probes along the curve 

6.5.1.5 extremum (release)
Name 
 Type 
 Description 
 Default 
set [optional] 
 STRING 
 Specifies the user defined identifier of the set in the Flex model in which the extremum value is to be found. If not defined then the entire model will be used. 
 
 SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the type of extremum probe 

6.5.1.6 minimum (release)
The variable to track for the extremum.
Name 
 Type 
 Description 
 Default 
displacement  velocity (beta)  acceleration (beta)  stress  plastic_strain (beta)  deformation_gradient (alpha)  failure_indicator (alpha) 
 “x”  “y”  “z”  “magnitude”  “x”  “y”  “z”  “magnitude”  “x”  “y”  “z”  “magnitude”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”  “equivalent”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”  “value” 
 Only one of the given keywords my be defined 

6.5.1.7 displacement  velocity  acceleration  stress  plastic_strain  deformation_gradient  failure_indicator
Only one of the given keywords my be defined
Name 
 Type 
 Description 
 Default 
displacement 
 “x”  “y”  “z”  “magnitude” 

 
velocity (beta) 
 “x”  “y”  “z”  “magnitude” 

 
acceleration (beta) 
 “x”  “y”  “z”  “magnitude” 

 
stress 
 “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3” 

 
plastic_strain (beta) 
 “equivalent” 

 
deformation_gradient (alpha) 
 “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant” 

 
failure_indicator (alpha) 
 “value” 


6.5.1.8 maximum (release)
The variable to track for the extremum.
Name 
 Type 
 Description 
 Default 
displacement  velocity (beta)  acceleration (beta)  stress  plastic_strain (beta)  deformation_gradient (alpha)  failure_indicator (alpha) 
 “x”  “y”  “z”  “magnitude”  “x”  “y”  “z”  “magnitude”  “x”  “y”  “z”  “magnitude”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”  “equivalent”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”  “value” 
 Only one of the given keywords my be defined 

6.5.1.9 displacement  velocity  acceleration  stress  plastic_strain  deformation_gradient  failure_indicator
Only one of the given keywords my be defined
Name 
 Type 
 Description 
 Default 
displacement 
 “x”  “y”  “z”  “magnitude” 

 
velocity (beta) 
 “x”  “y”  “z”  “magnitude” 

 
acceleration (beta) 
 “x”  “y”  “z”  “magnitude” 

 
stress 
 “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3” 

 
plastic_strain (beta) 
 “equivalent” 

 
deformation_gradient (alpha) 
 “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant” 

 
failure_indicator (alpha) 
 “value” 


6.5.1.10 variables
The variable to output.
Name 
 Type 
 Description 
 Default 
displacement  velocity (beta)  acceleration (beta)  stress  nominal_strain (beta)  plastic_strain (beta)  deformation_gradient (alpha)  failure_indicator (alpha) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ]  [ “equivalent”, ... ]  [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ]  [ “value”, ... ] 
 Any of the given options can be defined 

Example Usage:variable: { stress: [ "xx", "yy", "zz" ] }
6.5.1.11 displacement  velocity  acceleration  stress  nominal_strain  plastic_strain  deformation_gradient  failure_indicator
Any of the given options can be defined
Name 
 Type 
 Description 
 Default 
displacement 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
velocity (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
acceleration (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
stress 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ] 

 
nominal_strain (beta) 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ] 

 
plastic_strain (beta) 
 [ “equivalent”, ... ] 

 
deformation_gradient (alpha) 
 [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ] 

 
failure_indicator (alpha) 
 [ “value”, ... ] 


6.5.2 integrated_surface_quantity (release)
Sum a variable on a specified surface.
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 
 See linked documentation 
 
part [optional] 
 STRING 
 Specifies the userdefined label of the part in the FRM model in which the surface for integrating is on. 
 
use_set_from_boundary_condition  use_set_from_load_condition  use_set_from_interaction (beta) 
 STRING  STRING  STRING 
 The set for this probe must come from a user defined boundary condition, load condition or interaction. 

Example Usage:integrated_surface_quantity: { variables: { reaction_force: [ "x", "y", "z" ] }, part: "cframe", use_set_from_load_condition: "push_top" }
6.5.2.1 variables (release)
The variables to integrate.
Name 
 Type 
 Description 
 Default 
reaction_force 
 [ “x”  “y”  “z”  “magnitude”, ... ] 
 Definitions of the type of variables to integrate. 

Example Usage:variables: { reaction_force: [ "x", "y", "z" ] }
6.5.2.2 reaction_force
Definitions of the type of variables to integrate.
Name 
 Type 
 Description 
 Default 
reaction_force 
 [ “x”  “y”  “z”  “magnitude”, ... ] 


6.5.2.3 use_set_from_boundary_condition  use_set_from_load_condition  use_set_from_interaction
The set for this probe must come from a user defined boundary condition, load condition or interaction.
Name 
 Type 
 Description 
 Default 
use_set_from_boundary_condition 
 STRING 
 Specifies the set used in the boundary condition with this userdefined label. Used to get reaction forces associated with boundary conditions. 
 
use_set_from_load_condition 
 STRING 
 Specifies the set used in the load condition with this userdefined label. Used to get net forces from load conditions. 
 
use_set_from_interaction (beta) 
 STRING 
 Specifies the set used in the interaction with this userdefined label. Used to get contact reaction forces. 

6.5.3 integrated_volume_quantity (beta)
Sum a variable on a specified volume.
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 
 See linked documentation 
 
part [optional] (beta) 
 STRING 
 Specifies the part with this userdefined label. If not defined, all the parts are selected. 

6.5.3.1 variables (beta)
The variables to integrate.
Name 
 Type 
 Description 
 Default 
momentum (beta)  energy (alpha) 
 [ “x”  “y”  “z”  “magnitude”, ... ]  [ “plastic_work”, ... ] 
 Definitions of the type of variable to integrate 

6.5.3.2 momentum  energy
Definitions of the type of variable to integrate
Name 
 Type 
 Description 
 Default 
momentum (beta) 
 [ “x”  “y”  “z”  “magnitude”, ... ] 

 
energy (alpha) 
 [ “plastic_work”, ... ] 
 Specifies the type of energy to integrate. Currently, only the plastic work is available for neoHookean isotropic plasticity. The plastic work is define as , where and denote the plastic strain rate and Cauchy stress, respectively. 

6.5.4 l2_error_norm (release)
Calculate an L2 error norm, over a given set, between the computed solution and a userprovided solution. The error is calculated from the difference between a given user function and the computed values for stress or displacement components. The error is defined as the square root of the sum of the squares of the given components.
Name 
 Type 
 Description 
 Default 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on 
 
function 
 STRING 
 The user defined identifier of the function to use for this error calculation. The function should return the reference values that the solution will be compared with in an array ordered to match the provided components of displacement or stress. 
 
 SUB OBJECT 
 See linked documentation 

Example Usage:l2_error_norm: { part: "plate_with_hole", function: "stress", variable: { stress: [ "xx", "yy", "zz" ] } }
6.5.4.1 part  set
Defines the set or part to be operated on
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.5.4.2 variable
The variable to output.
Name 
 Type 
 Description 
 Default 
displacement  velocity (beta)  acceleration (beta)  stress  nominal_strain (beta)  plastic_strain (beta)  deformation_gradient (alpha)  failure_indicator (alpha) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “x”  “y”  “z”  “magnitude”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ]  [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ]  [ “equivalent”, ... ]  [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ]  [ “value”, ... ] 
 Only one of the given keywords my be defined 

Example Usage:variable: { stress: [ "xx", "yy", "zz" ] }
6.5.4.3 displacement  velocity  acceleration  stress  nominal_strain  plastic_strain  deformation_gradient  failure_indicator
Only one of the given keywords my be defined
Name 
 Type 
 Description 
 Default 
displacement 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
velocity (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
acceleration (beta) 
 [ “all”  “x”  “y”  “z”  “magnitude”, ... ] 

 
stress 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”  “von_mises”  “tresca”  “pressure”  “triaxiality”  “octahedral”  “total_measure”  “min_principal”  “mid_principal”  “max_principal”  “invariant_I1”  “invariant_I2”  “invariant_I3”  “invariant_J2”  “invariant_J3”, ... ] 

 
nominal_strain (beta) 
 [ “all”  “xx”  “yy”  “zz”  “xy”  “yz”  “xz”, ... ] 

 
plastic_strain (beta) 
 [ “equivalent”, ... ] 

 
deformation_gradient (alpha) 
 [ “all”  “xx”  “xy”  “xz”  “yx”  “yy”  “yz”  “zx”  “zy”  “zz”  “determinant”, ... ] 

 
failure_indicator (alpha) 
 [ “value”, ... ] 


6.6 interactions (release)
Each object in the interaction definitions array defines an interaction for the procedure. Currently the supported interactions are mechanical_contact and tied_constraint.
Name 
 Type 
 Description 
 Default 
label 
 STRING 
 User defined identifier for this interaction definition. 
 
quadrature_options (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
tied_constraint (release)  material_interface (release)  mechanical_contact (beta)  interference_fit (beta)  rotational_constraint (alpha) 
 SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the type of interaction 

Example Usage:interactions: [ { label: "all_interfaces", quadrature_options: { quadrature: "QP1"}, material_interface: { interface: "all_interfaces", penalty: {value: 28000000000, dimensionless: false} } } ]
6.6.1 quadrature_options (beta)
Name 
 Type 
 Description 
 Default 
quadrature [optional] (beta) 
 “QP1”  “QP0”  “Q1”  “Q2”  “Q3”  “Q4”  “Q5”  “Q6”  “Q7”  “Q8”  “Q9”  “Q10” 
 Quadrature type enumeration. The quadrature type determines the point layout over a patch or patch element. The schemes following the pattern “Q#” specify that a Gauss quadrature scheme with #points will be used. The schemes following the pattern “QP#” specify that a Gauss quadrature scheme with points will be used, where is the degree of the patch's or patch element's basis. 
 QP1 
optimized_cut_quadrature_strategy [optional] (beta) 
 “match_uncut”  “reduce_from_uncut”  “match_basis” 
 Strategy to choose the degree of accuracy for quadrature on cut cells. The default strategy of reduce_from_uncut chooses quadrature rules with similar numbers of points as those used on uncut cells, as specified by quadrature; it has lower formal accuracy (integrating tensor products of monomials up to degree for uncut quadrature Q), but is a good default choice for practical calculations. The strategy match_uncut matches the formal accuracy of the quadrature on uncut cells, but is significantly more costly. The strategy match_basis chooses a rule that exactly integrates the basis functions; this is equivalent to reduce_from_uncut if the uncut cells use the default quadrature of QP1, but may differ for other choices of uncut quadrature. 
 reduce_from_uncut 
optimized_cut_quadrature_degree [optional] (beta) 
 NONNEGATIVE INTEGER 
 If provided, this value overrides optimized_cut_quadrature_strategy by specifying an explicit polynomial degree of accuracy for optimized quadrature rules on cut cells. 
 
optimization_method [optional] (beta) 
 “tet_pruning”  “grid_doubling”  “linear_programming” 
 Specifies the preferred method of quadrature generation for cut cells. If the preferred method fails on a particular cell, the other methods will be used in an attempt to recover. 
 tet_pruning 
optimization_residual_tolerance [optional] (beta) 
 DOUBLE 
 The absolute residual tolerance used in quadrature optimization on cut cells. A smaller value will result in a more accurate quadrature rule, but may increase the time to compute quadrature rules for cut cells. 
 1e12 
optimization_lawson_hanson_solve_completion [optional] 
 truefalse 
 An experimental option that controls the convergence behavior of quadrature optimization. For best results it is recommended to set this value to true. If set to true this causes each iteration of quadrature optimization to solve to the highest accuracy possible. The results at each iteration are then checked against the optimization_residual_tolerance to determine if a sufficient rule has been found. If this value is set to false then the optimization_residual_tolerance is passed to the solve at each iteration and can cause the solve step to terminate more quickly which can result in faster execution and a lower number of quadrature points. However the quality and accuracy of the resulting rule may be suspect. 
 true 
6.6.2 tied_constraint (release)
Defines interaction properties for a surface to surface tied constraint.
Name 
 Type 
 Description 
 Default 
target_set 
 STRING 
 Specifies the target interaction surface. 
 
source_set 
 STRING 
 Specifies the source interaction surface. 
 
region_search_method 
 STRING 
 Specifies the object in interactionsearchparameters to define the constraint search method. 
 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
offset [optional] 
 truefalse 
 A tied constraint property that, if true, will use a formulation that approximately maintains the initial gap distance. If false, the tied constraint formulation will not maintain gap distances under rotation, but is less expensive to compute. 
 true 
6.6.2.1 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.6.3 material_interface (release)
Name 
 Type 
 Description 
 Default 
interface 
 STRING 
 The label of the interaction in the geometry/interactions array. 
 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
region_search_method [optional] (beta) 
 STRING 
 The search paramaters to use. 
 
offset [optional] (beta) 
 truefalse 
 A material interface property that, if true, will use a formulation that approximately maintains any initial gap due to a small geometric mismatch at the material interface. If false, the tied constraint formulation may be less robust to geometry error, but is less expensive to compute. 
 true 
Example Usage:material_interface: { interface: "all_interfaces", penalty: {value: 28000000000, dimensionless: false} }
6.6.3.1 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.6.4 mechanical_contact (beta)
A physics based contact between two surfaces (paired) or in a single surface (self).
Name 
 Type 
 Description 
 Default 
base_contact (beta)  sets (beta) 
 SUB OBJECT  [ STRING, ... ] 

 
interaction_properties [optional] (beta) 
 STRING 
 The name of the user defined interaction property to use for this interaction. 
 
unintentional_overclosures (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
activation_distance (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
tessellation_subdivision_count [optional] (beta) 
 NONNEGATIVE INTEGER 
 An integration cell is subdivided by the maximum of this value and the degree of spline. When aiming to achieve better accuracy in contact, it is recommended to consider increasing this value. However, the larger the value, the greater the memory usage and the slower the computation. Therefore, it is generally recommended that this value not exceed 4. 
 2 
effective_distance_smoothing (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
collision_search_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
contact_force_scaling (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

6.6.4.1 base_contact  sets
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 
 See linked documentation 
 
sets (beta) 
 [ STRING, ... ] 
 Specifies the interaction part, volume or surface sets that will participate in surface to surface contact. Will overrides the base_contact interaction. 

6.6.4.2 base_contact (beta)
Specifies the general contact interactions. Any base interaction is overriden by any other set interactions. Only one interaction of this type should be defined.
Name 
 Type 
 Description 
 Default 
sets [optional] (beta) 
 [ STRING, ... ] 
 Specifies the part, volume, or surface sets to be included in general contact interactions. 
 
complement (beta) 
 truefalse 
 Takes the complement of the sets of the part, volume, or surface sets specified by base_contact so they are excluded from base contact interactions. 
 false 
6.6.4.3 unintentional_overclosures (beta)
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 


6.6.4.4 offset (beta)
Name 
 Type 
 Description 
 Default 
distance (beta) 
 DOUBLE 


6.6.4.5 distance
Name 
 Type 
 Description 
 Default 
distance (beta) 
 DOUBLE 
 The signed effective distance is offset by this value in a unit of length. It is recommended to consider increasing this value when unintentional initial overclosures produce nonnegligible stress, leading to difficulty in the initial nonlinear convergence. This value should not exceed half of the activation distance. 

6.6.4.6 activation_distance (beta)
Specifies the distance within which to search for contacting points. When it is observed that some contact surfaces lose interaction, a largerthandefault value may be required.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 Specifies the distance within which to search for contacting points. Larger values are more robust, but also potentially more expensive. The precise interpretation of this depends on the value of dimensionless, with more detail given in its documentation. Note that the default value assumes that dimensionless is also set to its default value of true. 
 0.5 
dimensionless (beta) 
 truefalse 
 If this is set to true, then value is understood as a dimensionless fraction of the element size. If it is set to false, then value is interpreted as a length scale, and must be selected in a way that is consistent with the length units used elsewhere. When manually specifying an activation distance, it is recommended to keep it on the same order as element size, as reflected in the default dimensionless value. 
 true 
6.6.4.7 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.6.4.8 effective_distance_smoothing (beta)
Name 
 Type 
 Description 
 Default 
distance_smoothing_factor (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The discontinuity in the effective signed distance gradients at a distance of zero is regularized over an interval equal to the activation distance multiplied by this factor. While this option aids in nonlinear convergence, it allows more penetration because the effective contact stiffness becomes smaller near the effective distance of zero. When less penetration is desired, it is suggested to reduce this value. When experiencing difficulty in achieving nonlinear convergence, it is suggested to try increasing this value. It is generally not recommended for this value to exceed 1.0. 
 0.25 
edge_smoothing_factor [optional] (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The discontinuities in the effective signed distance gradients around the edges of the contact surface integration cells are regularized over an interval equal to the activation distance multiplied by this factor. While this option facilitates easier nonlinear convergence, it can increase unintentional overclosures. Therefore, it is recommended to use this option with caution, particularly when bodies are initially touching each other. 
 
corner_smoothing [optional] (beta) 
 truefalse 
 The signed effective distance is additionally smoothed around the vertices of the contact surface integration cells. While this option facilitates easier nonlinear convergence, it can increase unintentional overclosures. Therefore, it is recommended to use this option with caution, particularly when bodies are initially touching each other. 

6.6.4.9 collision_search_filter (beta)
Name 
 Type 
 Description 
 Default 
angle_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
area_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
spurious_self_contact_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

6.6.4.10 angle_filter (beta)
Name 
 Type 
 Description 
 Default 
threshold_angle (beta) 
 DOUBLE 
 In order to improve performance for continuation/implicit dynamics, A pair of triangles will be removed from the collision candidate set if the angle between their surface normals is under this threshold that, in degrees, ranges from 0 to 90, with a recommended value of approximately 30 degrees. This option is automatically turned off for explicit dynamics. 
 30 
6.6.4.11 area_filter (beta)
Name 
 Type 
 Description 
 Default 
threshold_area_ratio (beta) 
 DOUBLE 
 In order to improve performance for continuation/implicit dynamics by avoiding an excessive amount of collision candidates when solution is diverging, the collision search will be skipped if the ratio of the surface triangle's current area to its area at the last successful time step exceeds this value. This option is automatically turned off for explicit dynamics. 
 2 
6.6.4.12 spurious_self_contact_filter (beta)
Name 
 Type 
 Description 
 Default 
use (beta) 
 truefalse 
 If true, will not consider the interaction between integration cells from the same body when they are initially penetrate each other to avoid spurious selfcontact. When this option is turned on, intentional selfoverclosures cannot be applied. 
 true 
6.6.4.13 contact_force_scaling (beta)
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 


6.6.4.14 closest_point_penetration_based (beta)
The contact force is adjusted using a multiplicative scaling factor, which is a function of the penetration depth from the closest point on a contact surface. This adjustment helps avoid the development of spurious contact forces under certain geometry.
Name 
 Type 
 Description 
 Default 
regularization_factor (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The scaling factor is zero at the contact surface and ramps up to one over the interval of the activation distance multiplied by this value. This option allows more penetration because the effective contact stiffness becomes smaller near the effective distance of zero. It is recommended to use a value between 0.05 and 0.1 to avoid excessive penetration. 

6.6.5 interference_fit (beta)
A physics based contact between two surfaces (paired) or in a single surface (self).
Name 
 Type 
 Description 
 Default 
sets 
 [ STRING, ... ] 
 Specifies the interaction part, volume or surface sets that will participate in surface to surface interference fit. Will overrides the base_contact interaction defined in mechanical_contact. 
 
interaction_properties [optional] 
 STRING 
 The name of the user defined interaction property to use for this interaction. 
 
activation_distance (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
initial_activation_distance 
 DOUBLE 
 Specifies the initial activation distance for interference fit resolution. The initial activation distance should be large enough for the contact surfaces can see each other with an initially large overclosure. It is suggested that this value be chosen 2 to 4 times larger than the maximum overclosure initially present. The activation distance is then linearly ramped down to activation_distance within ramp_time_interval with a ramp function where , , , and denote the activation distance at time , initial_activation_distance, activation_distance, and ramp_time_interval. If this value is smaller than the activation_distance, it will be set to activation_distance. 
 
initial_penalty_ratio [optional] 
 DOUBLE 
 Specifies the ratio of the penalty to penalty. This value should be small enough compared to penalty to ensure nonlinear convergence, especially with large initial overclosure. The penalty value is exponentially ramped up to penaly within ramp_time_interval with a ramp function where , , , and denote the penalty value at time , penalty, initial_penalty_ratio, and ramp_time_interval. If the nonlinear calculation diverges, it is recommended to lower this value. If the solution converges but the interaction is lost during the simulation, it is recommended to increase this value. 
 1e5 
ramp_time_interval 
 DOUBLE 
 The activation distance and the contact stiffness are ramped over this time interval. If you set initial_penalty_ratio to a fairly small number but still experience nonlinear divergence, it may be due to the ramping occurring over too few time steps. In that case, it is recommended to either increase the ramp_time_interval or ensure there are at least 5 time steps within this interval. 
 
tessellation_subdivision_count [optional] 
 NONNEGATIVE INTEGER 
 An integration cell is subdivided by the maximum of this value and the degree of spline. 
 2 
effective_distance_smoothing (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
collision_search_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
contact_force_scaling (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

6.6.5.1 activation_distance (beta)
Specifies the distance within which to search for contacting points. When it is observed that some contact surfaces lose interaction, a largerthandefault value may be required.
Name 
 Type 
 Description 
 Default 
value [optional] (beta) 
 DOUBLE 
 Specifies the distance within which to search for contacting points. Larger values are more robust, but also potentially more expensive. The precise interpretation of this depends on the value of dimensionless, with more detail given in its documentation. Note that the default value assumes that dimensionless is also set to its default value of true. 
 0.5 
dimensionless [optional] (beta) 
 truefalse 
 If this is set to true, then value is understood as a dimensionless fraction of the element size. If it is set to false, then value is interpreted as a length scale, and must be selected in a way that is consistent with the length units used elsewhere. When manually specifying an activation distance, it is recommended to keep it on the same order as element size, as reflected in the default dimensionless value. 
 true 
6.6.5.2 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.6.5.3 effective_distance_smoothing (beta)
Name 
 Type 
 Description 
 Default 
distance_smoothing_factor (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The discontinuity in the effective signed distance gradients at a distance of zero is regularized over an interval equal to the activation distance multiplied by this factor. While this option aids in nonlinear convergence, it allows more penetration because the effective contact stiffness becomes smaller near the effective distance of zero. When less penetration is desired, it is suggested to reduce this value. When experiencing difficulty in achieving nonlinear convergence, it is suggested to try increasing this value. It is generally not recommended for this value to exceed 1.0. 
 0.25 
edge_smoothing_factor [optional] (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The discontinuities in the effective signed distance gradients around the edges of the contact surface integration cells are regularized over an interval equal to the activation distance multiplied by this factor. While this option facilitates easier nonlinear convergence, it can increase unintentional overclosures. Therefore, it is recommended to use this option with caution, particularly when bodies are initially touching each other. 
 
corner_smoothing [optional] (beta) 
 truefalse 
 The signed effective distance is additionally smoothed around the vertices of the contact surface integration cells. While this option facilitates easier nonlinear convergence, it can increase unintentional overclosures. Therefore, it is recommended to use this option with caution, particularly when bodies are initially touching each other. 

6.6.5.4 collision_search_filter (beta)
Name 
 Type 
 Description 
 Default 
angle_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
area_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
spurious_self_contact_filter (beta) [optional] 
 SUB OBJECT 
 See linked documentation 

6.6.5.5 angle_filter (beta)
Name 
 Type 
 Description 
 Default 
threshold_angle (beta) 
 DOUBLE 
 In order to improve performance for continuation/implicit dynamics, A pair of triangles will be removed from the collision candidate set if the angle between their surface normals is under this threshold that, in degrees, ranges from 0 to 90, with a recommended value of approximately 30 degrees. This option is automatically turned off for explicit dynamics. 
 30 
6.6.5.6 area_filter (beta)
Name 
 Type 
 Description 
 Default 
threshold_area_ratio (beta) 
 DOUBLE 
 In order to improve performance for continuation/implicit dynamics by avoiding an excessive amount of collision candidates when solution is diverging, the collision search will be skipped if the ratio of the surface triangle's current area to its area at the last successful time step exceeds this value. This option is automatically turned off for explicit dynamics. 
 2 
6.6.5.7 spurious_self_contact_filter (beta)
Name 
 Type 
 Description 
 Default 
use (beta) 
 truefalse 
 If true, will not consider the interaction between integration cells from the same body when they are initially penetrate each other to avoid spurious selfcontact. When this option is turned on, intentional selfoverclosures cannot be applied. 
 true 
6.6.5.8 contact_force_scaling (beta)
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 


6.6.5.9 closest_point_penetration_based (beta)
The contact force is adjusted using a multiplicative scaling factor, which is a function of the penetration depth from the closest point on a contact surface. This adjustment helps avoid the development of spurious contact forces under certain geometry.
Name 
 Type 
 Description 
 Default 
regularization_factor (beta) 
 DOUBLE 
 Specifies a fraction of the userspecified activation distance. The scaling factor is zero at the contact surface and ramps up to one over the interval of the activation distance multiplied by this value. This option allows more penetration because the effective contact stiffness becomes smaller near the effective distance of zero. It is recommended to use a value between 0.05 and 0.1 to avoid excessive penetration. 

6.6.6 rotational_constraint (alpha)
Name 
 Type 
 Description 
 Default 
penalty (beta) [optional] 
 SUB OBJECT 
 See linked documentation 
 
reference_axis_origin (alpha) 
 [ DOUBLE, ... ] 

 
axis_orientation (alpha) 
 [ DOUBLE, ... ] 

 
 SUB OBJECT 
 See linked documentation 
 
part  set 
 STRING  STRING 
 Defines the set or part to be operated on 

6.6.6.1 penalty (beta)
Options for penalty enforcement of a boundary condition or other type of constraint. When penalty values are calculated from a dimensionless scale using material properties and element size on two sides of a material or contact interface, the smaller of the two values is selected.
Name 
 Type 
 Description 
 Default 
value (beta) 
 DOUBLE 
 The value of the penalty parameter, in the range , determining how strongly the constraint is enforced. The precise interpretation of this value depends on the choice of the parameter dimensionless, whose documentation provides a more detailed discussion. Note that the default value assumes that dimensionless is also set to its default value of true. 
 1e1 
dimensionless (beta) 
 truefalse 
 If this parameter is true, then the penalty value is interpreted as the dimensionless constant in the formula , where is a scalar estimate of the material stiffness (i.e., the Young's modulus in elasticity or the thermal conductivity in heat conduction), is a measure of element size (with units of length), and is the codimension of the constrained set, i.e., 0 for volumes, 1 for surfaces, 2 for curves, or 3 for points. If this parameter is false, then the penalty value is instead interpreted as the dimensional value of directly. The dimensionless option is recommended for most use cases. To interpret the dimensionless penalty value for the common case of constrained boundaries and interfaces () in elasticity, it is roughly the ratio of a single element's change in length under a given tensile load to the error allowed in the consraint. Note that, for any positive value, the constraint error will go to zero as the mesh is refined, since the specimen's overall change in length is distributed over more elements. Selecting too large of a penalty value makes the discrete problem harder to solve. The default value represents a good balance between accuracy and efficiency for most practical applications, but higher values may be appropriate for certain situations, such as calibrating material models with singleelement patch tests. 
 true 
6.6.6.2 axis_origin_displacement (alpha)
Name 
 Type 
 Description 
 Default 
components (alpha) 
 [ “x”  “y”  “z”, ... ] 
 Specifies which degreesoffreedom components are active. 
 
scale_factor [optional] (alpha) 
 [ DOUBLE, ... ] 
 A scalar value or vector of the same length as components which scales the function. 
 1.0 
function (alpha) 
 STRING 
 The user defined identifier of the temporal function. 

6.6.6.3 part  set
Defines the set or part to be operated on
Name 
 Type 
 Description 
 Default 
part 
 STRING 
 The user defined label of the part that defines the set. 
 
set 
 STRING 
 The user defined identifier of the geometric set. 

6.7 interaction_search_parameters (beta)
Each object in the interaction search definitions array defines search parameters to be used in an interaction. Currently the supported search definitions is a sensorbased layout.
Name 
 Type 
 Description 
 Default 
label (beta) 
 STRING 
 User defined identifier for this interaction search definition. 
 
 SUB OBJECT 
 See linked documentation 

6.7.1 sensor_based (beta)
Defines properties for sensorbased interaction search method. The layout of sensors is determined by the quadrature rule specified in the material interface or tied constraint using these search parameters. For each sensor (quadrature point) on the source surface, the nearest point is found on the target surface using the given parameters.
Name 
 Type 
 Description 
 Default 
max_iterations (beta) 
 NONNEGATIVE INTEGER 
 Specifies the maximum iterations for the search. 
 10 
relative_tolerance (beta) 
 DOUBLE 
 Specifies the relative search tolerance. 
 1e8 
bounding_box_extension (beta) 
 DOUBLE 
 Specifies the extension of the bounding box for the interaction search. 
 1e3 
6.8 interaction_properties (beta)
The interaction property definition allows the user to define the type of friction and movement that occurs once contact is initiated.
Name 
 Type 
 Description 
 Default 
label (beta) 
 STRING 
 The user defined identifier for this interaction property definition. 
 
 SUB OBJECT  SUB OBJECT 
 One of the given keywords must be defined to specify the class of interaction property 

6.8.1 frictionless (beta)
A tangential interaction property, signifying no friction will be enforced. This object has no input variables.
Name 
 Type 
 Description 
 Default 
6.8.2 coulomb_friction (beta)
A tangential interaction occurs, governed by the coulomb friction.
Name 
 Type 
 Description 
 Default 
 SUB OBJECT 
 Defines how the friction is described. 

6.8.2.1 coefficient_with_regularization (beta)
A constant friction coefficient is applied with regularization.
Name 
 Type 
 Description 
 Default 
friction_coefficient (beta) 
 DOUBLE 
 Friction coefficient. 
 
regularization_velocity (beta) 
 DOUBLE 
 The friction_coefficient is multiplied by a regularization factor. The regularization factor is zero when the tangential velocity is zero. It monotomically increases and reaches to one when the magnitude of the tangential velocity becomes regularization_velocity. regularization_velocity can be interpreted as the maximum slip velocity allowed during what should nominally be static friction. 
