Advanced Multi-Physics (AMP)
On-Line Documentation
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
AMP::Operator::GeneralCladThermalCreepPlasticModel Class Reference

Non-linear elasto-plastic mechanics with only isotropic options for thermal and creep strains. More...

#include <GeneralCladThermalCreepPlasticModel.h>

Inheritance diagram for AMP::Operator::GeneralCladThermalCreepPlasticModel:
Inheritance graph
[legend]

Public Member Functions

 GeneralCladThermalCreepPlasticModel (std::shared_ptr< MechanicsMaterialModelParameters >)
 
void getConstitutiveMatrix (double *&) override
 
virtual void getConstitutiveMatrixUpdatedLagrangian (double[6][6], double[3][3])
 
virtual void getEffectiveStress (double *&)
 
virtual void getEquivalentStrain (double *&)
 
virtual void getExternalStress (double *&)
 
void getInternalStress (const std::vector< std::vector< double > > &, double *&) override
 
virtual void getInternalStress_UL (const std::vector< std::vector< double > > &, double *&, double[3][3], double[3][3], double)
 
std::shared_ptr< AMP::Materials::MaterialgetMaterial ()
 
virtual void getStressForUpdatedLagrangian (double[6])
 
void globalReset () override
 
void nonlinearInitGaussPointOperation (double) override
 
void nonlinearJacobianGaussPointOperation (const std::vector< std::vector< double > > &) override
 
virtual void nonlinearJacobianGaussPointOperation_UL (const std::vector< std::vector< double > > &, double[3][3], double[3][3])
 
void nonlinearResetGaussPointOperation (const std::vector< std::vector< double > > &) override
 
virtual void nonlinearResetGaussPointOperation_UL (const std::vector< std::vector< double > > &, double[3][3], double[3][3])
 
virtual void postLinearAssembly ()
 
virtual void postLinearElementOperation ()
 
void postLinearGaussPointOperation () override
 
void postNonlinearAssembly () override
 
virtual void postNonlinearAssemblyElementOperation ()
 
void postNonlinearAssemblyGaussPointOperation () override
 
virtual void postNonlinearInit ()
 
virtual void postNonlinearInitElementOperation ()
 
virtual void postNonlinearInitGaussPointOperation ()
 
virtual void postNonlinearJacobian ()
 
virtual void postNonlinearJacobianElementOperation ()
 
void postNonlinearJacobianGaussPointOperation () override
 
void postNonlinearReset () override
 
virtual void postNonlinearResetElementOperation ()
 
void postNonlinearResetGaussPointOperation () override
 
void preLinearAssembly () override
 
virtual void preLinearElementOperation ()
 
virtual void preLinearGaussPointOperation ()
 
void preNonlinearAssembly () override
 
virtual void preNonlinearAssemblyElementOperation ()
 
virtual void preNonlinearAssemblyGaussPointOperation ()
 
void preNonlinearInit (bool, bool) override
 
virtual void preNonlinearInitElementOperation ()
 
virtual void preNonlinearInitGaussPointOperation ()
 
void preNonlinearJacobian () override
 
virtual void preNonlinearJacobianElementOperation ()
 
virtual void preNonlinearJacobianGaussPointOperation ()
 
void preNonlinearReset () override
 
virtual void preNonlinearResetElementOperation ()
 
virtual void preNonlinearResetGaussPointOperation ()
 
virtual void setDebugPrintInfoLevel (int print_level)
 
void updateTime (double currTime)
 
virtual ~GeneralCladThermalCreepPlasticModel ()
 

Protected Member Functions

double compute_dE1_dsig_e (double effective_stress_trial, double effective_stress, double Temp_np1, double G)
 
void computeCreepStrain (const double Temp_np1, const double stress_n[6], const double creep_strain_prev, double delta_creep_strain[6], double net_stra_np1[6])
 
void computeEvalv (const std::vector< std::vector< double > > &)
 
int det_sign (double a)
 
double help_compute_E1 (const double Temp_np1, double effective_stress)
 
void radialReturn (const double *stra_np1, double *stre_np1, double *ystre_np1, double *eph_bar_plas_np1)
 

