- methodMethod for calculating the FCCI layer thickness: 1=Delta Carmack, 2=Ogata.
C++ Type:int
Controllable:No
Description:Method for calculating the FCCI layer thickness: 1=Delta Carmack, 2=Ogata.
- postproc_fluxThe postproccessor which provides the mass flux through the boundary.
C++ Type:PostprocessorName
Unit:(no unit assumed)
Controllable:No
Description:The postproccessor which provides the mass flux through the boundary.
- variableThe name of the variable that this object applies to
C++ Type:AuxVariableName
Unit:(no unit assumed)
Controllable:No
Description:The name of the variable that this object applies to
ThicknessLayerFCCI
Computes the FCCI layer thickness using the boundary mass flux.
Description
The ThicknessLayerFCCI AuxKernel is used to calculate the interaction layer thickness during Fuel-Clad Chemical Interaction for metal fuels. The mass flux through the boundary is required from a Postprocessor. The change in thickness layer is then applied to the Variable storing the thickness layer on the boundary. The boundary may be an internal boundary. The growth of the interaction layer assumes the same sign as the normal mass flux. Negative thickness values correspond to negative flux values with respect to the boundary normal. If the boundary normal is in the same direction as the mass flux, the thickness layer would be positive as well. The GapHeatTransfer thermal contact model may be used to provide gap species diffusion to calculate mass flux across gap sections.
For metal fuel, the Fuel-Clad Chemical Interaction layer develops as fission products diffuse from the fuel into the cladding. During long transients, such as burnup simulations, an interaction layer develops in the clad. In BISON, the change in thickness layer is tracked similar to the approach used in Karahan and Buongiorno (2010). Two methods are provided to related mass flux at a boundary to interaction layer growth.
The first method is adapted from Carmack (2012) to be a change in layer thickness. The interaction layer thickness was given as (1) where is the mass flux through the boundary, is the interaction layer thickness at time , is the density of the layer, and is the molecular weight of the layer. Eq. (1) may be easily arranged into a change in thickness, , relation assuming the mass flux is constant over the giving assuming the thickness layer growth is the same direction of the mass flux according to the boundary normal.
The second method is provided by Ogata et al. (2003) relating the movement of the boundary between two diffusion couples to the mass flux across the boundary. The relation is given as where is the solubility fraction of the fission product, is the solubility limit of the fission product in the fuel, and the right side terms are the mass flux across the boundary. As the fuel is producing fission products the boundary moves in the opposite direction than in diffusion couples. As long as the solubility fraction remains above the fuel solubility limit, the change in thickness is assuming the thickness layer growth is the same direction of the mass flux according to the boundary normal.
Example Input Syntax
[AuxKernels<<<{"href": "../../syntax/AuxKernels/index.html"}>>>]
[fcci_layer]
boundary<<<{"description": "The list of boundaries (ids or names) from the mesh where this object applies"}>>> = right
execute_on<<<{"description": "The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html."}>>> = timestep_end
method<<<{"description": "Method for calculating the FCCI layer thickness: 1=Delta Carmack, 2=Ogata."}>>> = 1
postproc_flux<<<{"description": "The postproccessor which provides the mass flux through the boundary."}>>> = right_flux
type = ThicknessLayerFCCI<<<{"description": "Computes the FCCI layer thickness using the boundary mass flux.", "href": "ThicknessLayerFCCI.html"}>>>
variable<<<{"description": "The name of the variable that this object applies to"}>>> = thickness
[]
[](test/tests/fcci_ht9/eutectic_thickness/fcci_ht9.i)Input Parameters
- 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
- boundaryThe list of boundaries (ids or names) from the mesh where this object applies
C++ Type:std::vector<BoundaryName>
Controllable:No
Description:The list of boundaries (ids or names) from the mesh where this object applies
- check_boundary_restrictedTrueWhether to check for multiple element sides on the boundary in the case of a boundary restricted, element aux variable. Setting this to false will allow contribution to a single element's elemental value(s) from multiple boundary sides on the same element (example: when the restricted boundary exists on two or more sides of an element, such as at a corner of a mesh
Default:True
C++ Type:bool
Controllable:No
Description:Whether to check for multiple element sides on the boundary in the case of a boundary restricted, element aux variable. Setting this to false will allow contribution to a single element's elemental value(s) from multiple boundary sides on the same element (example: when the restricted boundary exists on two or more sides of an element, such as at a corner of a mesh
- execute_onLINEAR TIMESTEP_ENDThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.
Default:LINEAR TIMESTEP_END
C++ Type:ExecFlagEnum
Controllable:No
Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.
- initial_contact_time0Time at which interaction layer begins forming.
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Time at which interaction layer begins forming.
- layer_density7700Interaction layer density.
Default:7700
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Interaction layer density.
- layer_mol_weight1.215Interaction Layer molecular weight.
Default:1.215
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Interaction Layer molecular weight.
- solubility_fuel0Solubility limit of the species in the fuel.
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Solubility limit of the species in the fuel.
- solubility_speciesCoupled species solubility value variable.
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:Coupled species solubility value variable.
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.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Controllable:Yes
Description:Set the enabled status of the MooseObject.
- seed0The seed for the master random number generator
Default:0
C++ Type:unsigned int
Controllable:No
Description:The seed for the master random number generator
- use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Default:False
C++ Type:bool
Controllable:No
Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Advanced Parameters
- prop_getter_suffixAn optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
C++ Type:MaterialPropertyName
Unit:(no unit assumed)
Controllable:No
Description:An optional suffix parameter that can be appended to any attempt to retrieve/get material properties. The suffix will be prepended with a '_' character.
- use_interpolated_stateFalseFor the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
Default:False
C++ Type:bool
Controllable:No
Description:For the old and older state use projected material properties interpolated at the quadrature points. To set up projection use the ProjectedStatefulMaterialStorageAction.
Material Property Retrieval Parameters
Input Files
References
- W. J. Carmack.
Temperature and burnup correlated FCCI in U-10Zr metallic fuel.
Technical Report INL/EXT-12-25550, Idaho National Laboratory, May 2012.[BibTeX]
- A. Karahan and J. Buongiorno.
A new code for predicting the thermo-mechanical and irradiation behavior of metallic fuels in sodium fast reactors.
Journal of Nuclear Materials, 396(2):283–293, 2010.
doi:10.1016/j.jnucmat.2009.11.022.[BibTeX]
- T. Ogata, M. Akabori, and A. Itoh.
Diffusion of cerium in uranium-zirconium solid solutions.
Materials Transactions, 44(1):47–52, 2003.
doi:10.2320/matertrans.44.47.[BibTeX]