Creep Zircaloy Model

The default constitutive model used in MechZry

warning:Deprecated Solid Mechanics Material

The functionality of this solid mechanics material is being replaced in the TensorMechanics system by ZryCreepLimbackHoppeUpdate for primary, secondary, and irradiation creep under normal temperature operating conditions, ZryCreepHayesHoppeUpdate for only secondary and irradiation creep under normal temperature operating conditions and ZryCreepLOCAErbacherLimbackHoppeUpdate for LOCA conditions.

Description

The CreepZryModel model is the default constitutive model used in MechZry. Therefore, the interface is similar to the MechZry except for the options and parameters to model elastic modulus, thermal expansion, and irradiation growth.

Example Input Syntax

An example of the typical use of the CreepZryModel through the MechZry model is:

[./creep]
  type = MechZry
  block = 1
  youngs_modulus = 1.e11
  poissons_ratio = .3
  fast_neutron_flux = fast_neutron_flux
  fast_neutron_fluence = fast_neutron_fluence
  disp_r = disp_x
  disp_z = disp_y
  temp = temp
  model_primary_creep = false
  model_thermal_creep = true
  model_irradiation_creep = true
  model_thermal_expansion = false
  model_elastic_modulus = false
  model_irradiation_growth = false
  creeprate_scalef = 1.0
  formulation = NonlinearRZ
[../]
(test/tests/mechZry/creep_test_limback_rz.i)

The use of the CreepZryModel as a stand alone independent input file block is shown below


[./clad_creep]
  type = CreepZryModel
  block = 1
  temp = temp
  fast_neutron_flux = fast_neutron_flux
  fast_neutron_fluence = fast_neutron_fluence
  model_irradiation_growth = true
  model_thermal_expansion = false
  model_primary_creep = true
  material_type = 1
[../]
(examples/Discrete_3D_3pellets/half_symm/3d_3pellets.i)

where the CombinedCreepPlasticity model must also be used to run the creep and plasticity (not shown) models simultaneously


[./clad_combined]
  type = CombinedCreepPlasticity
  block = 1
  temp = temp
  submodels = 'clad_creep clad_plasticity'
  relative_tolerance = 1e-5
[../]
(examples/Discrete_3D_3pellets/half_symm/3d_3pellets.i)