Protected Attributes

std::vector< double > d_alpha
 
bool d_checkCladOrPellet
 
double d_constitutiveMatrix [6][6]
 
double d_currentTime
 
double d_Delta_Time
 
std::vector< double > d_E
 
std::vector< int > d_ElPl
 
std::vector< double > d_EquilibriumCreepStrain
 
std::vector< double > d_EquilibriumEffectivePlasticStrain
 
std::vector< double > d_EquilibriumStrain
 
std::vector< double > d_EquilibriumStress
 
std::vector< double > d_EquilibriumTemperature
 
std::vector< double > d_EquilibriumThermalStrain
 
std::vector< double > d_EquilibriumYieldStress
 
unsigned int d_gaussPtCnt
 
double d_H
 
int d_iDebugPrintInfoLevel
 
bool d_Is_Init_Called
 
bool d_jacobianReusesRadialReturn
 
std::vector< double > d_Lambda
 
std::shared_ptr< AMP::Materials::Materiald_material
 
double d_n
 
std::vector< double > d_Nu
 
std::vector< double > d_PlasticExponent
 
double d_previousTime
 
bool d_resetReusesRadialReturn
 
double d_Sig0
 
std::vector< double > d_StrengthCoeff
 
std::vector< double > d_tmp1CreepStrain
 
std::vector< double > d_tmp1EffectivePlasticStrain
 
std::vector< double > d_tmp1Strain
 
std::vector< double > d_tmp1Stress
 
std::vector< double > d_tmp1Temperature
 
std::vector< double > d_tmp1ThermalStrain
 
std::vector< double > d_tmp1YieldStress
 
std::vector< double > d_tmp2EffectivePlasticStrain
 
std::vector< double > d_tmp2Stress
 
std::vector< double > d_tmp2YieldStress
 
bool d_useContinuumTangent
 
bool d_UseCreepStrain
 
bool d_useJaumannRate
 
bool d_useMaterialsLibrary
 
bool d_UseThermalStrain
 
bool d_useUpdatedLagrangian
 
double default_alpha
 
double default_BURNUP
 
double default_E
 
double default_Nu
 
double default_OXYGEN_CONCENTRATION
 
double default_TEMPERATURE
 
unsigned int Plastic_Gauss_Point
 
unsigned int Total_Gauss_Point
 

Detailed Description

Non-linear elasto-plastic mechanics with only isotropic options for thermal and creep strains.

This class represents the mechanics non-linear elasto-plastic material model. This has a capability of capturing the thermal expansion of the clad in a isotropic sense. Other than thermal expansion, creep and plastic deformation of the clad can be captured using this model as well.

Definition at line 22 of file GeneralCladThermalCreepPlasticModel.h.

Constructor & Destructor Documentation

◆ GeneralCladThermalCreepPlasticModel()

AMP::Operator::GeneralCladThermalCreepPlasticModel::GeneralCladThermalCreepPlasticModel ( std::shared_ptr< MechanicsMaterialModelParameters )
explicit

Constructor. This reads the values of some parameters from the database object contained in the parameter object (params), or sets those parameters to default values if they are not specified in the database. Some of these parameters might be overwritten by values from the materials library. The parameters are as follows:

(1) USE_MATERIALS_LIBRARY {d_useMaterialsLibrary} (FALSE by default) - This must be set to TRUE for the current material.

(2) Material {matname} - Name of the material that is being used to calculate the material properties for the current material model. This must be a clad material.

(3) Use_Thermal_Strain {d_UseThermalStrain} (TRUE by default) - This parameter is set to TRUE if the strain due to thermal expansion has to be taken into account. Without thermal strain, clad model does not work.

(4) Use_Creep_Strain {d_UseCreepStrain} (FALSE by default) - This parameter is set to TRUE to take into consideration the irrecoverable strain due to thermal and stress induced creep inside the clad.

(5) Linear_Strain_Hardening {d_H} [5.0e8 (Pa) by default] - This one signifies the strain hardening coefficient during the plastic deformation.

