MOX Fuel MATPRO Thermal and Irradiation Creep Update

Calculates the steady state thermal and irradiation creep for MOX fuel according to MATPRO and Guerrin (1985), respectively. This material must be run in conjunction with ComputeMultipleInelasticStress.

Description

The creep model for MOX, MOXCreepMATPROUpdate, is a combined model from MATPRO (Allison et al., 1993; Guerin, 1985). The experimental data used by MATPRO for MOX covers a temperature range to 1500 K, such that the Bison model accounts for thermal creep. Guerin (1985) provides an semi-empirical law for MOX irradiation creep, taken from Milet's experiments, results of which have been published in Milet and Piconi (1983). MATPRO provides a time-dependant multiplier to account for both primary and secondary creep. The creep rate for MOX is higher than that of UO.

The creep model for MOX implemented in Bison is given by Allison et al. (1993): (1) where the steady state secondary thermal and irradiation creep is given by (2) In Eq. 1 and Eq. 2, is the temperature (K), is time (s), is the effective von Mises stress (Pa), is the fission rate (m s), is the grain size (microns), is the density percent of the theoretical density of UO, and is the weight percent concentration of PuO in the fuel. The values of these parameters are given in Table 1.

Table 1: Material Parameters for Steady State Thermal Secondary Creep (Allison et al., 1993) and Irradiation Creep (Guerin, 1985)

Material ParameterValueUnits
a-
b
A (irradiation creep coeff)
B1
B2
B3-
B4-
B5
B7-
Q3 (activation energy / gas constant)
Q4 (activation energy / gas constant)

Time Origin

The time origin for primary creep is updated in Bison when the stress rate is greater than a value specified by the user. Two successive time origins cannot be closer than 5 times the characteristic time of transient creep.

Example Input Syntax


[./mox_creep]
  type = MOXCreepMATPROUpdate
  fission_rate = fission_rate
  grain_radius = 5.0e-6
  Pu_content = 7
  temperature = temp
[../]
(test/tests/tensor_mechanics/mox_creep/mox_creep.i)

MOXCreepMATPROUpdate must be run in conjunction with the inelastic strain return mapping stress calculator as shown below:


[./radial_return_stress]
  type = ComputeMultipleInelasticStress
  tangent_operator = elastic
  inelastic_models = 'mox_creep'
[../]
(test/tests/tensor_mechanics/mox_creep/mox_creep.i)

Input Parameters

  • temperatureCoupled temperature, in K

    C++ Type:std::vector

    Description:Coupled temperature, in K

  • densityInitial fuel density, in kg/m^3

    C++ Type:double

    Description:Initial fuel density, in kg/m^3

Required Parameters

  • grain_radius1e-05Fuel grain radius (m)

    Default:1e-05

    C++ Type:double

    Description:Fuel grain radius (m)

  • max_inelastic_increment0.0001The maximum inelastic strain increment allowed in a time step

    Default:0.0001

    C++ Type:double

    Description:The maximum inelastic strain increment allowed in a time step

  • fission_rateCoupled fission rate, in m^3/s

    C++ Type:std::vector

    Description:Coupled fission rate, in m^3/s

  • base_nameOptional parameter that defines a prefix for all material properties related to this stress update model. This allows for multiple models of the same type to be used without naming conflicts.

    C++ Type:std::string

    Description:Optional parameter that defines a prefix for all material properties related to this stress update model. This allows for multiple models of the same type to be used without naming conflicts.

  • max_its30Maximum number of Newton iterations

    Default:30

    C++ Type:unsigned int

    Description:Maximum number of Newton iterations

  • Pu_content7content of PuO2, in weight percent

    Default:7

    C++ Type:double

    Description:content of PuO2, in weight percent

  • acceptable_multiplier10Factor applied to relative and absolute tolerance for acceptable convergence if iterations are no longer making progress

    Default:10

    C++ Type:double

    Description:Factor applied to relative and absolute tolerance for acceptable convergence if iterations are no longer making progress

  • absolute_tolerance1e-11Absolute convergence tolerance for Newton iteration

    Default:1e-11

    C++ Type:double

    Description:Absolute convergence tolerance for Newton iteration

  • boundaryThe list of boundary IDs from the mesh where this boundary condition applies

    C++ Type:std::vector

    Description:The list of boundary IDs from the mesh where this boundary condition applies

  • relative_tolerance1e-08Relative convergence tolerance for Newton iteration

    Default:1e-08

    C++ Type:double

    Description:Relative convergence tolerance for Newton iteration

  • blockThe list of block ids (SubdomainID) that this object will be applied

    C++ Type:std::vector

    Description:The list of block ids (SubdomainID) that this object will be applied

  • transient_stress_rate50stress rate limit which activates transient creep

    Default:50

    C++ Type:double

    Description:stress rate limit which activates transient creep

Optional Parameters

  • effective_inelastic_strain_nameeffective_creep_strainName of the material property that stores the effective inelastic strain

    Default:effective_creep_strain

    C++ Type:std::string

    Description:Name of the material property that stores the effective inelastic strain

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Description:Set the enabled status of the MooseObject.

  • 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

    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.

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • seed0The seed for the master random number generator

    Default:0

    C++ Type:unsigned int

    Description:The seed for the master random number generator

  • implicitTrueDetermines whether this object is calculated using an implicit or explicit form

    Default:True

    C++ Type:bool

    Description:Determines whether this object is calculated using an implicit or explicit form

  • 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 computeSubdomainProperties() 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

    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 computeSubdomainProperties() for the 0th quadrature point, and then copy that value to the other qps. Evaluations on element qps will be skipped

Advanced Parameters

  • internal_solve_output_onon_errorWhen to output internal Newton solve information

    Default:on_error

    C++ Type:MooseEnum

    Description:When to output internal Newton solve information

  • internal_solve_full_iteration_historyFalseSet true to output full internal Newton iteration history at times determined by `internal_solve_output_on`. If false, only a summary is output.

    Default:False

    C++ Type:bool

    Description:Set true to output full internal Newton iteration history at times determined by `internal_solve_output_on`. If false, only a summary is output.

Debug Parameters

  • output_propertiesList of material properties, from this material, to output (outputs must also be defined to an output type)

    C++ Type:std::vector

    Description:List of material properties, from this material, to output (outputs must also be defined to an output type)

  • outputsnone Vector of output names were you would like to restrict the output of variables(s) associated with this object

    Default:none

    C++ Type:std::vector

    Description:Vector of output names were you would like to restrict the output of variables(s) associated with this object

Outputs Parameters

Input Files

References

  1. C. M. Allison, G. A. Berna, R. Chambers, E. W. Coryell, K. L. Davis, D. L. Hagrman, D. T. Hagrman, N. L. Hampton, J. K. Hohorst, R. E. Mason, M. L. McComas, K. A. McNeil, R. L. Miller, C. S. Olsen, G. A. Reymann, and L. J. Siefken. SCDAP/RELAP5/MOD3.1 code manual, volume IV: MATPRO–A library of materials properties for light-water-reactor accident analysis. Technical Report NUREG/CR-6150, EGG-2720, Idaho National Engineering Laboratory, 1993.[BibTeX]
  2. Y. Guerin. Mechanical-behaviour of nuclear fuel under irradiation. Annales de chimie - science des materiaux, 10:405–414, 1985.[BibTeX]
  3. C. Milet and C. Piconi. Fluage en pile de l'oxyde mixte uo2-puo2. Journal of Nuclear Materials, 116:196–199, 1983.[BibTeX]