Standard Metallic Fuel Rod Outputs Action System

Description

The StandardMetallicFuelRodOutputs action simplifies the input file of a metallic fuel simulation by creating up to 11 postprocessors, vector postprocessors, and user objects which are commonly used to analyze the results of Bison simulations. The standard names given to these postprocessors and vector postprocessors by this action aid in the generation of plots with a common plotting tool.

warningwarning:For Metallic Fuel Use Only

This action is designed for use with only Metallic Fuel simulations run with a mesh generated by either the mesh script or the FuelPinMeshGenerator; this action relies on the use of the boundary condition naming conventions in these files.

The user may elect to use the StandardMetallicFuelRodOutputs action to generate output for only the cladding, only the fuel pellets, or both as appropriate to the simulation. All of the possible outputs, generated with the default parameter setting rod_component = Both, are shown in Table 1.

Table 1: Correspondence Among Action Functionality and MooseObjects for the StandardMetallicFuelRodOutputs action

FunctionalityGenerated Postprocessor NameCreated Classes
Average temperature of the cladding interioraverage_interior_clad_temperatureSideAverageValue
Average centerline fuel pellet temperatureaverage_centerline_fuel_temperatureAxisymmetricCenterlineAverageValue
Average plenum temperatureplenum_temperatureSideAverageValue
Volume of the plenum gasesplenum_volumeInternalVolume
Volume of the fuel pelletspellet_volumeInternalVolume
Maximum axial displacement of the clad interiormaximum_clad_elongationNodalExtremeValue
Maximum axial displacement of the fuel pelletsmaximum_fuel_elongationNodalExtremeValue
Radial displacement of the outer cladding at the simulation endinput file name + _clad_radial_displacement_FINALNodalValueSampler
Radial displacement of the outer fuel pellet at the simulation endinput file name + _fuel_outer_radial_displacement_FINALNodalValueSampler
Max Total Hoop Strainmax_total_hoop_strainElementExtremeValue
Cladding Total Hoop Strainclad_total_hoop_strainLineValueSampler
Generated fission gasfission_gas_generatedElementIntegralMaterialProperty
Released fission gasfission_gas_releasedElementIntegralMaterialProperty
Percentage of released fission gasfission_gas_released_percentageFGRPercent
Rod average burnupaverage_burnupElementAverageValue
commentnote:Plenum Pressure

Additionally, this action can create the PlenumPressure by including the initial_pressure. For simplicity, the gas constant for this situation is assumed to be R = 8.3143 which is in units of J K mol. Additional unmeshed volumes and their corresponding temperatures can be included when calculating plenum pressure, e.g. the volume between dish and chamfer surfaces of adjacent pellets by using the parameters additional_volumes and temperature_of_additional_volumes.

commentnote:Volume of the Plenum Gas

In calculation the volume of the plenum gas, additional volumes can be included via the parameter internal_volume_addition. This can apply to situations such as the addition of sodium within the internal volume.

commentnote

The action accommodates different naming conventions. The amount of fission gas produced can be called fis_gas_prod or fgm_produced, while the amount of fission gas released can be named either fis_gas_rel or fgm_released.

Example Input File Syntax

The default behavior of the StandardMetallicFuelRodOutputs action will create a standard set of outputs for both the fuel mesh block component of the rod and the cladding:

[StandardMetallicFuelRodOutputs<<<{"href": "index.html"}>>>]
  initial_pressure<<<{"description": "The initial pressure of the plenum gas in Pa."}>>> = 0.084e6 # Pa
  fuel_pellet_blocks<<<{"description": "The list of names of the blocks (subdomains) for the fuel pellets."}>>> = 'pellet'
  plenum_boundary_name<<<{"description": "The name of the boundary to use for the plenum temperature and plenum volume postprocessor calculations. Necessary only for non-standard clad only meshes."}>>> = 'inside_surfaces'
[]
(test/tests/standard_metallic_outputs_action/x441_mini_fuel_rod.i)

It is also possible to use the StandardMetallicFuelRodOutputs action to generate outputs for only the fuel or only the cladding, depending on the rod_component selected. Here an a similar example of the StandardLWRFuelRodOutputs action for a fuel pellet only simulation is shown:

[StandardLWRFuelRodOutputs<<<{"href": "../StandardLWRFuelRodOutputs/index.html"}>>>]
  temperature<<<{"description": "The temperature variable name."}>>> = temp
  rod_component<<<{"description": "The mesh blocks for which the standard outputs should be generated. Options are FUEL CLAD BOTH."}>>> = fuel
  fuel_pellet_blocks<<<{"description": "The list of names of the blocks (subdomains) for the fuel pellets."}>>> = fuel_pellet
[]
(test/tests/standard_lwr_outputs_action/pellet_only.i)
commentnote:Set Boundary Names for Cladding Burst Cases

For cladding burst tests which are run only on a hollow tube mesh, the advanced parameters plenum_boundary_name and external_clad_boundary_name should be set to ensure the correct boundary or boundaries are used in the calculation of the plenum volume, plenum temperature, the average clad interior temperature, and the radial displacement of the cladding exterior.