(6) Plastic_Strain_Exponent {d_n} [1.0 by default] - The equivalent plastic strain exponent when calculating the modified yield stress during plastic deformation.

(7) Youngs_Modulus {default_E} [2.08e11 (Pa) by default] - The default value of Young's Modulus.

(8) Poissons_Ratio {default_Nu} [0.23 by default] - The default value of Poisson's Ratio.

(9) THERMAL_EXPANSION_COEFFICIENT {default_alpha} [2.0e-6 (/ K) by default] - Isotropic thermal expansion coefficient.

(11) Elastic_Yield_Stress {d_Sig0} [3.45e8 (Pa) by default] - The limit where elastic deformation ends and plastic deformation starts.

(12) Default_Oxygen_Concentration {default_OXYGEN_CONCENTRATION} [0.0 (unit-less) by default]

  • This states the default oxygen concentration if the "oxygen_concentration" variable is inactive.

(13) Default_Temperature {default_TEMPERATURE} [310.0 (K) by default] - This gives the default temperature if the "temperature" variable is inactive.

(14) Default_Burnup {default_BURNUP} [0.0 (GWd/MTU) by default] - This gives the default burnup at each gauss point if the "burnup" variable is inactive.

(15) Creep_Delta_Time {d_Delta_Time} [1.0 days (d) by default] - This is used in the calculation of the creep strain inside the clad.

◆ ~GeneralCladThermalCreepPlasticModel()

virtual AMP::Operator::GeneralCladThermalCreepPlasticModel::~GeneralCladThermalCreepPlasticModel ( )
inlinevirtual

Destructor.

Definition at line 97 of file GeneralCladThermalCreepPlasticModel.h.

Member Function Documentation

◆ compute_dE1_dsig_e()

double AMP::Operator::GeneralCladThermalCreepPlasticModel::compute_dE1_dsig_e ( double  effective_stress_trial,
double  effective_stress,
double  Temp_np1,
double  G 
)
protected

This is used to evaluate the implicit creep strain rate. This function returns the first derivative of E1 with respect to the effective stress.

◆ computeCreepStrain()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::computeCreepStrain ( const double  Temp_np1,
const double  stress_n[6],
const double  creep_strain_prev,
double  delta_creep_strain[6],
double  net_stra_np1[6] 
)
protected

This function calculates the creep strain increment ( \(\dot{epsilon}^c\)) at each time step using an implicit scheme. The formula is a general one: \(\dot{\epsilon}^c = A\sigma_e^n exp(\frac{-Q}{RT})\).

◆ computeEvalv()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::computeEvalv ( const std::vector< std::vector< double > > &  )
protected

This function calls the evalv functions in the materials library and updates the material parameters, such as, Young's Modulus, Poisson's Ratio and Thermal Expansion Coefficient. These material parameters corresponding to the current temperature, burnup and oxygen concentration is extracted from the materials library.

◆ det_sign()

int AMP::Operator::GeneralCladThermalCreepPlasticModel::det_sign ( double  a)
protected

This function calculates the sign of a double which it takes as an input.

◆ getConstitutiveMatrix()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::getConstitutiveMatrix ( double *&  )
overridevirtual

Calculates the linearized elasto-plastic stress-strain constitutive matrix at each gauss point which enters the computation of the jacobian for the element.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ getConstitutiveMatrixUpdatedLagrangian()

virtual void AMP::Operator::MechanicsMaterialModel::getConstitutiveMatrixUpdatedLagrangian ( double  [6][6],
double  [3][3] 
)
inlinevirtualinherited

Calculates the constitutive matrix for the material model in Updated Lagrangian. This matrix is used for the construction of the Jacobian during the solve process.

Reimplemented in AMP::Operator::IsotropicElasticModel, AMP::Operator::PericElastoViscoPlasticModel, AMP::Operator::ThermalStrainMaterialModel, and AMP::Operator::VonMisesElastoPlasticModel.

Definition at line 73 of file MechanicsMaterialModel.h.

◆ getEffectiveStress()

virtual void AMP::Operator::MechanicsMaterialModel::getEffectiveStress ( double *&  )
inlinevirtualinherited

