Nuclear Material Insulator

Reduces the Material block length for LWR insulation within input files.

Description of Created Material Blocks

This NuclearMaterialInsulator action reduces BISON input file length by internally generating the Materials required for simulating elastic LWR nuclear insulators.

warningwarning:For LWR Use Only

This action is designed for use with only Light Water Reactor simulations which deal with Elastic stress calculations. Simulations with Inelastic models are not covered by this action.

User-based Interface

To reduce the length and complexity of necessary blocks for simulations, an extensive standardization of operating conditions has been utilized within the NuclearMaterials.

All of the blocks, generated with the default parameter settings, are shown in Table 2, Table 3, and Table 4. These blocks are created internally, based on the Insulator Models and/or physics conditions shown. Additional parameters for each created class can be found below.

commentnote

Certain parameters are determined internally to further reduce input file length and complexity.

Fission Operation

commentnote

This required parameter describes the characteristic type of fission study that will occur, i.e. Normal, LOCA, etc. This must be placed under the NuclearMaterials block heading and cannot be placed under sub-blocks such as Insulator. A description of the current different fission operation models can be found in Table 1.

Table 1: Fission Operation Descriptions

FissionOperationDescription
NoneNo fission occurs
NormalSelf-sustained nuclear chain reaction
HighBurnupHigh Percentage of Fuel Burnup
RIAReactivity Initiated Accident
LOCALoss of Coolant Accident
BumpTestShort-term reirradiation at increased power levels
HighInitialHigh Initial Rating Test
PowerRampRamp up of power output

The classes in Table 2 are automatically created when using NuclearMaterialInsulator depending on the Insulator Models and Fission operation used as well as what occurs under Physics conditions.

Table 2: Material classes created by the NuclearMaterialInsulator action

Created Material ClassesPre-Set ParametersBlock NameInsulator ModelsFission Operation
ComputeIsotropicElasticityTensorpoissons_ratio = -1insulator_elasticity_tensorElasticAll Fission Types
youngs_modulus = -1
ComputeFiniteStrainElasticStressinsulator_elastic_stressElasticAll Fission Types
ComputeThermalExpansionEigenstraininsulator_thermal_expansion |ThermalExpansionAll Fission Types
eigenstrain_name = insulator_thermal_strain
StrainAdjustedDensityinsulator_densityallAll Fission Types
HeatConductionMaterialinsulator_thermalallAll Fission Types

The classes in Table 3 are only created when Thermal or if any Fission occurs under the Fission Operation conditions.

Table 3: Auxiliary classes created by the NuclearMaterialInsulator action

Created Auxiliary ClassesTypePre-Set ParametersBlock NamePhysics/Fission Operations
TemperatureVariabletemperatureThermal
HeatConductionKernelvariable = temperatureinsulator_heatThermal
extra_vector_tags = ref
HeatConductionTimeDerivativeKernelvariable = temperature |insulator_heat_ieThermal
extra_vector_tags = ref

Table 4: Actions created by the NuclearMaterialInsulator action

Created ActionsPre-Set ParametersBlock NamePhysics/Insulator Model Conditions
TensorMechanicsActionvolumetric_locking_correction = falsePhysics/SolidMechanics/QuasiStaticMechanics
automatic_eigenstrain_names = true
decomposition_method = EigenSolution
strain = FINITE

Example Input Syntax NuclearMaterials can be used in multiple ways to simplify creation of various parts of the input file. In its most basic form, it can be used to automate the creation of the material models used to define the mechanical and thermal behavior of fuel and cladding materials. With additional options, it can also be used to automate the creation of the variables and kernels associated with mechanical and thermal physics. Examples of these two different ways to use NuclearMaterials are provided below

Example Simple Input Syntax

NuclearMaterials simplifies Material block inputs by applying standard parameter and classes depending on the simulation. It is possible to only replace the Materials blocks in an input file with the equivalent NuclearMaterialInsulator. This procedure greatly reduces the length and complexity of the the necessary inputs while fully retaining the same functionality and end results. An example of this can be seen below.

Insulator Model Parameters

  • Elastic : Models elastic stress for an incremental formulation, both

  • incremental small and incremental finite strain formulations.

  • ThermalExpansion : Models isotropic thermal expansion with constant thermal

  • expansion coefficient.

Example Fully Reduced Input Syntax

Input file length and complexity can be reduced even further by use of additional Physics and/or InsulatorModels block parameters, in addition to applying common parameters to sub-blocks under the NuclearMaterials header.