Input Parameters

  • cold_work_factor0.01Cold work factor

    Default:0.01

    C++ Type:double

    Description:Cold work factor

  • constitutive_modelConstitutiveModel to use (optional)

    C++ Type:std::string

    Description:ConstitutiveModel to use (optional)

  • cracking_stress0The stress threshold beyond which cracking occurs. Must be positive.

    Default:0

    C++ Type:double

    Description:The stress threshold beyond which cracking occurs. Must be positive.

  • store_stress_olderFalseParameter which indicates whether the older stress state, required for HHT time integration, needs to be stored

    Default:False

    C++ Type:bool

    Description:Parameter which indicates whether the older stress state, required for HHT time integration, needs to be stored

  • model_rthetaFalseSet to true for a plane strain model

    Default:False

    C++ Type:bool

    Description:Set to true for a plane strain model

  • model_thermal_expansionTrueSet true to turn on thermal expansion model

    Default:True

    C++ Type:bool

    Description:Set true to turn on thermal expansion model

  • material_typeElement material Choices are: SRA RXA PRXA ZIRLO 0 1 2 3

    C++ Type:MooseEnum

    Description:Element material Choices are: SRA RXA PRXA ZIRLO 0 1 2 3

  • cracking_releaseabruptThe cracking release type. Choices are abrupt (default) and exponential.

    Default:abrupt

    C++ Type:std::string

    Description:The cracking release type. Choices are abrupt (default) and exponential.

  • bulk_modulusThe bulk modulus for the material.

    C++ Type:double

    Description:The bulk modulus for the material.

  • 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

  • youngs_modulus_functionYoung's modulus as a function of temperature.

    C++ Type:FunctionName

    Description:Young's modulus as a function of temperature.

  • formulationElement formulation. Choices are: Nonlinear3D NonlinearRZ AxisymmetricRZ SphericalR Linear PlaneStrain NonlinearPlaneStrain

    C++ Type:MooseEnum

    Description:Element formulation. Choices are: Nonlinear3D NonlinearRZ AxisymmetricRZ SphericalR Linear PlaneStrain NonlinearPlaneStrain

  • fast_neutron_fluxThe fast neutron flux

    C++ Type:std::vector

    Description:The fast neutron flux

  • cracking_beta1The coefficient used in the exponetional model.

    Default:1

    C++ Type:double

    Description:The coefficient used in the exponetional model.

  • strain_zzThe zz strain

    C++ Type:std::vector

    Description:The zz strain

  • compute_InteractionIntegralFalseWhether to compute the Interaction Integral.

    Default:False

    C++ Type:bool

    Description:Whether to compute the Interaction Integral.

  • thermal_expansion_reference_temperatureReference temperature for mean thermal expansion function.

    C++ Type:double

    Description:Reference temperature for mean thermal expansion function.

  • stress_free_temperatureThe stress-free temperature. If not specified, the initial temperature is used.

    C++ Type:double

    Description:The stress-free temperature. If not specified, the initial temperature is used.

  • model_irradiation_growthTrueSet true to turn on irradiation growth model

    Default:True

    C++ Type:bool

    Description:Set true to turn on irradiation growth model

  • youngs_modulusYoung's modulus of the material.

    C++ Type:double

    Description:Young's modulus of the material.

  • initial_stressThe initial stress tensor (xx, yy, zz, xy, yz, zx)

    C++ Type:std::vector

    Description:The initial stress tensor (xx, yy, zz, xy, yz, zx)

  • temp_standard_creep_end700The upper limit of temperature where the standard thermal creep model no longer applies

    Default:700

    C++ Type:double

    Description:The upper limit of temperature where the standard thermal creep model no longer applies

  • poissons_ratioPoisson's ratio for the material.

    C++ Type:double

    Description:Poisson's ratio for the material.

  • compute_methodThe method used in the stress calculation.

    C++ Type:MooseEnum

    Description:The method used in the stress calculation.

  • increment_calculationRashidApproxThe algorithm to use when computing the incremental strain and rotation (RashidApprox or Eigen). For use with Nonlinear3D/RZ formulation.

    Default:RashidApprox

    C++ Type:std::string

    Description:The algorithm to use when computing the incremental strain and rotation (RashidApprox or Eigen). For use with Nonlinear3D/RZ formulation.

  • oxygen_concentration0Oxygen concentration (ppm)

    Default:0

    C++ Type:double

    Description:Oxygen concentration (ppm)

  • disp_xThe x displacement

    C++ Type:std::vector

    Description:The x displacement

  • model_elastic_modulusFalseSet true to calculate elastic moduli internally

    Default:False

    C++ Type:bool

    Description:Set true to calculate elastic moduli internally

  • volumetric_locking_correctionTrueSet to false to turn off volumetric locking correction

    Default:True

    C++ Type:bool

    Description:Set to false to turn off volumetric locking correction

  • 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

  • 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

  • temp_loca_creep_begin900The lower limit of temperature where the loca thermal creep model begins to apply

    Default:900

    C++ Type:double

    Description:The lower limit of temperature where the loca thermal creep model begins to apply

  • fast_neutron_fluenceThe fast neutron fluence

    C++ Type:std::vector

    Description:The fast neutron fluence

  • active_crack_planesPlanes on which cracks are allowed (0,1,2 -> x,z,theta in RZ)

    C++ Type:std::vector

    Description:Planes on which cracks are allowed (0,1,2 -> x,z,theta in RZ)

  • scale_factor1scaling factor for youngs modulus calculated using MATPRO model. Note Youngs modulus is scaled down by this number.

    Default:1

    C++ Type:double

    Description:scaling factor for youngs modulus calculated using MATPRO model. Note Youngs modulus is scaled down by this number.

  • disp_zThe z displacement

    C++ Type:std::vector

    Description:The z displacement

  • disp_yThe y displacement

    C++ Type:std::vector

    Description:The y displacement

  • cracking_residual_stress0The fraction of the cracking stress allowed to be maintained following a crack.

    Default:0

    C++ Type:double

    Description:The fraction of the cracking stress allowed to be maintained following a crack.

  • shear_modulusThe shear modulus of the material.

    C++ Type:double

    Description:The shear modulus of the material.

  • scalar_strain_zzThe zz strain (scalar variable)

    C++ Type:std::vector

    Description:The zz strain (scalar variable)

  • thermal_expansion_function_typeType of thermal expansion function. Choices are: instantaneous mean

    C++ Type:MooseEnum

    Description:Type of thermal expansion function. Choices are: instantaneous mean

  • disp_rThe r displacement

    C++ Type:std::vector

    Description:The r displacement

  • appended_property_nameName appended to material properties to make them unique

    C++ Type:std::string

    Description:Name appended to material properties to make them unique

  • outputThe reporting postprocessor to use for the max_iterations value.

    C++ Type:PostprocessorName

    Description:The reporting postprocessor to use for the max_iterations value.

  • poissons_ratio_functionPoisson's ratio as a function of temperature.

    C++ Type:FunctionName

    Description:Poisson's ratio as a function of temperature.

  • dep_matl_propsNames of material properties this material depends on.

    C++ Type:std::vector

    Description:Names of material properties this material depends on.

  • compute_material_timestep_limitFalseWhether to compute the matl_timestep_limit material property

    Default:False

    C++ Type:bool

    Description:Whether to compute the matl_timestep_limit material property

  • large_strainFalseWhether to include large strain terms in AxisymmetricRZ, SphericalR, and PlaneStrain formulations.

    Default:False

    C++ Type:bool

    Description:Whether to include large strain terms in AxisymmetricRZ, SphericalR, and PlaneStrain formulations.

  • model_primary_creepTrueSet true to turn on primary creep

    Default:True

    C++ Type:bool

    Description:Set true to turn on primary creep

  • relative_tolerance1e-08Relative convergence tolerance for Newton iteration

    Default:1e-08

    C++ Type:double

    Description:Relative convergence tolerance for Newton iteration

  • model_thermal_creep_locaFalseSet true to turn on thermal creep during loca

    Default:False

    C++ Type:bool

    Description:Set true to turn on thermal creep during loca

  • computeTrueWhen false, MOOSE will not call compute methods on this material. The user must call computeProperties() after retrieving the Material via MaterialPropertyInterface::getMaterial(). Non-computed Materials are not sorted for dependencies.

    Default:True

    C++ Type:bool

    Description:When false, MOOSE will not call compute methods on this material. The user must call computeProperties() after retrieving the Material via MaterialPropertyInterface::getMaterial(). Non-computed Materials are not sorted for dependencies.

  • tempCoupled Temperature

    C++ Type:std::vector

    Description:Coupled Temperature

  • initial_fast_fluence0The initial fast neutron fluence

    Default:0

    C++ Type:double

    Description:The initial fast neutron fluence

  • creeprate_scalef1scaling factor for creep rate

    Default:1

    C++ Type:double

    Description:scaling factor for creep rate

  • max_its30Maximum number of Newton iterations

    Default:30

    C++ Type:unsigned int

    Description:Maximum number of Newton iterations

  • cracking_neg_fractionThe fraction of the cracking strain at which a transitition begins during decreasing strain to the original stiffness.

    C++ Type:double

    Description:The fraction of the cracking strain at which a transitition begins during decreasing strain to the original stiffness.

  • thermal_expansion_functionThermal expansion coefficient as a function of temperature.

    C++ Type:FunctionName

    Description:Thermal expansion coefficient as a function of temperature.

  • compute_JIntegralFalseWhether to compute the J Integral.

    Default:False

    C++ Type:bool

    Description:Whether to compute the J Integral.

  • model_irradiation_creepTrueSet true to turn on irradiation induced creep

    Default:True

    C++ Type:bool

    Description:Set true to turn on irradiation induced creep

  • max_cracks3The maximum number of cracks allowed at a material point.

    Default:3

    C++ Type:unsigned int

    Description:The maximum number of cracks allowed at a material point.

  • thermal_expansionThe thermal expansion coefficient.

    C++ Type:double

    Description:The thermal expansion coefficient.

  • cracking_stress_functionThe cracking stress as a function of time and location

    C++ Type:FunctionName

    Description:The cracking stress as a function of time and location

  • absolute_tolerance1e-11Absolute convergence tolerance for Newton iteration

    Default:1e-11

    C++ Type:double

    Description:Absolute convergence tolerance for Newton iteration

  • growth_direction1The direction you want to apply irradiation growth

    Default:1

    C++ Type:unsigned int

    Description:The direction you want to apply irradiation growth

  • model_thermal_creepTrueSet true to turn on steady state thermal creep

    Default:True

    C++ Type:bool

    Description:Set true to turn on steady state thermal creep

  • 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

  • lambdaLame's first parameter for the material.

    C++ Type:double

    Description:Lame's first parameter for the material.

Optional Parameters

  • 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