Used to print the effective stress at any point of the simulation.

Reimplemented in AMP::Operator::PericElastoViscoPlasticModel, and AMP::Operator::VonMisesElastoPlasticModel.

Definition at line 96 of file MechanicsMaterialModel.h.

◆ getEquivalentStrain()

virtual void AMP::Operator::MechanicsMaterialModel::getEquivalentStrain ( double *&  )
inlinevirtualinherited

Used to print the equivalent plastic or creep or thermal strain at any point of the simulation.

Reimplemented in AMP::Operator::PericElastoViscoPlasticModel, and AMP::Operator::VonMisesElastoPlasticModel.

Definition at line 102 of file MechanicsMaterialModel.h.

◆ getExternalStress()

virtual void AMP::Operator::MechanicsMaterialModel::getExternalStress ( double *&  )
inlinevirtualinherited

Used for linear material models if the problem is being solved in an explicit method. This function has not been implemented, because all the linear material model problems are being solved in implicit way.

Reimplemented in AMP::Operator::ElasticDamageThermalStrainModel, and AMP::Operator::ThermalStrainMaterialModel.

Definition at line 109 of file MechanicsMaterialModel.h.

◆ getInternalStress()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::getInternalStress ( const std::vector< std::vector< double > > &  ,
double *&   
)
overridevirtual

Given a certain strain, this function calculates the corresponding stress taking into consideration the thermal swelling and creep effects. Creep is modeled in an implicit fashion.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ getInternalStress_UL()

virtual void AMP::Operator::MechanicsMaterialModel::getInternalStress_UL ( const std::vector< std::vector< double > > &  ,
double *&  ,
double  [3][3],
double  [3][3],
double   
)
inlinevirtualinherited

◆ getMaterial()

std::shared_ptr< AMP::Materials::Material > AMP::Operator::MechanicsMaterialModel::getMaterial ( )
inlineinherited

◆ getStressForUpdatedLagrangian()

virtual void AMP::Operator::MechanicsMaterialModel::getStressForUpdatedLagrangian ( double  [6])
inlinevirtualinherited

Returns the 6x1 stress vector at the current gauss point. Used in UpdatedLagrangian calculations.

Reimplemented in AMP::Operator::IsotropicElasticModel, AMP::Operator::PericElastoViscoPlasticModel, AMP::Operator::ThermalStrainMaterialModel, and AMP::Operator::VonMisesElastoPlasticModel.

Definition at line 79 of file MechanicsMaterialModel.h.

◆ globalReset()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::globalReset ( )
overridevirtual

This function updates the old equilibrium values with the new one under certain conditions.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ help_compute_E1()

double AMP::Operator::GeneralCladThermalCreepPlasticModel::help_compute_E1 ( const double  Temp_np1,
double  effective_stress 
)
protected

This function is used to calculate the implicit creep strain rate. It returns a creep strain rate at a given temperature and effective stress (which enters the function as input parameters).

◆ nonlinearInitGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::nonlinearInitGaussPointOperation ( double  )
overridevirtual

This function initializes all the gauss point vectors with the default values.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ nonlinearJacobianGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::nonlinearJacobianGaussPointOperation ( const std::vector< std::vector< double > > &  )
overridevirtual

This function updates all the material parameters and calls the radialReturn before calculating the jacobian.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ nonlinearJacobianGaussPointOperation_UL()

virtual void AMP::Operator::MechanicsMaterialModel::nonlinearJacobianGaussPointOperation_UL ( const std::vector< std::vector< double > > &  ,
double  [3][3],
double  [3][3] 
)
inlinevirtualinherited

◆ nonlinearResetGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::nonlinearResetGaussPointOperation ( const std::vector< std::vector< double > > &  )
overridevirtual

At each gauss point the "radialReturn" function is called from this function.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ nonlinearResetGaussPointOperation_UL()

virtual void AMP::Operator::MechanicsMaterialModel::nonlinearResetGaussPointOperation_UL ( const std::vector< std::vector< double > > &  ,
double  [3][3],
double  [3][3] 
)
inlinevirtualinherited

