Nuclear Material SS316

Reduces the Material block length for SS316 cladding within input files.

Description

This NuclearMaterialSS316 action reduces BISON input file length by internally generating the Materials required for simulating metallic nuclear cladding, specifically SS316.

The user may elect to use the nuclear_material_SS316_table action to generate the necessary material classes for common metallic fuel simulations. All of the material blocks, generated with the default parameter settings, are shown in Table 1.

Fission Operation

commentnote

This required parameter describes the characteristic type of fission study that will occur. For metallic fuel type simulations, this is simply labeled as fission_operation = Normal. This must be placed under the NuclearMaterials block heading and cannot be placed under sub-blocks such as SS316.

Table 1: Material classes created by the NuclearMaterialSS316 action

Created ClassesPre-Set ParametersBlock NameSS316 models
ComputeIsotropicElasticityTensorpoissons_ratio = 0.265clad_elasticity_tensorElastic (No Creep)
youngs_modulus = 190e9
SS316ElasticityTensorclad_elasticity_tensorElastic + Creep
ComputeLinearElasticStressstrain = SMALLclad_stressElastic (No Creep)
ComputeFiniteStrainElasticStressstrain = FINITEclad_stressElastic (No Creep)
ComputeMultipleInelasticStressclad stressElastic + Creep
StrainAdjustedDensitystrain_free_density = 8000.0clad_density
DerivativeParsedMaterialdensity_expression = {user_input}clad_density
SS316Thermalclad_thermalThermal(Properties/Expansion)
Elastic
SS316ThermalExpansionEigenstrainclad_thermal_expansionThermalExpansion
FastNeutronFluxfast_neutron_fluxCreep
SS316CreepUpdateclad_creepCreep

Example Input Syntax

Expanded Cladding Block

[Materials]
density = 13630.0
A_U = 0.238
A_Pu = 0.239
A_N = 0.014
X_Pu = 0.1
X_N = 0.5
avo = 6.0221408e23
M_avg = '${fparse X_N * A_N + X_Pu * A_Pu + (1.0 - X_N - X_Pu) * A_U}'
atoms = '${fparse density / M_avg * (1.0 - X_N) * avo}'

[GlobalParams]
  density = ${density}
  order = SECOND
  family = LAGRANGE
  energy_per_fission = 3.2e-11 # J/fission
  volumetric_locking_correction = false
  displacements = 'disp_x disp_y'

[]

[Problem]
  type = ReferenceResidualProblem
  reference_vector = 'ref'
  extra_tag_vectors = 'ref'
  group_variables = 'disp_x disp_y'
[]

[Mesh]
  coord_type = RZ
  use_displaced_mesh = false
  [smeared_pellet_mesh]
    type = FuelPinMeshGenerator
    clad_thickness = 0.51e-3
    pellet_outer_radius = 3.1e-3
    pellet_height = 343e-3
    clad_top_gap_height = 43.5e-3
    clad_gap_width = 0.325e-3
    bottom_clad_height = 8e-3
    top_clad_height = 8e-3
    clad_bot_gap_height = 0.2e-3 # unknown
    clad_mesh_density = customize
    pellet_mesh_density = customize
    nx_p = 6
    ny_p = 260
    nx_c = 4
    ny_c = 260
    ny_cu = 3
    ny_cl = 3
    pellet_quantity = 1
    elem_type = QUAD8
  []
  patch_size = 30
  patch_update_strategy = auto
  partitioner = centroid
  centroid_partitioner_direction = y
[]

[Variables]
  [disp_x]
  []
  [disp_y]
  []
  [temp]
    initial_condition = 350
  []
[]

[AuxVariables]
  [pellet_wall_temp]
    order = CONSTANT
    family = MONOMIAL
  []
  [radial_heat_flux]
    order = CONSTANT
    family = MONOMIAL
  []
  [clad_inner_wall_temp]
    order = CONSTANT
    family = MONOMIAL
  []
[]