Physics parameters

  • Mechanics : This will create the TensorMechanicsAction block(s) under which it is listed. If listed under the NuclearMaterial block header, then this will be applied to all blocks under the header.

  • Thermal : This will create the temperature variable, the Kernel blocks HeatConduction, and HeatConductionTimeDerivative needed to model thermal effects for Insulator blocks.

Expanded Insulator Block

[AuxVariables<<<{"href": "../../AuxVariables/index.html"}>>>]
  [gap_conductance]
    block = 'mechanical_secondary_subdomain'
  []

  [fuel_conductance]
    order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = CONSTANT
    family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = MONOMIAL
  []

  [fast_neutron_flux]
    block = clad
  []
  [fast_neutron_fluence]
    block = clad
  []
  [grain_radius]
    block = ${blocks_fuel}
    initial_condition<<<{"description": "Specifies a constant initial condition for this variable"}>>> = ${initial_grain_radius}
  []
  [effective_creep_strain]
    block = clad
    order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = CONSTANT
    family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = MONOMIAL
  []
  [pellet_id]
    order<<<{"description": "Specifies the order of the FE shape function to use for this variable (additional orders not listed are allowed)"}>>> = CONSTANT
    family<<<{"description": "Specifies the family of FE shape functions to use for this variable"}>>> = MONOMIAL
    block = ${blocks_fuel}
  []
[]

[Kernels<<<{"href": "../../Kernels/index.html"}>>>]
  [heat]
    type = HeatConduction<<<{"description": "Diffusive heat conduction term $-\\nabla\\cdot(k\\nabla T)$ of the thermal energy conservation equation", "href": "../../../source/kernels/HeatConduction.html"}>>>
    variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = temperature
    extra_vector_tags<<<{"description": "The extra tags for the vectors this Kernel should fill"}>>> = 'ref'
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_all}
  []

  [heat_ie]
    type = HeatConductionTimeDerivative<<<{"description": "Time derivative term $\\rho c_p \\frac{\\partial T}{\\partial t}$ of the thermal energy conservation equation.", "href": "../../../source/kernels/HeatConductionTimeDerivative.html"}>>>
    variable<<<{"description": "The name of the variable that this residual object operates on"}>>> = temperature
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_all}
    extra_vector_tags<<<{"description": "The extra tags for the vectors this Kernel should fill"}>>> = 'ref'
  []
[]

[Physics<<<{"href": "../../Physics/index.html"}>>>]
  [SolidMechanics<<<{"href": "../../Physics/SolidMechanics/index.html"}>>>]
    [QuasiStatic<<<{"href": "../../Physics/SolidMechanics/QuasiStatic/index.html"}>>>]
      [insulator_pellets]
        block<<<{"description": "The list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to"}>>> = ${blocks_insulation}
        strain<<<{"description": "Strain formulation"}>>> = FINITE
        eigenstrain_names<<<{"description": "List of eigenstrains to be applied in this strain calculation"}>>> = 'insulator_fuel_thermal_eigenstrain'
        generate_output<<<{"description": "Add scalar quantity output for stress and/or strain"}>>> = 'vonmises_stress stress_xx stress_yy stress_zz'
      []
    []
  []
[]