◆ postLinearAssembly()

virtual void AMP::Operator::MechanicsMaterialModel::postLinearAssembly ( )
inlinevirtualinherited

Definition at line 123 of file MechanicsMaterialModel.h.

◆ postLinearElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postLinearElementOperation ( )
inlinevirtualinherited

Definition at line 127 of file MechanicsMaterialModel.h.

◆ postLinearGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postLinearGaussPointOperation ( )
inlineoverridevirtual

This is called after the apply() at each gauss point is called.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 120 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ postNonlinearAssembly()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postNonlinearAssembly ( )
overridevirtual

How many gauss points have reached plasticity, is calculated in this function (done after each assembly).

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ postNonlinearAssemblyElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearAssemblyElementOperation ( )
inlinevirtualinherited

Definition at line 162 of file MechanicsMaterialModel.h.

◆ postNonlinearAssemblyGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postNonlinearAssemblyGaussPointOperation ( )
inlineoverridevirtual

After the apply at each gauss point , this function increments the gauss point count by one.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 154 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ postNonlinearInit()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearInit ( )
inlinevirtualinherited

Definition at line 137 of file MechanicsMaterialModel.h.

◆ postNonlinearInitElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearInitElementOperation ( )
inlinevirtualinherited

Definition at line 141 of file MechanicsMaterialModel.h.

◆ postNonlinearInitGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearInitGaussPointOperation ( )
inlinevirtualinherited

Definition at line 145 of file MechanicsMaterialModel.h.

◆ postNonlinearJacobian()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearJacobian ( )
inlinevirtualinherited

Definition at line 202 of file MechanicsMaterialModel.h.

◆ postNonlinearJacobianElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearJacobianElementOperation ( )
inlinevirtualinherited

Definition at line 206 of file MechanicsMaterialModel.h.

◆ postNonlinearJacobianGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postNonlinearJacobianGaussPointOperation ( )
inlineoverridevirtual

The gauss point count is incremented after computing the nonlinear jacobian at every gauss point.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 190 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ postNonlinearReset()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postNonlinearReset ( )
overridevirtual

If the updating is not done in the global reset, it is done in this function.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ postNonlinearResetElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::postNonlinearResetElementOperation ( )
inlinevirtualinherited

Definition at line 178 of file MechanicsMaterialModel.h.

◆ postNonlinearResetGaussPointOperation()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::postNonlinearResetGaussPointOperation ( )
inlineoverridevirtual

Incrementing the gauss point count by unity is conducted in this function.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 164 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ preLinearAssembly()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::preLinearAssembly ( )
inlineoverridevirtual

This function is called just before the linear assembly.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 115 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ preLinearElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preLinearElementOperation ( )
inlinevirtualinherited

Definition at line 125 of file MechanicsMaterialModel.h.

◆ preLinearGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preLinearGaussPointOperation ( )
inlinevirtualinherited

Definition at line 129 of file MechanicsMaterialModel.h.

◆ preNonlinearAssembly()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::preNonlinearAssembly ( )
inlineoverridevirtual

This is called before every non-linear assembly. Here the gauss point count and the total number of gauss points which have reached plasticity, are initialized to zero.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 137 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt, and Plastic_Gauss_Point.

◆ preNonlinearAssemblyElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearAssemblyElementOperation ( )
inlinevirtualinherited

Definition at line 160 of file MechanicsMaterialModel.h.

◆ preNonlinearAssemblyGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearAssemblyGaussPointOperation ( )
inlinevirtualinherited

Definition at line 164 of file MechanicsMaterialModel.h.

◆ preNonlinearInit()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::preNonlinearInit ( bool  ,
bool   
)
overridevirtual

This function is called before the NonlinearInit is invoked. Here the memory assigned to all the gauss point vectors are cleared.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

◆ preNonlinearInitElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearInitElementOperation ( )
inlinevirtualinherited

Definition at line 139 of file MechanicsMaterialModel.h.

◆ preNonlinearInitGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearInitGaussPointOperation ( )
inlinevirtualinherited