[Functions]
  [power_history]
    type = PiecewiseLinear
    x = '0 1e5   35e6 35100000' # unknown, final burnup was 9.6 %
    y = '0 1     1    0'
  []
  [axial_peaking_factors]
    type = PiecewiseLinear
    axis = y
    x = '0    46e-3 111e-3 200e-3 248e-3 313e-3 352e-3'
    y = '73e3 73e3  82e3   85e3   82e3   74e3   74e3'
  []
  [fission_func]
    type = ParsedFunction
    symbol_names = 'axial_peaking_factors power_history'
    symbol_values = 'axial_peaking_factors power_history'
    expression = 'linear_heating_rate := axial_peaking_factors * power_history;
             pellet_cross_sectional_area := 3.14159 * pow( 3.1e-3, 2 );
             volumetric_power := linear_heating_rate / pellet_cross_sectional_area;
             energy_per_fission := 3.2e-11;
             volumetric_power / energy_per_fission'
  []

  [coolant_press_ramp]
    type = PiecewiseLinear
    x = '0       35100000'
    y = '0.151e6 0.151e6' # unknown, Na coolant
  []
  [coolant_inlet_temp]
    type = PiecewiseLinear
    x = '0   1e5 35e6 35100000'
    y = '350 644 644  350'
  []
  [coolant_outlet_temp]
    type = PiecewiseLinear
    x = '0   1e5 35e6 35100000'
    y = '350 746 746  350'
  []
  [coolant_wall_temp]
    type = ParsedFunction
    symbol_values = 'coolant_inlet_temp coolant_outlet_temp'
    symbol_names = 'coolant_inlet_temp coolant_outlet_temp'
    expression = 'rod_length := 343e-3 + 43.5e-3 + 2 * 8e-3;
             delta_temp := coolant_outlet_temp - coolant_inlet_temp;
             interpolated_temp := coolant_inlet_temp + y * delta_temp / rod_length;
             max( min( interpolated_temp, coolant_outlet_temp ), coolant_inlet_temp )'
  []
  [radial_heat_flux]
    type = ParsedFunction
    symbol_values = 'coolant_wall_temp power_history axial_peaking_factors'
    symbol_names = 'coolant_wall_temp power_history axial_peaking_factors'
    expression = 'linear_heating_rate := axial_peaking_factors * power_history;
             pellet_radius := 3.1e-3;
             pellet_circumference := 3.14159 * pellet_radius * 2;
             linear_heating_rate / pellet_circumference'
  []
  [clad_inner_wall_temp]
    type = ParsedFunction
    symbol_values = 'radial_heat_flux coolant_wall_temp'
    symbol_names = 'radial_heat_flux coolant_wall_temp'
    expression = 'conductivity_316ss := 22;
             clad_thickness := 0.51e-3;
             coolant_wall_temp + radial_heat_flux / conductivity_316ss * clad_thickness'
  []
  [pellet_wall_temp]
    type = ParsedFunction
    symbol_values = 'radial_heat_flux coolant_wall_temp clad_inner_wall_temp'
    symbol_names = 'radial_heat_flux coolant_wall_temp clad_inner_wall_temp'
    expression = 'conductivity_gap := 100;
             gap_thickness := 0.325e-3;
             clad_inner_wall_temp + radial_heat_flux / conductivity_gap * gap_thickness'
  []

  [plenum_pressure]
    type = ConstantFunction
    value = 12.4e6 # initial fill
  []

  [porosity_ramp]
    type = PiecewiseLinear
    x = '0   1e5 35e6 35100000'
    y = '0.03 0.03 0.05  0.05' # Pellets start at 96.8% TD, but no data on final porosity.
  []
[]

[Physics/SolidMechanics/QuasiStatic]
  [fuel]
    block = pellet
    strain = SMALL
    incremental = true
    extra_vector_tags = 'ref'
    eigenstrain_names = 'fuel_thermal_expansion fuel_swelling'
    use_automatic_differentiation = true
  []
  [clad]
    block = clad
    strain = SMALL
    incremental = true
    extra_vector_tags = 'ref'
    use_automatic_differentiation = true
  []
