- displacementsThe nonlinear displacement variables
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:The nonlinear displacement variables
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.
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
| Functionality | Generated Postprocessor Name | Created Classes |
|---|---|---|
| Average temperature of the cladding interior | average_interior_clad_temperature | SideAverageValue |
| Average centerline fuel pellet temperature | average_centerline_fuel_temperature | AxisymmetricCenterlineAverageValue |
| Average plenum temperature | plenum_temperature | SideAverageValue |
| Volume of the plenum gases | plenum_volume | InternalVolume |
| Volume of the fuel pellets | pellet_volume | InternalVolume |
| Maximum axial displacement of the clad interior | maximum_clad_elongation | NodalExtremeValue |
| Maximum axial displacement of the fuel pellets | maximum_fuel_elongation | NodalExtremeValue |
| Radial displacement of the outer cladding at the simulation end | input file name + _clad_radial_displacement_FINAL | NodalValueSampler |
| Radial displacement of the outer fuel pellet at the simulation end | input file name + _fuel_outer_radial_displacement_FINAL | NodalValueSampler |
| Max Total Hoop Strain | max_total_hoop_strain | ElementExtremeValue |
| Cladding Total Hoop Strain | clad_total_hoop_strain | LineValueSampler |
| Generated fission gas | fission_gas_generated | ElementIntegralMaterialProperty |
| Released fission gas | fission_gas_released | ElementIntegralMaterialProperty |
| Percentage of released fission gas | fission_gas_released_percentage | FGRPercent |
| Rod average burnup | average_burnup | ElementAverageValue |
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.
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.
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)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
- 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
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.