Definition at line 143 of file MechanicsMaterialModel.h.

◆ preNonlinearJacobian()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::preNonlinearJacobian ( )
inlineoverridevirtual

Initializes the gauss point count before the nonlinear jacobian is called.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 184 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ preNonlinearJacobianElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearJacobianElementOperation ( )
inlinevirtualinherited

Definition at line 204 of file MechanicsMaterialModel.h.

◆ preNonlinearJacobianGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearJacobianGaussPointOperation ( )
inlinevirtualinherited

Definition at line 208 of file MechanicsMaterialModel.h.

◆ preNonlinearReset()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::preNonlinearReset ( )
inlineoverridevirtual

This function initializes the gauss point count for the nonlinear reset.

Reimplemented from AMP::Operator::MechanicsMaterialModel.

Definition at line 159 of file GeneralCladThermalCreepPlasticModel.h.

References d_gaussPtCnt.

◆ preNonlinearResetElementOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearResetElementOperation ( )
inlinevirtualinherited

Definition at line 176 of file MechanicsMaterialModel.h.

◆ preNonlinearResetGaussPointOperation()

virtual void AMP::Operator::MechanicsMaterialModel::preNonlinearResetGaussPointOperation ( )
inlinevirtualinherited

Definition at line 180 of file MechanicsMaterialModel.h.

◆ radialReturn()

void AMP::Operator::GeneralCladThermalCreepPlasticModel::radialReturn ( const double *  stra_np1,
double *  stre_np1,
double *  ystre_np1,
double *  eph_bar_plas_np1 
)
protected

Given the total strain, this function calculates the stress which is used to compute the internal force. The formula is as follows, \(f_{int} = {int}_{V} B^T \sigma dv\).

◆ setDebugPrintInfoLevel()

virtual void AMP::Operator::ElementPhysicsModel::setDebugPrintInfoLevel ( int  print_level)
inlinevirtualinherited

Specify level of diagnostic information printed during iterations.

Parameters
[in]print_levelzero prints none or minimal information, higher numbers provide increasingly verbose debugging information.

Definition at line 36 of file ElementPhysicsModel.h.

References AMP::Operator::ElementPhysicsModel::d_iDebugPrintInfoLevel.

◆ updateTime()

void AMP::Operator::MechanicsMaterialModel::updateTime ( double  currTime)
inlineinherited

Member Data Documentation

◆ d_alpha

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_alpha
protected

A gauss point vector containing the Thermal Expansion Coefficient at each gauss point.

Definition at line 295 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_checkCladOrPellet

bool AMP::Operator::MechanicsMaterialModel::d_checkCladOrPellet
protectedinherited

◆ d_constitutiveMatrix

double AMP::Operator::GeneralCladThermalCreepPlasticModel::d_constitutiveMatrix[6][6]
protected

Stores the 6x6 constitutive matrix for each gauss point.

Definition at line 278 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_currentTime

double AMP::Operator::MechanicsMaterialModel::d_currentTime
protectedinherited

◆ d_Delta_Time

double AMP::Operator::GeneralCladThermalCreepPlasticModel::d_Delta_Time
protected

The time increment (to be used in clad creep).

Definition at line 276 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_E

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_E
protected

A gauss point vector containing the Young's Moduli at each gauss point.

Definition at line 290 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_ElPl

std::vector<int> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_ElPl
protected

A gauss point vector which contains the information whether a particular gauss has reached plastic state or still in the elastic regime.

Definition at line 335 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumCreepStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumCreepStrain
protected

A gauss point vector which stores the creep strain (scalar) at the previous equilibrium configuration.

Definition at line 321 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumEffectivePlasticStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumEffectivePlasticStrain
protected

A gauss point vector which stores the equivalent plastic strain at the previous equilibrium configuration.

Definition at line 317 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumStrain
protected

A gauss point vector which stores the equilibrium strain.

Definition at line 310 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumStress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumStress
protected

A gauss point vector which stores the equilibrium stress.

Definition at line 307 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumTemperature

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumTemperature
protected