[]

[Kernels]
  [gravity]
    type = ADGravity
    variable = disp_y
    value = -9.81
    extra_vector_tags = 'ref'
  []
  [heat]
    type = ADHeatConduction
    variable = temp
    extra_vector_tags = 'ref'
  []
  [heat_ie]
    type = ADHeatConductionTimeDerivative
    variable = temp
    extra_vector_tags = 'ref'
  []
  [heat_source]
    type = ADFissionRateHeatSource
    variable = temp
    block = pellet
    fission_rate = fission_rate
    extra_vector_tags = 'ref'
  []
[]

[AuxKernels]
  [pellet_wall_temp]
    type = FunctionAux
    variable = pellet_wall_temp
    function = pellet_wall_temp
  []
  [radial_heat_flux]
    type = FunctionAux
    variable = radial_heat_flux
    function = radial_heat_flux
  []
  [clad_inner_wall_temp]
    type = FunctionAux
    variable = clad_inner_wall_temp
    function = clad_inner_wall_temp
  []
[]

[BCs]
  [no_x_all]
    type = DirichletBC
    variable = disp_x
    boundary = 12
    value = 0.0
  []
  [no_y_fuel]
    type = DirichletBC
    variable = disp_y
    boundary = 20
    value = 0.0
  []
  [no_y_clad]
    type = DirichletBC
    variable = disp_y
    boundary = 1
    value = 0.0
  []
  [Pressure]
    [coolantPressure]
      boundary = '1 2 3'
      function = coolant_press_ramp
    []
    [plenumPressure]
      boundary = 9
      function = plenum_pressure
    []
  []
  [clad_outer_temp]
    type = FunctionDirichletBC
    boundary = '1 2 3'
    function = coolant_wall_temp
    variable = temp
  []
  [pellet_to_clad_cooling]
    type = FunctionDirichletBC
    boundary = 10
    function = pellet_wall_temp
    variable = temp
  []
[]

[Materials]
  [fission]
    type = ADGenericFunctionMaterial
    prop_names = fission_rate
    prop_values = fission_func
    outputs = all
  []

  [fuel_thermal]
    block = pellet
    type = ADMNThermal
    temperature = temp
    porosity = porosity
    outputs = all
  []
  [fuel_porosity]
    block = pellet
    type = ADGenericFunctionMaterial
    prop_names = porosity
    prop_values = porosity_ramp
    outputs = all
  []
  [fuel_elasticity_tensor]
    block = pellet
    type = ADMNElasticityTensor
    temperature = temp
    porosity = porosity
    output_properties = 'youngs_modulus poissons_ratio'
    outputs = all
  []
  [fuel_thermal_expansion]
    block = pellet
    type = ADMNThermalExpansionEigenstrain
    eigenstrain_name = fuel_thermal_expansion
    stress_free_temperature = 350
    temperature = temp

  []
  [fuel_creep]
    block = pellet
    type = ADMNCreepUpdate
    temperature = temp
    porosity = porosity
    fission_rate = fission_rate
    outputs = all
  []
  [burnup]
    type = ADBurnup
    block = pellet
    atoms_heavy_metal_per_volume = ${atoms}
    outputs = all
  []
  [fuel_swelling]
    block = pellet
    type = ADMNVolumetricSwellingEigenstrain
    eigenstrain_name = fuel_swelling
    temperature = temp
    initial_porosity = 0.03
    burnup = burnup
    outputs = all
  []
  [fuel_radial_return_stress]
    block = pellet
    type = ADComputeMultipleInelasticStress
    inelastic_models = 'fuel_creep'
  []
  [fuel_density]
    block = pellet
    type = ADStrainAdjustedDensity
    strain_free_density = ${density}
  []

  [clad_elasticity_tensor]
    block = clad
    type = ADComputeIsotropicElasticityTensor
    youngs_modulus = 190e9
    poissons_ratio = 0.265
  []
  [clad_stress]
    block = clad
    type = ADComputeLinearElasticStress
  []
  [clad_thermal]
    block = clad
    type = ADSS316Thermal
    temperature = temp
  []
  [clad_density]
    block = clad
    type = ADStrainAdjustedDensity
    strain_free_density = 8000
  []