Note that when plenum_boundary_name is set, the boundaries specified by arguments for this parameter are used for both the plenum quantities and the average clad interior temperature.

[StandardLWRFuelRodOutputs<<<{"href": "../StandardLWRFuelRodOutputs/index.html"}>>>]
  rod_component<<<{"description": "The mesh blocks for which the standard outputs should be generated. Options are FUEL CLAD BOTH."}>>> = clad
  cladding_blocks<<<{"description": "The list of names of the block (subdomain) for the cladding. Necessary only for non-standard clad only meshes."}>>> = 0
  plenum_boundary_name<<<{"description": "The name of the boundary to use for the plenum temperature and plenum volume postprocessor calculations. Necessary only for non-standard clad only meshes."}>>> = 'left'
  external_clad_boundary_name<<<{"description": "The name of the boundary to use for the cladding radial displacement vector postprocessor calculations. Necessary only for non-standard clad only meshes."}>>> = 'right'
[]
(test/tests/standard_lwr_outputs_action/clad_nonstandard_names.i)

Input Parameters

  • displacementsThe nonlinear displacement variables

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The nonlinear displacement variables

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

  • additional_volumesThe name of the postprocessor(s) that hold additional volumes that are connected to the cavity but not meshed.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The name of the postprocessor(s) that hold additional volumes that are connected to the cavity but not meshed.

  • blockThe list of blocks (ids or names) that this object will be applied

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

    Controllable:No

    Description:The list of blocks (ids or names) that this object will be applied

  • fuel_pellet_blocksThe list of names of the blocks (subdomains) for the fuel pellets.

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

    Controllable:No

    Description:The list of names of the blocks (subdomains) for the fuel pellets.

  • fuel_pin_geometryName of fuel pin geometry UserObject.

    C++ Type:UserObjectName

    Controllable:No

    Description:Name of fuel pin geometry UserObject.

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

  • initial_pressureThe initial pressure of the plenum gas in Pa.

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:The initial pressure of the plenum gas in Pa.

  • internal_volume_additionAn additional volume to be included in the internal volume calculation.

    C++ Type:FunctionName

    Unit:(no unit assumed)

    Controllable:No

    Description:An additional volume to be included in the internal volume calculation.

  • layeredFalseWhether this analysis uses a layered 1D or layered 2D mesh.

    Default:False

    C++ Type:bool

    Controllable:No

    Description:Whether this analysis uses a layered 1D or layered 2D mesh.

  • out_of_plane_strainstrain_yyThe out-of-plane strain variable.

    Default:strain_yy

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:The out-of-plane strain variable.

  • out_of_plane_strain_claddingcladding_strain_yyName of the UserObject that contains the layered average out_of_plane_strain in the cladding.

    Default:cladding_strain_yy

    C++ Type:UserObjectName

    Controllable:No

    Description:Name of the UserObject that contains the layered average out_of_plane_strain in the cladding.

  • out_of_plane_strain_fuelfuel_strain_yyName of the UserObject that contains the layered average out_of_plane_strain in the fuel.

    Default:fuel_strain_yy

    C++ Type:UserObjectName

    Controllable:No

    Description:Name of the UserObject that contains the layered average out_of_plane_strain in the fuel.

  • rod_componentBOTHThe mesh blocks for which the standard outputs should be generated. Options are FUEL CLAD BOTH.

    Default:BOTH

    C++ Type:MooseEnum

    Options:FUEL, CLAD, BOTH

    Controllable:No

    Description:The mesh blocks for which the standard outputs should be generated. Options are FUEL CLAD BOTH.

  • temperaturetemperatureThe temperature variable name.

    Default:temperature

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:The temperature variable name.

  • temperature_of_additional_volumesThe name of the postprocessor(s) that hold the temperatures of the additional volumes.

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

    Unit:(no unit assumed)

    Controllable:No

    Description:The name of the postprocessor(s) that hold the temperatures of the additional volumes.

  • 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

Optional Parameters

  • cladding_blocksThe list of names of the block (subdomain) for the cladding. Necessary only for non-standard clad only meshes.

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

    Controllable:No

    Description:The list of names of the block (subdomain) for the cladding. Necessary only for non-standard clad only meshes.

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

  • external_clad_boundary_nameThe name of the boundary to use for the cladding radial displacement vector postprocessor calculations. Necessary only for non-standard clad only meshes.

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

    Controllable:No

    Description:The name of the boundary to use for the cladding radial displacement vector postprocessor calculations. Necessary only for non-standard clad only meshes.

  • plenum_boundary_nameThe name of the boundary to use for the plenum temperature and plenum volume postprocessor calculations. Necessary only for non-standard clad only meshes.

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

    Controllable:No

    Description:The name of the boundary to use for the plenum temperature and plenum volume postprocessor calculations. Necessary only for non-standard clad only meshes.

Advanced Parameters

Associated Actions

Available Actions

  • Bison App
  • StandardMetallicFuelRodOutputsActionSets up the Auxvariables, Auxkernels, and Postprocessors required to generate the standard set of fuel rod simulation outputs for a 2D-RZ metallic fuel simulation. Not currently suitable for use with layered 1D or 3D meshes.