A gauss point vector which stores the equilibrium temperature.

Definition at line 325 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumThermalStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumThermalStrain
protected

A gauss point vector containing the equilibrium Thermal Strain at each gauss point.

Definition at line 328 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_EquilibriumYieldStress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_EquilibriumYieldStress
protected

A gauss point vector which stores the yield stress at the previous equilibrium configuration.

Definition at line 313 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_gaussPtCnt

unsigned int AMP::Operator::GeneralCladThermalCreepPlasticModel::d_gaussPtCnt
protected

◆ d_H

double AMP::Operator::GeneralCladThermalCreepPlasticModel::d_H
protected

Default value for the linear strain hardening coefficient.

Definition at line 268 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_iDebugPrintInfoLevel

int AMP::Operator::ElementPhysicsModel::d_iDebugPrintInfoLevel
protectedinherited

Variable that controls the amount of diagnostic information that gets printed within this material model.

Definition at line 39 of file ElementPhysicsModel.h.

Referenced by AMP::Operator::ElementPhysicsModel::ElementPhysicsModel(), and AMP::Operator::ElementPhysicsModel::setDebugPrintInfoLevel().

◆ d_Is_Init_Called

bool AMP::Operator::GeneralCladThermalCreepPlasticModel::d_Is_Init_Called
protected

Checks whether init has been called already or not.

Definition at line 377 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_jacobianReusesRadialReturn

bool AMP::Operator::GeneralCladThermalCreepPlasticModel::d_jacobianReusesRadialReturn
protected

Definition at line 375 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_Lambda

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_Lambda
protected

A gauss point vector which contains a plasticity parameter at each gauss point.

Definition at line 332 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_material

std::shared_ptr<AMP::Materials::Material> AMP::Operator::MechanicsMaterialModel::d_material
protectedinherited

◆ d_n

double AMP::Operator::GeneralCladThermalCreepPlasticModel::d_n
protected

Default value for the equivalent plastic strain exponent.

Definition at line 270 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_Nu

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_Nu
protected

A gauss point vector containing the Poisson's Ratio at each gauss point.

Definition at line 293 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_PlasticExponent

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_PlasticExponent
protected

A gauss point vector containing the equivalent plastic strain exponent at each gauss point.

Definition at line 302 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_previousTime

double AMP::Operator::MechanicsMaterialModel::d_previousTime
protectedinherited

◆ d_resetReusesRadialReturn

bool AMP::Operator::GeneralCladThermalCreepPlasticModel::d_resetReusesRadialReturn
protected

Definition at line 373 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_Sig0

double AMP::Operator::GeneralCladThermalCreepPlasticModel::d_Sig0
protected

The initial Yield Stress.

Definition at line 272 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_StrengthCoeff

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_StrengthCoeff
protected

A gauss point vector containing the linear strain hardening coefficient at each gauss point.

Definition at line 298 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1CreepStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1CreepStrain
protected

A gauss point vector which stores the creep strain (scalar) at the current configuration.

Definition at line 352 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1EffectivePlasticStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1EffectivePlasticStrain
protected

A gauss point vector which stores the equivalent plastic strain at the current configuration.

Definition at line 349 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1Strain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1Strain
protected

A gauss point vector which stores the strain at the current step.

Definition at line 343 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1Stress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1Stress
protected

A gauss point vector which stores the stress at the current step.

Definition at line 340 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1Temperature

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1Temperature
protected

A gauss point vector which stores the temperature at the current step.

Definition at line 355 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1ThermalStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1ThermalStrain
protected

A gauss point vector containing the current Thermal Strain at each gauss point.

Definition at line 358 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp1YieldStress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp1YieldStress
protected

A gauss point vector which stores the yield stress at the current configuration.

Definition at line 345 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp2EffectivePlasticStrain

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp2EffectivePlasticStrain
protected

A gauss point vector which stores the equivalent plastic strain at the current step while jacobian is being calculated.

Definition at line 368 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp2Stress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp2Stress
protected

A gauss point vector which stores the stress at the current step while jacobian is being calculated.