[Materials<<<{"href": "../../Materials/index.html"}>>>]
  [insulator_pellet_elasticity]
    type = ComputeIsotropicElasticityTensor<<<{"description": "Compute a constant isotropic elasticity tensor.", "href": "../../../source/materials/ComputeIsotropicElasticityTensor.html"}>>>
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_insulation}
    youngs_modulus<<<{"description": "Young's modulus of the material."}>>> = ${insulator_youngs_modulus}
    poissons_ratio<<<{"description": "Poisson's ratio for the material."}>>> = ${insulator_poissons_ratio}
  []

  [insulator_pellet_stress]
    type = ComputeFiniteStrainElasticStress<<<{"description": "Compute stress using elasticity for finite strains", "href": "../../../source/materials/ComputeFiniteStrainElasticStress.html"}>>>
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_insulation}
  []

  [inusulator_thermal_eigenstrain]
    type = ComputeThermalExpansionEigenstrain<<<{"description": "Computes eigenstrain due to thermal expansion with a constant coefficient", "href": "../../../source/materials/ComputeThermalExpansionEigenstrain.html"}>>>
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_insulation}
    stress_free_temperature<<<{"description": "Reference temperature at which there is no thermal expansion for thermal eigenstrain calculation"}>>> = ${stress_free_temperature}
    temperature<<<{"description": "Coupled temperature"}>>> = temperature
    thermal_expansion_coeff<<<{"description": "Thermal expansion coefficient"}>>> = ${insulator_thermal_expansion_coeff}
    eigenstrain_name<<<{"description": "Material property name for the eigenstrain tensor computed by this model. IMPORTANT: The name of this property must also be provided to the strain calculator."}>>> = 'insulator_fuel_thermal_eigenstrain'
  []

  [density_insulator_pellets]
    type = StrainAdjustedDensity<<<{"description": "Creates density material property", "href": "../../../source/materials/StrainAdjustedDensity.html"}>>>
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_insulation}
    strain_free_density<<<{"description": "Material property for strain-free density"}>>> = ${insulator_density}
  []

  [thermal_insulator_pellets]
    type = HeatConductionMaterial<<<{"description": "General-purpose material model for heat conduction", "href": "../../../source/materials/HeatConductionMaterial.html"}>>>
    block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = ${blocks_insulation}
    thermal_conductivity<<<{"description": "The thermal conductivity value"}>>> = ${insulator_thermal_conductivity}
    specific_heat<<<{"description": "The specific heat value"}>>> = ${insulator_specific_heat}
  []
[]
(assessment/LWR/validation/Riso_II5/analysis/Riso_II5.i)

Fully Simplified Insulator Block

[NuclearMaterials<<<{"href": "../index.html"}>>>]
  generate_output<<<{"description": "Add scalar quantity output for stress and/or strain"}>>> = 'vonmises_stress stress_xx stress_yy stress_zz'
  fission_operation<<<{"description": "Type of fission occuring in this simulation."}>>> = 'BumpTest'
  physics<<<{"description": "Type(s) of physics used on this block."}>>> = 'Mechanics Thermal'
  initial_temperature<<<{"description": "Initial temperature in Kelvins."}>>> = ${initial_temperature}
  stress_free_temperature<<<{"description": "Reference temperature for thermal eigenstrain calculation"}>>> = ${stress_free_temperature}
  strain<<<{"description": "Strain formulation"}>>> = FINITE
  [Insulator<<<{"href": "index.html"}>>>]
    [insulator]
      block<<<{"description": "The list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to"}>>> = 'pellet_type_1 pellet_type_4'
      insulator_models<<<{"description": "Type(s) of physics models used on this block.   The choices are: Elastic ThermalExpansion"}>>> = 'Elastic ThermalExpansion'
      youngs_modulus<<<{"description": "Young's modulus of the material."}>>> = ${insulator_youngs_modulus}
      poissons_ratio<<<{"description": "Poisson's ratio for the material."}>>> = ${insulator_poissons_ratio}
      thermal_expansion_coeff<<<{"description": "Thermal expansion coefficient"}>>> = ${insulator_thermal_expansion_coeff}
      thermal_conductivity<<<{"description": "The thermal conductivity value"}>>> = ${insulator_thermal_conductivity}
      specific_heat<<<{"description": "The specific heat value"}>>> = ${insulator_specific_heat}
      density<<<{"description": "Initial insulator density"}>>> = ${insulator_density}
    []
  []
[]
(assessment/LWR/validation/Riso_II5/analysis/Riso_II5_action.i)

The eigenstrain names must be included in the SolidMechanics QuasiStatic Action following the naming convention created by this class. The easiest method to ensure this continuity is to include Mechanics in the physics input parameter. By default, this will select automatic_eigenstrain_names = true.

warningwarning

automatic_eigenstrain_names = true, the eigenstrain_names will be populated under restrictive conditions for classes such as CompositeEigenstrain, ComputeReducedOrderEigenstrain, and RankTwoTensorMaterialADConverter. The input components for these classes are not included in the eigenstrain_names passed to the TensorMechanicsAction. Set the automatic_eigenstrain_names = false and populate this list manually if these components need to be included.

