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

  • 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

Required 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

    Options:Zr2, Zr4

    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

    Options:XFEM_MARK, NONE, INITIAL, LINEAR, NONLINEAR_CONVERGENCE, NONLINEAR, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, PRE_DISPLACE

    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

    Options:FALCON, ASTM

    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

  1. 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]
  2. 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]