- coolant_velocityThe coolant velocity as a function of time (m/s).
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:The coolant velocity as a function of time (m/s).
- temperatureThe temperature variable.
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:The temperature variable.
- vapor_pressureThe water vapor partial pressure as a function of time (Pa).
C++ Type:FunctionName
Unit:(no unit assumed)
Controllable:No
Description:The water vapor partial pressure as a function of time (Pa).
SiCOxidation
Computes the mass loss and hydrogen produced due to oxidation of CVD silicon carbide. Also computes corrosion of CVD silicon carbide
Description
The material SiCOxidation models oxidation, hydrogen production and corrosion of CVD (monolithic) silicon carbide (SiC) cladding.
At high temperatures ( 1473 K) SiC undergoes two distinct processes when exposed to steam. First silica is formed via parabolic rate kinetics through the following chemical reaction:
After oxidation occurs volatilization of the silica, which follows linear kinetics, occurs through: The parabolic and linear rate constants are computed by equations obtained from Terrani et al. (2014): where (mgcmh) is the parabolic rate consant, (mg-cmh) is the volatilization rate constant, is the water vapor partial pressure (MPa), is the temperature (K), is the gas velocity (m/s), and (J/mol-K) is the universal gas constant. The uncertainty in the exponential coefficients and the activation energies in the parabolic rate equation are 3.7 and 53000. For the linear rate equation the uncertainties are and 1.3 and 18000, respectively. The mass loss per unit area (mg/cm) is then computed through: where is the time (h). The oxide thickness can then be computed through the oxygen density present in the oxide. For silica (SiO) the density is 2650 kg/m. Therefore, the oxygen density is 1411.32 kg/m. This is equivalent to 1411.32 mg/cm. Thus, the oxide thickness is calculated by: where is the oxide thickness (cm) and is the density of the oxygen in the oxide (mg/cm). In BISON SI units are used and therefore internally to the code the units are changed such that the mass gain per unit area is in kg/m and the oxide thickness is in m.
The mass of hydrogen produced per unit area can be computed from the mass of SiC consumed and the oxidation chemical equation. The moles per unit area of SiC consumed is given by: where is the molar mass of SiC (44.11 g/mol). Then using the molar ratio in the balanced chemical equation for each mole of SiC consumed 3 moles of is produced. Therefore, the moles of is given by: Substituting for one obtains: Finally, the mass per unit area of hydrogen produced is then computed by multiplying by the molar mass of (2.016g/mol): where is the mass per unit area of hydrogen produced and is the molar mass.
SiC corrosion is dictated by the surface oxidation/formation of silica (rate limiting step) followed by dissolution in coolant. Different water chemistries lead to different observed behavior and literature work suggests that microstructure of the SiC will greatly affect corrosion resistance. Irradiation appears to accelerate corrosion via increasing the concentration of radicals in the coolant and introducing defects into the cladding. While data is very limited, and appears material dependent, it seems likely that irradiation may cause up to a magnitude of order increase in corrosion rates. Data on General Atomics (GA) prototype cladding has yielded similar out-of-pile autoclave corrosion rates as those observed in the literature. For corrosion rates under irradiation for GA prototype cladding material there are only two data points available, showing relatively large scatter. Until more irradiation data is available, a conservative corrosion rate estimate of 0.6 mg/dm/day is recommended (equivalent to 6.9444410 kg/m/s) GA (2020). This corresponds to a conservative irradiated SiC thickness loss due to corrosion of 8.28 microns/year.
Example Input Syntax
[Materials<<<{"href": "../../syntax/Materials/index.html"}>>>]
[oxidation]
type = SiCOxidation<<<{"description": "Computes the mass loss and hydrogen produced due to oxidation of CVD silicon carbide. Also computes corrosion of CVD silicon carbide", "href": "SiCOxidation.html"}>>>
temperature<<<{"description": "The temperature variable."}>>> = temperature
coolant_velocity<<<{"description": "The coolant velocity as a function of time (m/s)."}>>> = 1
vapor_pressure<<<{"description": "The water vapor partial pressure as a function of time (Pa)."}>>> = 1e6
boundary<<<{"description": "The list of boundaries (ids or names) from the mesh where this object applies"}>>> = right
output_properties<<<{"description": "List of material properties, from this material, to output (outputs must also be defined to an output type)"}>>> = 'oxide_mass_loss thickness_consumed hydrogen_produced corrosion_mass_loss corrosion_thickness_consumed'
outputs<<<{"description": "Vector of output names where you would like to restrict the output of variables(s) associated with this object"}>>> = all
[]
[](test/tests/sic_oxidation/oxidation.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
- 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.
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
- GA.
Material properties manual: general atomics silicon carbide cladding.
Technical Report GA-A28712X, General Atomics Inc., 2020.[BibTeX]
- Kurt A. Terrani, Bruce A. Pint, Chad M. Parish, Chinthaka M. Silva, Lance L. Snead, and Yutai Katoh.
Silicon carbide oxidation in steam up to 2 MPa.
Journal of the American Ceramic Society, 97(8):2331–2352, 2014.
doi:doi.org/10.1111/jace.13094.[BibTeX]