Definition at line 361 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_tmp2YieldStress

std::vector<double> AMP::Operator::GeneralCladThermalCreepPlasticModel::d_tmp2YieldStress
protected

A gauss point vector which stores the yield stress at the current step while jacobian is being calculated.

Definition at line 364 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_useContinuumTangent

bool AMP::Operator::MechanicsMaterialModel::d_useContinuumTangent
protectedinherited

Flag to check whether to use Continuum tangent is elasto plasticity or not.

Definition at line 241 of file MechanicsMaterialModel.h.

Referenced by AMP::Operator::MechanicsMaterialModel::MechanicsMaterialModel().

◆ d_UseCreepStrain

bool AMP::Operator::GeneralCladThermalCreepPlasticModel::d_UseCreepStrain
protected

This variable determines whether to use creep strain or not.

Definition at line 381 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_useJaumannRate

bool AMP::Operator::MechanicsMaterialModel::d_useJaumannRate
protectedinherited

Flag to check whether to use Jaumann rate in updated lagrangian or not.

Definition at line 238 of file MechanicsMaterialModel.h.

Referenced by AMP::Operator::MechanicsMaterialModel::MechanicsMaterialModel().

◆ d_useMaterialsLibrary

bool AMP::Operator::MechanicsMaterialModel::d_useMaterialsLibrary
protectedinherited

A flag that is true if the AMP::materials library is used in this model and false otherwise.

Definition at line 233 of file MechanicsMaterialModel.h.

Referenced by AMP::Operator::MechanicsMaterialModel::MechanicsMaterialModel().

◆ d_UseThermalStrain

bool AMP::Operator::GeneralCladThermalCreepPlasticModel::d_UseThermalStrain
protected

This variable determines whether to use thermal strain or not.

Definition at line 379 of file GeneralCladThermalCreepPlasticModel.h.

◆ d_useUpdatedLagrangian

bool AMP::Operator::MechanicsMaterialModel::d_useUpdatedLagrangian
protectedinherited

Flag to check whether to use updated lagrangian or not.

Definition at line 236 of file MechanicsMaterialModel.h.

Referenced by AMP::Operator::MechanicsMaterialModel::MechanicsMaterialModel().

◆ default_alpha

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_alpha
protected

Default value of the thermal expansion coefficient.

Definition at line 274 of file GeneralCladThermalCreepPlasticModel.h.

◆ default_BURNUP

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_BURNUP
protected

The default burnup which is passed to the materials library when evalv is called.

Definition at line 261 of file GeneralCladThermalCreepPlasticModel.h.

◆ default_E

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_E
protected

The default value of the Young's Modulus.

Definition at line 264 of file GeneralCladThermalCreepPlasticModel.h.

◆ default_Nu

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_Nu
protected

The default value of the Poisson'd Ratio.

Definition at line 266 of file GeneralCladThermalCreepPlasticModel.h.

◆ default_OXYGEN_CONCENTRATION

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_OXYGEN_CONCENTRATION
protected

The default oxygen_concentration which is passed to the materials library when evalv is called.

Definition at line 257 of file GeneralCladThermalCreepPlasticModel.h.

◆ default_TEMPERATURE

double AMP::Operator::GeneralCladThermalCreepPlasticModel::default_TEMPERATURE
protected

The default temperature which is passed to the materials library when evalv is called.

Definition at line 253 of file GeneralCladThermalCreepPlasticModel.h.

◆ Plastic_Gauss_Point

unsigned int AMP::Operator::GeneralCladThermalCreepPlasticModel::Plastic_Gauss_Point
protected

How many gauss points have reached plasticity at the current stage.

Definition at line 286 of file GeneralCladThermalCreepPlasticModel.h.

Referenced by preNonlinearAssembly().

◆ Total_Gauss_Point

unsigned int AMP::Operator::GeneralCladThermalCreepPlasticModel::Total_Gauss_Point
protected

Total how many gauss points are there in this simulation.

Definition at line 284 of file GeneralCladThermalCreepPlasticModel.h.


The documentation for this class was generated from the following file:



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:44.
Comments on this page