[Physics<<<{"href": "../../Physics/index.html"}>>>]
  [SolidMechanics<<<{"href": "../../Physics/SolidMechanics/index.html"}>>>]
    [QuasiStatic<<<{"href": "../../Physics/SolidMechanics/QuasiStatic/index.html"}>>>]
      [insulator_pellets]
        block<<<{"description": "The list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to"}>>> = ${blocks_insulation}
        strain<<<{"description": "Strain formulation"}>>> = FINITE
        eigenstrain_names<<<{"description": "List of eigenstrains to be applied in this strain calculation"}>>> = 'insulator_fuel_thermal_eigenstrain'
        generate_output<<<{"description": "Add scalar quantity output for stress and/or strain"}>>> = 'vonmises_stress stress_xx stress_yy stress_zz'
      []
    []
  []
[]
(assessment/LWR/validation/Riso_II5/analysis/Riso_II5.i)

Input Parameters

  • densityInitial insulator density

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Initial insulator density

  • insulator_modelsType(s) of physics models used on this block. The choices are: Elastic ThermalExpansion

    C++ Type:MultiMooseEnum

    Options:Elastic, ThermalExpansion

    Controllable:No

    Description:Type(s) of physics models used on this block. The choices are: Elastic ThermalExpansion

Required 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

  • add_variablesFalseAdd the displacement variables

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Add the displacement variables

  • additional_physicsType(s) of physics used on this block. The choices are: Mechanics Thermal

    C++ Type:MultiMooseEnum

    Options:Mechanics, Thermal

    Controllable:No

    Description:Type(s) of physics used on this block. The choices are: Mechanics Thermal

  • automatic_eigenstrain_namesTrueCollects all material eigenstrains and passes to required strain calculator within the solid mechanics physics internally.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Collects all material eigenstrains and passes to required strain calculator within the solid mechanics physics internally.

  • d1_functionFunction to be multiplied by d1

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Function to be multiplied by d1

  • d1_function_variableVariable to be used when evaluating d1_function. If not given, time will be used.

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

    Controllable:No

    Description:Variable to be used when evaluating d1_function. If not given, time will be used.

  • decomposition_methodEigenSolutionMethods to calculate the finite strain and rotation increments

    Default:EigenSolution

    C++ Type:MooseEnum

    Options:TaylorExpansion, EigenSolution, HughesWinget

    Controllable:No

    Description:Methods to calculate the finite strain and rotation increments

  • diffusion_1st_activation_energiesDiffusion activation energies.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Diffusion activation energies.

  • diffusion_1st_coefficients1st diffusion coefficient.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:1st diffusion coefficient.

  • diffusion_2nd_activation_energiesSecond diffusion activation energy

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Second diffusion activation energy

  • diffusion_2nd_coefficients2nd diffusion coefficient

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

    Unit:(no unit assumed)

    Controllable:No

    Description:2nd diffusion coefficient

  • element_decay_constantsRadioactive decay constant for elements tracked

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Radioactive decay constant for elements tracked

  • element_scalingRelative scaling of element percentages

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Relative scaling of element percentages

  • elements_initial_concentrationRelative ratio of element concentration

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Relative ratio of element concentration

  • elements_trackedThe elements tracked within TRISO simulations.

    C++ Type:MultiMooseEnum

    Options:Ag, Cs, Sr

    Controllable:No

    Description:The elements tracked within TRISO simulations.

  • extra_vector_tagsThe tag names for extra vectors that residual data should be saved into

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

    Controllable:No

    Description:The tag names for extra vectors that residual data should be saved into

  • familyLAGRANGESpecifies the family of FE shape functions to use for this variable.

    Default:LAGRANGE

    C++ Type:MooseEnum

    Options:LAGRANGE, MONOMIAL, SCALAR, LAGRANGE_VEC, MONOMIAL_VEC, L2_HIERARCHIC, L2_HIERARCHIC_VEC, L2_LAGRANGE, L2_LAGRANGE_VEC, L2_RAVIART_THOMAS

    Controllable:No

    Description:Specifies the family of FE shape functions to use for this variable.

  • fission_rateCoupled Fission rate: Used in fuel burnup, creep, densification, fission gas, relocation, swelling, and thermal models

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Coupled Fission rate: Used in fuel burnup, creep, densification, fission gas, relocation, swelling, and thermal models

  • flux_factor1Constant multiplied against the function, rod average linear power, or q_variable.

    Default:1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Constant multiplied against the function, rod average linear power, or q_variable.

  • flux_functionThe function that describes the fast neutron flux

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:The function that describes the fast neutron flux

  • fuel_pin_geometryName of the UserObject that reads the pin geometry from the mesh.

    C++ Type:UserObjectName

    Controllable:No

    Description:Name of the UserObject that reads the pin geometry from the mesh.

  • generate_outputAdd scalar quantity output for stress and/or strain

    C++ Type:MultiMooseEnum

    Options:cauchy_stress_xx, cauchy_stress_xy, cauchy_stress_xz, cauchy_stress_yx, cauchy_stress_yy, cauchy_stress_yz, cauchy_stress_zx, cauchy_stress_zy, cauchy_stress_zz, creep_strain_xx, creep_strain_xy, creep_strain_xz, creep_strain_yx, creep_strain_yy, creep_strain_yz, creep_strain_zx, creep_strain_zy, creep_strain_zz, creep_stress_xx, creep_stress_xy, creep_stress_xz, creep_stress_yx, creep_stress_yy, creep_stress_yz, creep_stress_zx, creep_stress_zy, creep_stress_zz, deformation_gradient_xx, deformation_gradient_xy, deformation_gradient_xz, deformation_gradient_yx, deformation_gradient_yy, deformation_gradient_yz, deformation_gradient_zx, deformation_gradient_zy, deformation_gradient_zz, elastic_strain_xx, elastic_strain_xy, elastic_strain_xz, elastic_strain_yx, elastic_strain_yy, elastic_strain_yz, elastic_strain_zx, elastic_strain_zy, elastic_strain_zz, mechanical_strain_xx, mechanical_strain_xy, mechanical_strain_xz, mechanical_strain_yx, mechanical_strain_yy, mechanical_strain_yz, mechanical_strain_zx, mechanical_strain_zy, mechanical_strain_zz, pk1_stress_xx, pk1_stress_xy, pk1_stress_xz, pk1_stress_yx, pk1_stress_yy, pk1_stress_yz, pk1_stress_zx, pk1_stress_zy, pk1_stress_zz, pk2_stress_xx, pk2_stress_xy, pk2_stress_xz, pk2_stress_yx, pk2_stress_yy, pk2_stress_yz, pk2_stress_zx, pk2_stress_zy, pk2_stress_zz, plastic_strain_xx, plastic_strain_xy, plastic_strain_xz, plastic_strain_yx, plastic_strain_yy, plastic_strain_yz, plastic_strain_zx, plastic_strain_zy, plastic_strain_zz, small_stress_xx, small_stress_xy, small_stress_xz, small_stress_yx, small_stress_yy, small_stress_yz, small_stress_zx, small_stress_zy, small_stress_zz, strain_xx, strain_xy, strain_xz, strain_yx, strain_yy, strain_yz, strain_zx, strain_zy, strain_zz, stress_xx, stress_xy, stress_xz, stress_yx, stress_yy, stress_yz, stress_zx, stress_zy, stress_zz, effective_plastic_strain, effective_creep_strain, firstinv_stress, firstinv_cauchy_stress, firstinv_pk1_stress, firstinv_pk2_stress, firstinv_small_stress, firstinv_strain, hydrostatic_stress, hydrostatic_cauchy_stress, hydrostatic_pk1_stress, hydrostatic_pk2_stress, hydrostatic_small_stress, intensity_stress, intensity_cauchy_stress, intensity_pk1_stress, intensity_pk2_stress, intensity_small_stress, l2norm_mechanical_strain, l2norm_stress, l2norm_cauchy_stress, l2norm_pk1_stress, l2norm_strain, l2norm_elastic_strain, l2norm_plastic_strain, l2norm_creep_strain, max_principal_mechanical_strain, max_principal_stress, max_principal_cauchy_stress, max_principal_pk1_stress, max_principal_pk2_stress, max_principal_small_stress, max_principal_strain, maxshear_stress, maxshear_cauchy_stress, maxshear_pk1_stress, maxshear_pk2_stress, maxshear_small_stress, mid_principal_mechanical_strain, mid_principal_stress, mid_principal_cauchy_stress, mid_principal_pk1_stress, mid_principal_pk2_stress, mid_principal_small_stress, mid_principal_strain, min_principal_mechanical_strain, min_principal_stress, min_principal_cauchy_stress, min_principal_pk1_stress, min_principal_pk2_stress, min_principal_small_stress, min_principal_strain, secondinv_stress, secondinv_cauchy_stress, secondinv_pk1_stress, secondinv_pk2_stress, secondinv_small_stress, secondinv_strain, thirdinv_stress, thirdinv_cauchy_stress, thirdinv_pk1_stress, thirdinv_pk2_stress, thirdinv_small_stress, thirdinv_strain, triaxiality_stress, triaxiality_cauchy_stress, triaxiality_pk1_stress, triaxiality_pk2_stress, triaxiality_small_stress, volumetric_mechanical_strain, volumetric_strain, vonmises_stress, vonmises_cauchy_stress, vonmises_pk1_stress, vonmises_pk2_stress, directional_stress, directional_strain, axial_stress, axial_strain, axial_plastic_strain, axial_creep_strain, axial_elastic_strain, hoop_stress, hoop_strain, hoop_plastic_strain, hoop_creep_strain, hoop_elastic_strain, radial_stress, radial_strain, spherical_hoop_stress, spherical_hoop_strain, spherical_hoop_plastic_strain, spherical_hoop_creep_strain, spherical_hoop_elastic_strain, spherical_radial_stress, spherical_radial_strain

    Controllable:No

    Description:Add scalar quantity output for stress and/or strain

  • 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.

  • incrementalFalseUse incremental or total strain

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Use incremental or total strain

  • orderSECONDSpecifies the order of the FE shape function to use for this variable.

    Default:SECOND

    C++ Type:MooseEnum

    Options:CONSTANT, FIRST, SECOND, THIRD, FOURTH, FIFTH, SIXTH, SEVENTH, EIGHTH, NINTH

    Controllable:No

    Description:Specifies the order of the FE shape function to use for this variable.

  • out_of_plane_pressure0Function used to prescribe pressure in the out-of-plane direction (y for 1D Axisymmetric or z for 2D Cartesian problems)

    Default:0

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Function used to prescribe pressure in the out-of-plane direction (y for 1D Axisymmetric or z for 2D Cartesian problems)

  • physicsType(s) of physics used on this block.

    C++ Type:MultiMooseEnum

    Options:Mechanics, Thermal

    Controllable:No

    Description:Type(s) of physics used on this block.

  • poissons_ratio-1Poisson's ratio for the material.

    Default:-1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Poisson's ratio for the material.

  • specific_heatThe specific heat value

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The specific heat value

  • strainSMALLStrain formulation

    Default:SMALL

    C++ Type:MooseEnum

    Options:SMALL, FINITE

    Controllable:No

    Description:Strain formulation

  • stress_free_temperatureReference temperature for thermal eigenstrain calculation

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Reference temperature for thermal eigenstrain calculation

  • system_pressure_functionThe function to use for the pressure on the exterior of the cladding.

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:The function to use for the pressure on the exterior of the cladding.

  • temperatureCoupled temperature: Used in multiple models

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Coupled temperature: Used in multiple models

  • thermal_conductivityThe thermal conductivity value

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The thermal conductivity value

  • thermal_expansion_coeffThermal expansion coefficient

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Thermal expansion coefficient

  • use_automatic_differentiationFalseFlag to use automatic differentiation (AD) objects when possible

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Flag to use automatic differentiation (AD) objects when possible

  • youngs_modulus-1Young's modulus of the material.

    Default:-1

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Young's modulus of the material.

