- hoop_stressCoupled hoop stress.
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:Coupled hoop stress.
- temperatureCoupled temperature (K)
C++ Type:std::vector<VariableName>
Unit:(no unit assumed)
Controllable:No
Description:Coupled temperature (K)
- 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
CumulativeDamageIndex
Computes the cumulative damage to cladding for low temperature steady-state conditions.
Description
Intergranular stress corrosion cracking, typically caused by pellet-clad interaction (PCI), can lead to clad failure during normal operation. A cumulative damage model can be used to predict failure in the form of a cumulative damage index. Two models are available, the FALCON model (Rashid et al., 1988) and the ASTM model (Roberts et al., 1979).
FALCON Model
A cumulative damage model is used in BISON to estimate cladding damage for low temperature steady-state conditions. The model is based on the notion of a cumulative damage index, which has the following form. (1) In Eq. (1), is the amount of damage at time (all time in seconds), is the failure time at stress (all stress in units of MPa), is temperature (K), and is burnup (MWd/MTU).
The variable has the form: (2) where is the clad yield stress, and (3) where the stress is a threshold stress, which has the form: (4) The model for cumulative damage index (Eq. (1)) activates only when and 5000 MWd/MTU.
ASTM Model
An alternative model is developed for the PCI screening in BISON. The equation for failure time is written as where is the clad hoop stress, is the texture angle, is iodine concentration in . = . Assuming fission gas release, the iodine concentration is computed as using an empirical equation in Roberts et al. (1979). This equation also indicates a threshold stress for the accumulation of damage. The threshold stress is The accumulation of damage is limited by a maximum time after reaching the peak stress, and the parameter is calibrated from ramp test data and is set as 1000 sec.
Example Input Syntax
[AuxKernels<<<{"href": "../../syntax/AuxKernels/index.html"}>>>]
[cumulative_damage_index]
type = CumulativeDamageIndex<<<{"description": "Computes the cumulative damage to cladding for low temperature steady-state conditions.", "href": "CumulativeDamageIndex.html"}>>>
variable<<<{"description": "The name of the variable that this object applies to"}>>> = cumulative_damage_index
burnup<<<{"description": "Name of Postprocessor holding the average burnup."}>>> = burnup
temperature<<<{"description": "Coupled temperature (K)"}>>> = temp
hoop_stress<<<{"description": "Coupled hoop stress."}>>> = stress_zz
yield_stress<<<{"description": "Constant value of the yield stress of the clad (in Pa)."}>>> = 240e6
clad_type<<<{"description": "The cladding type."}>>> = 'Zr2'
block<<<{"description": "The list of blocks (ids or names) that this object will be applied"}>>> = 1
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
[]
[](test/tests/cumulative_damage_index/cumulative_damage_index_test.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
- burnupburnupName of Postprocessor holding the average burnup.
Default:burnup
C++ Type:PostprocessorName
Unit:(no unit assumed)
Controllable:No
Description:Name of Postprocessor holding the average burnup.
- 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
- clad_typeZr4The cladding type.
Default:Zr4
C++ Type:MooseEnum
Controllable:No
Description:The cladding type.
- execute_onTIMESTEP_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: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_burnup0Burnup in FIMA.
Default:0
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Burnup in FIMA.
- iodine_concentration0.03Iodine concentration in g/cm^2.
Default:0.03
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Iodine concentration in g/cm^2.
- max_relaxation_time1000Maximum time for limiting CDI calculation.
Default:1000
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Maximum time for limiting CDI calculation.
- model_optionFALCONThe model to use for computing the CDI
Default:FALCON
C++ Type:MooseEnum
Controllable:No
Description:The model to use for computing the CDI
- stress_concentration_factor1Stress concentration factor.
Default:1
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Stress concentration factor.
- texture_angle0.523599Texture angle.
Default:0.523599
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Texture angle.
- yield_stressConstant value of the yield stress of the clad (in Pa).
C++ Type:double
Unit:(no unit assumed)
Controllable:No
Description:Constant value of the yield stress of the clad (in Pa).
- yield_stress_propertyThe name of the material property containing the cladding yield stress (in Pa).
C++ Type:MaterialPropertyName
Unit:(no unit assumed)
Controllable:No
Description:The name of the material property containing the cladding yield stress (in Pa).
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
- Y. R. Rashid, A. J. Zangari, and C. L. Lin.
Modeling of PCI Under Steady State and Transient Operating Conditions.
In Proceedings of a technical committee meeting organized by the IAEA: Water Reactor Fuel Element Computer Modelling in Steady State, Transient, and Accident Conditions. Preston, United Kingdom, September 18-22, 1988.[BibTeX]
- J. T. A. Roberts, R. L. Jones, D. Cubicciotti, A. K. Miller, H. F. Wachob, E. Smith, and F. L. Yaggee.
A stress corrosion cracking model for pellet-cladding interaction failures in light-water reactor fuel rods.
In Zirconium in the Nuclear Industry: Fourth Conference, 285–305. ASTM STP 681, American Society for Testing and Materials, 1979, 1979.[BibTeX]