[]
(assessment/nitride/EBRII/K4/analysis/base.i)

Simplified Cladding Block

[NuclearMaterials<<<{"href": "../index.html"}>>>]
  [SS316<<<{"href": "index.html"}>>>]
    [clad]
      block<<<{"description": "The list of ids of the blocks (subdomain) that the stress divergence kernels will be applied to"}>>> = clad
      incremental<<<{"description": "Use incremental or total strain"}>>> = true
      strain<<<{"description": "Strain formulation"}>>> = SMALL
      ss316_models<<<{"description": "Type(s) of physics models used on this block.   The choices are: Elastic Creep ThermalExpansion ThermalProperties"}>>> = 'Elastic'
    []
  []
[]
(assessment/nitride/EBRII/K4/analysis/base_action.i)

The eigenstrains have been automatically parsed and included by wrapping the SolidMechanics QuasiStatic Action inside the NuclearMaterials following the naming convention created by this class.

Input Parameters

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

    C++ Type:MultiMooseEnum

    Options:Elastic, Creep, ThermalExpansion, ThermalProperties

    Controllable:No

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

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

  • base_nameBase name for the MaterialProperties.

    C++ Type:std::string

    Controllable:No

    Description:Base name for the MaterialProperties.

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

  • density8000Clad density in kg-SS316/m^3.

    Default:8000

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Clad density in kg-SS316/m^3.

  • density_expressionParsed function (see FParser) expression for the parsed density material

    C++ Type:FunctionExpression

    Unit:(no unit assumed)

    Controllable:No

    Description:Parsed function (see FParser) expression for the parsed density material

  • 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

  • elastic_constants_modellegacy_ifrElastic constants model. Choices are: ornl legacy_ifr

    Default:legacy_ifr

    C++ Type:MooseEnum

    Options:ornl, legacy_ifr

    Controllable:No

    Description:Elastic constants model. Choices are: ornl legacy_ifr

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

  • 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_functionFunction which contains the neutron flux data.

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:Function which contains the neutron flux data.

  • 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

  • id_wastage_degradation_functionThe optional ID wastage degradation function that takes FCCI effect on cladding into consideration.

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:The optional ID wastage degradation function that takes FCCI effect on cladding into consideration.

  • 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

  • od_wastage_degradation_functionThe optional OD wastage degradation function that takes CCCI effect on cladding into consideration.

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:The optional OD wastage degradation function that takes CCCI effect on cladding into consideration.

  • 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_ratio0.265Poisson's ratio for the material.

    Default:0.265

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Poisson's ratio for the material.

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

  • tangent_operatornonlinearType of tangent operator to return. 'elastic': return the elasticity tensor. 'nonlinear': return the full, general consistent tangent operator.

    Default:nonlinear

    C++ Type:MooseEnum

    Options:elastic, nonlinear

    Controllable:No

    Description:Type of tangent operator to return. 'elastic': return the elasticity tensor. 'nonlinear': return the full, general consistent tangent operator.

  • temperatureCoupled temperature: Used in multiple models

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

    Unit:(no unit assumed)

    Controllable:No

    Description:Coupled temperature: Used in multiple models

  • 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_modulus1.9e+11Young's modulus of the material.

    Default:1.9e+11

    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`)

  • automatic_eigenstrain_namesTrueCollects all material eigenstrains and passes to required strain calculator within TMA internally.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Collects all material eigenstrains and passes to required strain calculator within TMA internally.

  • 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

  • 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

  • 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