Optional Parameters

  • additional_generate_outputAdd scalar quantity output for stress and/or strain (will be appended to the list in `generate_output`)

    C++ Type:MultiMooseEnum

    Options:cauchy_stress_xx, cauchy_stress_xy, cauchy_stress_xz, cauchy_stress_yx, cauchy_stress_yy, cauchy_stress_yz, cauchy_stress_zx, cauchy_stress_zy, cauchy_stress_zz, creep_strain_xx, creep_strain_xy, creep_strain_xz, creep_strain_yx, creep_strain_yy, creep_strain_yz, creep_strain_zx, creep_strain_zy, creep_strain_zz, creep_stress_xx, creep_stress_xy, creep_stress_xz, creep_stress_yx, creep_stress_yy, creep_stress_yz, creep_stress_zx, creep_stress_zy, creep_stress_zz, deformation_gradient_xx, deformation_gradient_xy, deformation_gradient_xz, deformation_gradient_yx, deformation_gradient_yy, deformation_gradient_yz, deformation_gradient_zx, deformation_gradient_zy, deformation_gradient_zz, elastic_strain_xx, elastic_strain_xy, elastic_strain_xz, elastic_strain_yx, elastic_strain_yy, elastic_strain_yz, elastic_strain_zx, elastic_strain_zy, elastic_strain_zz, mechanical_strain_xx, mechanical_strain_xy, mechanical_strain_xz, mechanical_strain_yx, mechanical_strain_yy, mechanical_strain_yz, mechanical_strain_zx, mechanical_strain_zy, mechanical_strain_zz, pk1_stress_xx, pk1_stress_xy, pk1_stress_xz, pk1_stress_yx, pk1_stress_yy, pk1_stress_yz, pk1_stress_zx, pk1_stress_zy, pk1_stress_zz, pk2_stress_xx, pk2_stress_xy, pk2_stress_xz, pk2_stress_yx, pk2_stress_yy, pk2_stress_yz, pk2_stress_zx, pk2_stress_zy, pk2_stress_zz, plastic_strain_xx, plastic_strain_xy, plastic_strain_xz, plastic_strain_yx, plastic_strain_yy, plastic_strain_yz, plastic_strain_zx, plastic_strain_zy, plastic_strain_zz, small_stress_xx, small_stress_xy, small_stress_xz, small_stress_yx, small_stress_yy, small_stress_yz, small_stress_zx, small_stress_zy, small_stress_zz, strain_xx, strain_xy, strain_xz, strain_yx, strain_yy, strain_yz, strain_zx, strain_zy, strain_zz, stress_xx, stress_xy, stress_xz, stress_yx, stress_yy, stress_yz, stress_zx, stress_zy, stress_zz, effective_plastic_strain, effective_creep_strain, firstinv_stress, firstinv_cauchy_stress, firstinv_pk1_stress, firstinv_pk2_stress, firstinv_small_stress, firstinv_strain, hydrostatic_stress, hydrostatic_cauchy_stress, hydrostatic_pk1_stress, hydrostatic_pk2_stress, hydrostatic_small_stress, intensity_stress, intensity_cauchy_stress, intensity_pk1_stress, intensity_pk2_stress, intensity_small_stress, l2norm_mechanical_strain, l2norm_stress, l2norm_cauchy_stress, l2norm_pk1_stress, l2norm_strain, l2norm_elastic_strain, l2norm_plastic_strain, l2norm_creep_strain, max_principal_mechanical_strain, max_principal_stress, max_principal_cauchy_stress, max_principal_pk1_stress, max_principal_pk2_stress, max_principal_small_stress, max_principal_strain, maxshear_stress, maxshear_cauchy_stress, maxshear_pk1_stress, maxshear_pk2_stress, maxshear_small_stress, mid_principal_mechanical_strain, mid_principal_stress, mid_principal_cauchy_stress, mid_principal_pk1_stress, mid_principal_pk2_stress, mid_principal_small_stress, mid_principal_strain, min_principal_mechanical_strain, min_principal_stress, min_principal_cauchy_stress, min_principal_pk1_stress, min_principal_pk2_stress, min_principal_small_stress, min_principal_strain, secondinv_stress, secondinv_cauchy_stress, secondinv_pk1_stress, secondinv_pk2_stress, secondinv_small_stress, secondinv_strain, thirdinv_stress, thirdinv_cauchy_stress, thirdinv_pk1_stress, thirdinv_pk2_stress, thirdinv_small_stress, thirdinv_strain, triaxiality_stress, triaxiality_cauchy_stress, triaxiality_pk1_stress, triaxiality_pk2_stress, triaxiality_small_stress, volumetric_mechanical_strain, volumetric_strain, vonmises_stress, vonmises_cauchy_stress, vonmises_pk1_stress, vonmises_pk2_stress, directional_stress, directional_strain, axial_stress, axial_strain, axial_plastic_strain, axial_creep_strain, axial_elastic_strain, hoop_stress, hoop_strain, hoop_plastic_strain, hoop_creep_strain, hoop_elastic_strain, radial_stress, radial_strain, spherical_hoop_stress, spherical_hoop_strain, spherical_hoop_plastic_strain, spherical_hoop_creep_strain, spherical_hoop_elastic_strain, spherical_radial_stress, spherical_radial_strain

    Controllable:No

    Description:Add scalar quantity output for stress and/or strain (will be appended to the list in `generate_output`)

  • blockThe list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to

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

    Controllable:No

    Description:The list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to

  • displacementsThe displacements appropriate for the simulation geometry and coordinate system: Used in density and strain models

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The displacements appropriate for the simulation geometry and coordinate system: Used in density and strain models

  • volumetric_locking_correctionFalseFlag to correct volumetric locking

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Flag to correct volumetric locking

Mechanics 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.

Advanced Parameters