NEML2ActionCommon

The NEML2 library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Parse a NEML2 input file)

commentnote

This page is developer-facing. Users please refer to the NEML2 syntax documentation.

Overview

This action corresponds to the common area directly underneath the [NEML2] block in the input file. It defines common parameters that are also applied to each of the sub-block.

This action does not construct any object by itself. All NEML2 object construction is handled by the sub-blocks which correspond to NEML2Action.

Input Parameters

  • active__all__ If specified only the blocks named will be visited and made active

    Default:__all__

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:If specified only the blocks named will be visited and made active

  • async_dispatchTrueThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Whether to use asynchronous dispatch.)

    Default:True

    C++ Type:bool

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Whether to use asynchronous dispatch.)

  • cli_argsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Additional command line arguments to use when parsing the NEML2 input file.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Additional command line arguments to use when parsing the NEML2 input file.)

  • devicecpuThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Device on which to evaluate the NEML2 model. The string supplied must follow the following schema: (cpu|cuda)[:] where cpu or cuda specifies the device type, and : optionally specifies a device index. For example, device='cpu' sets the target compute device to be CPU, and device='cuda:1' sets the target compute device to be CUDA with device ID 1.)

    Default:cpu

    C++ Type:std::string

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Device on which to evaluate the NEML2 model. The string supplied must follow the following schema: (cpu|cuda)[:] where cpu or cuda specifies the device type, and : optionally specifies a device index. For example, device='cpu' sets the target compute device to be CPU, and device='cuda:1' sets the target compute device to be CUDA with device ID 1.)

  • export_output_targetsThe export targets corresponding to each MOOSE material property specified in export_outputs.

    C++ Type:std::vector<std::vector<OutputName>>

    Controllable:No

    Description:The export targets corresponding to each MOOSE material property specified in export_outputs.

  • export_outputsList of MOOSE material properties to export which correspond to NEML2 output variables or output derivatives. Each material property's export targets can be specified by export_output_targets. The default export target is 'none'.

    C++ Type:std::vector<MaterialPropertyName>

    Unit:(no unit assumed)

    Controllable:No

    Description:List of MOOSE material properties to export which correspond to NEML2 output variables or output derivatives. Each material property's export targets can be specified by export_output_targets. The default export target is 'none'.

  • inactiveIf specified blocks matching these identifiers will be skipped.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:If specified blocks matching these identifiers will be skipped.

  • initialize_output_valuesList of MOOSE material properties whose initial values (evaluated at the 0th time step) will be used to initialize stateful properties. See the description of initialize_outputs for more details.

    C++ Type:std::vector<MaterialPropertyName>

    Unit:(no unit assumed)

    Controllable:No

    Description:List of MOOSE material properties whose initial values (evaluated at the 0th time step) will be used to initialize stateful properties. See the description of initialize_outputs for more details.

  • initialize_outputsList of MOOSE material properties to be initialized. Each these properties must correspond to a stateful NEML2 variable (which appears on both the input old state sub-axis and the output state sub-axis). These MOOSE material properties will be initialized with the values of properties specified in the initialize_output_values list.

    C++ Type:std::vector<MaterialPropertyName>

    Unit:(no unit assumed)

    Controllable:No

    Description:List of MOOSE material properties to be initialized. Each these properties must correspond to a stateful NEML2 variable (which appears on both the input old state sub-axis and the output state sub-axis). These MOOSE material properties will be initialized with the values of properties specified in the initialize_output_values list.

  • inputThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Path to the NEML2 input file containing the NEML2 model(s).)

    C++ Type:DataFileName

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Path to the NEML2 input file containing the NEML2 model(s).)

  • modelThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Name of the NEML2 model, i.e., the string inside the brackets [] in the NEML2 input file that corresponds to the model you want to use.)

    C++ Type:std::string

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Name of the NEML2 model, i.e., the string inside the brackets [] in the NEML2 input file that corresponds to the model you want to use.)

  • moose_derivative_typesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 variable derivatives)

    C++ Type:MultiMooseEnum

    Options:MATERIAL, VARIABLE, POSTPROCESSOR

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 variable derivatives)

  • moose_derivativesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the derivative of the material model.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the derivative of the material model.)

  • moose_input_typesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Type of each MOOSE data to be used as NEML2 input variable)

    C++ Type:MultiMooseEnum

    Options:MATERIAL, VARIABLE, POSTPROCESSOR

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Type of each MOOSE data to be used as NEML2 input variable)

  • moose_inputsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data to be used as inputs of the material model.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data to be used as inputs of the material model.)

  • moose_output_typesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 output variables)

    C++ Type:MultiMooseEnum

    Options:MATERIAL, VARIABLE, POSTPROCESSOR

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 output variables)

  • moose_outputsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the output of the material model.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the output of the material model.)

  • moose_parameter_derivative_typesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 parameter derivatives)

    C++ Type:MultiMooseEnum

    Options:MATERIAL, VARIABLE, POSTPROCESSOR

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: MOOSE types used to hold the NEML2 parameter derivatives)

  • moose_parameter_derivativesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the derivative of the material model w.r.t. model parameters.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data used to hold the derivative of the material model w.r.t. model parameters.)

  • moose_parameter_typesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Type of each MOOSE data to be used as NEML2 model parameter)

    C++ Type:MultiMooseEnum

    Options:MATERIAL, VARIABLE, POSTPROCESSOR

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Type of each MOOSE data to be used as NEML2 model parameter)

  • moose_parametersThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data to be used as parameters of the material model.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of MOOSE data to be used as parameters of the material model.)

  • neml2_derivativesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of pairs of NEML2 variables to take derivatives (i.e., first in the pair w.r.t. the second in the pair).)

    C++ Type:std::vector<std::vector<std::string>>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of pairs of NEML2 variables to take derivatives (i.e., first in the pair w.r.t. the second in the pair).)

  • neml2_inputsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 input variables corresponding to each MOOSE data.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 input variables corresponding to each MOOSE data.)

  • neml2_outputsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 output variables corresponding to each MOOSE data.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 output variables corresponding to each MOOSE data.)

  • neml2_parameter_derivativesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of pairs of NEML2 variables to take derivatives (i.e., first in the pair w.r.t. the second in the pair).)

    C++ Type:std::vector<std::vector<std::string>>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of pairs of NEML2 variables to take derivatives (i.e., first in the pair w.r.t. the second in the pair).)

  • neml2_parametersThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 model parameters corresponding to each MOOSE data.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 model parameters corresponding to each MOOSE data.)

  • schedulerThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: NEML2 scheduler to use to run the model. If not specified no scheduler is used and MOOSE will pass all the constitutive updates to the provided device at once.)

    C++ Type:std::string

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: NEML2 scheduler to use to run the model. If not specified no scheduler is used and MOOSE will pass all the constitutive updates to the provided device at once.)

  • skip_inputsThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 variables to skip error checking when setting up the model input. If an input variable is skipped, its value will stay zero. If a required input variable is not skipped, an error will be raised.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 variables to skip error checking when setting up the model input. If an input variable is skipped, its value will stay zero. If a required input variable is not skipped, an error will be raised.)

  • skip_variablesThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 variables to skip when setting up the model input. If an input variable is skipped, its value will stay zero. If a required input variable is not skipped, an error will be raised.)

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: List of NEML2 variables to skip when setting up the model input. If an input variable is skipped, its value will stay zero. If a required input variable is not skipped, an error will be raised.)

  • verboseTrueThe `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Whether to print additional information about the NEML2 model at the beginning of the simulation)

    Default:True

    C++ Type:bool

    Controllable:No

    Description:The `NEML2` library is required but not enabled. Refer to the documentation for guidance on how to enable it. (Original description: Whether to print additional information about the NEML2 model at the beginning of the simulation)

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

These input parameters correspond to the common area under the [NEML2] block. The usage of the [NEML2] block is explained in details in the NEML2 syntax documentation.

Advanced Parameters