- temperatureThe temperature variable
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:The temperature variable
ADUPuZrMobility
Returns the chemical and thermal mobilities of U-Pu-Zr using equilibrium values from ADUPuZrPhaseLookup.
Description
ADUPuZrMobility is part of a system used to model constituent redistribution in U-Zr and U-Pu-Zr metallic nuclear fuels. Exactly five phases are considered in the model: , , , , and . ADUPuZrMobility calculates the chemical () and thermal () mobilities of zirconium () in these phases, allowing for predictions of constituent redistribution using the following relationship: where is the time, is the chemical potential of zirconium, and is the temperature. Here also, is a constant parameter used to maintain smoothness in by applying a penalty to gradients in . Two combinations of kernels can be used to apply the above physics, as shown in Table 1.
Table 1: Kernel combinations that can be used to implement the constituent redistribution physics.
The chemical potential and the composition dependencies of and are accounted for using information from ADUPuZrPhaseLookup. The kinetic properties of the , , , and phases are based on published interdiffusion coefficients, activation energies, and heats of transport from Hofman et al. (1996) and Kim et al. (2006). Due to a lack of experimental data, the kinetic parameters of the and phases are used to model transport in the and phases, respectively. The kinetic properties of the phase are based on published atomic mobilities from Li et al. (2010).
Scalar multipliers are applied to these parameters to account for uncertainties and/or irradiation effects. A default set of scalar multipliers were obtained by calibrating the model to Electron Probe Micro Analysis (EPMA) scans of U-Zr Fuel Elements DP-81 and DP-11, which were irradiated in Experimental Breeder Reactor II. These default values can be overridden by specifying different scalar multipliers in the input file. A detailed description of the model on which ADUPuZrMobility is based is available in Hirschhorn et al. (2021).
Two examples are provided in examples/constituent_redistribution. The first example, provided in 1d_thermo_composition.i, simulates tightly coupled thermo-chemical evolution of a U-Zr fuel in one dimension using empirical correlations to account for the effects of irradiation on the fuel's thermal conductivity. The second example, provided in 2d_thermo.i and 2d_composition.i, uses the MultiApps system to simulate loosely coupled thermo-chemical evolution of a U-Zr fuel clad in HT9 in two dimensions using BISON models to account for the effects of irradiation on the fuel's thermal conductivity.
Example Input Syntax
[Materials<<<{"href": "../../syntax/Materials/index.html"}>>>]
[mobilities]
type = ADUPuZrMobility<<<{"description": "Returns the chemical and thermal mobilities of U-Pu-Zr using equilibrium values from ADUPuZrPhaseLookup.", "href": "ADUPuZrMobility.html"}>>>
temperature<<<{"description": "The temperature variable"}>>> = T
[]
[](examples/constituent_redistribution/1d_thermo_composition.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
- computeTrueWhen false, MOOSE will not call compute methods on this material. The user must call computeProperties() after retrieving the MaterialBase via MaterialBasePropertyInterface::getMaterialBase(). Non-computed MaterialBases are not sorted for dependencies.
Default:True
C++ Type:bool
Controllable:No
Description:When false, MOOSE will not call compute methods on this material. The user must call computeProperties() after retrieving the MaterialBase via MaterialBasePropertyInterface::getMaterialBase(). Non-computed MaterialBases are not sorted for dependencies.
- constant_onNONEWhen ELEMENT, MOOSE will only call computeQpProperties() for the 0th quadrature point, and then copy that value to the other qps.When SUBDOMAIN, MOOSE will only call computeQpProperties() for the 0th quadrature point, and then copy that value to the other qps. Evaluations on element qps will be skipped
Default:NONE
C++ Type:MooseEnum
Controllable:No
Description:When ELEMENT, MOOSE will only call computeQpProperties() for the 0th quadrature point, and then copy that value to the other qps.When SUBDOMAIN, MOOSE will only call computeQpProperties() for the 0th quadrature point, and then copy that value to the other qps. Evaluations on element qps will be skipped
- d0_scalars1 3.5 4.5 1 3.5 The diffusion coefficient multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
Default:1 3.5 4.5 1 3.5
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:The diffusion coefficient multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
- declare_suffixAn optional suffix parameter that can be appended to any declared 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 declared properties. The suffix will be prepended with a '_' character.
- q_scalars1 1 1 1 1 The activation energy multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
Default:1 1 1 1 1
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:The activation energy multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
- qstar_scalars1 1 0.56 1 1 The heat of transport multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
Default:1 1 0.56 1 1
C++ Type:std::vector<double>
Unit:(no unit assumed)
Controllable:No
Description:The heat of transport multipliers for the alpha, beta, gamma, delta, and zeta phases (in that order)
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.
- implicitTrueDetermines whether this object is calculated using an implicit or explicit form
Default:True
C++ Type:bool
Controllable:No
Description:Determines whether this object is calculated using an implicit or explicit form
- 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
- output_propertiesList of material properties, from this material, to output (outputs must also be defined to an output type)
C++ Type:std::vector<std::string>
Controllable:No
Description:List of material properties, from this material, to output (outputs must also be defined to an output type)
- outputsnone Vector of output names where you would like to restrict the output of variables(s) associated with this object
Default:none
C++ Type:std::vector<OutputName>
Controllable:No
Description:Vector of output names where you would like to restrict the output of variables(s) associated with this object
Outputs 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
- Jacob Hirschhorn, Michael Tonks, and Christopher Matthews.
A CALPHAD-informed approach to modeling constituent redistribution in Zr-based metallic fuels using BISON.
Journal of Nuclear Materials, 544:152657, 2021.
doi:10.1016/j.jnucmat.2020.152657.[BibTeX]
- G. L. Hofman, S. L. Hayes, and M. C. Petri.
Temperature gradient driven constituent redistribution in U-Zr alloys.
Journal of Nuclear Materials, 227:277–286, 1996.
doi:10.1016/0022-3115(95)00129-8.[BibTeX]
- Yeon Soo Kim, S. L. Hayes, G. L. Hofman, and A. M. Yacout.
Modeling of constituent redistribution in U-Pu-Zr metallic fuel.
Journal of Nuclear Materials, 359:17–28, 2006.
doi:10.1016/j.jnucmat.2006.07.013.[BibTeX]
- W. Li, R. Hu, Y. Cui, H. Zhong, H. Chang, J. Li, and L. Zhou.
Computational study of atomic mobility for the bcc phase of the u-pu-zr ternary system.
Journal of Nuclear Materials, 407(3):220–227, 2010.
doi:10.1016/j.jnucmat.2010.10.035.[BibTeX]