www.mooseframework.org
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ComputeThermalExpansionEigenstrainBase Class Referenceabstract

ComputeThermalExpansionEigenstrainBase is a base class for all models that compute eigenstrains due to thermal expansion of a material. More...

#include <ComputeThermalExpansionEigenstrainBase.h>

Inheritance diagram for ComputeThermalExpansionEigenstrainBase:
[legend]

Public Member Functions

 ComputeThermalExpansionEigenstrainBase (const InputParameters &parameters)
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Member Functions

virtual void computeQpEigenstrain () override
 
virtual void computeThermalStrain (Real &thermal_strain, Real &instantaneous_cte)=0
 

Protected Attributes

const VariableValue & _temperature
 
MaterialProperty< RankTwoTensor > & _deigenstrain_dT
 
const VariableValue & _stress_free_temperature
 

Detailed Description

ComputeThermalExpansionEigenstrainBase is a base class for all models that compute eigenstrains due to thermal expansion of a material.

Definition at line 27 of file ComputeThermalExpansionEigenstrainBase.h.

Constructor & Destructor Documentation

◆ ComputeThermalExpansionEigenstrainBase()

ComputeThermalExpansionEigenstrainBase::ComputeThermalExpansionEigenstrainBase ( const InputParameters &  parameters)

Definition at line 27 of file ComputeThermalExpansionEigenstrainBase.C.

29  : DerivativeMaterialInterface<ComputeEigenstrainBase>(parameters),
30  _temperature(coupledValue("temperature")),
31  _deigenstrain_dT(declarePropertyDerivative<RankTwoTensor>(_eigenstrain_name,
32  getVar("temperature", 0)->name())),
33  _stress_free_temperature(coupledValue("stress_free_temperature"))
34 {
35 }

Member Function Documentation

◆ computeQpEigenstrain()

void ComputeThermalExpansionEigenstrainBase::computeQpEigenstrain ( )
overrideprotectedvirtual

Definition at line 38 of file ComputeThermalExpansionEigenstrainBase.C.

39 {
40  Real thermal_strain = 0.0;
41 
42  // instantaneous_cte is just the derivative of thermal_strain with respect to temperature
43  Real instantaneous_cte = 0.0;
44 
45  computeThermalStrain(thermal_strain, instantaneous_cte);
46 
47  _eigenstrain[_qp].zero();
48  _eigenstrain[_qp].addIa(thermal_strain);
49 
50  _deigenstrain_dT[_qp].zero();
51  _deigenstrain_dT[_qp].addIa(instantaneous_cte);
52 }

◆ computeThermalStrain()

virtual void ComputeThermalExpansionEigenstrainBase::computeThermalStrain ( Real &  thermal_strain,
Real &  instantaneous_cte 
)
protectedpure virtual

◆ validParams()

InputParameters ComputeThermalExpansionEigenstrainBase::validParams ( )
static

Definition at line 16 of file ComputeThermalExpansionEigenstrainBase.C.

17 {
18  InputParameters params = ComputeEigenstrainBase::validParams();
19  params.addCoupledVar("temperature", "Coupled temperature");
20  params.addRequiredCoupledVar("stress_free_temperature",
21  "Reference temperature at which there is no "
22  "thermal expansion for thermal eigenstrain "
23  "calculation");
24  return params;
25 }

Referenced by ComputeMeanThermalExpansionFunctionEigenstrain::validParams(), ComputeThermalExpansionEigenstrain::validParams(), ComputeInstantaneousThermalExpansionFunctionEigenstrain::validParams(), ComputeDilatationThermalExpansionEigenstrainBase::validParams(), and ComputeMeanThermalExpansionEigenstrainBase::validParams().

Member Data Documentation

◆ _deigenstrain_dT

MaterialProperty<RankTwoTensor>& ComputeThermalExpansionEigenstrainBase::_deigenstrain_dT
protected

Definition at line 50 of file ComputeThermalExpansionEigenstrainBase.h.

Referenced by computeQpEigenstrain().

◆ _stress_free_temperature

const VariableValue& ComputeThermalExpansionEigenstrainBase::_stress_free_temperature
protected

◆ _temperature

const VariableValue& ComputeThermalExpansionEigenstrainBase::_temperature
protected

The documentation for this class was generated from the following files:
ComputeEigenstrainBase::validParams
static InputParameters validParams()
Definition: ComputeEigenstrainBase.C:17
ComputeThermalExpansionEigenstrainBase::_temperature
const VariableValue & _temperature
Definition: ComputeThermalExpansionEigenstrainBase.h:49
ComputeThermalExpansionEigenstrainBase::computeThermalStrain
virtual void computeThermalStrain(Real &thermal_strain, Real &instantaneous_cte)=0
ComputeThermalExpansionEigenstrainBase::_stress_free_temperature
const VariableValue & _stress_free_temperature
Definition: ComputeThermalExpansionEigenstrainBase.h:51
name
const std::string name
Definition: Setup.h:21
ComputeThermalExpansionEigenstrainBase::_deigenstrain_dT
MaterialProperty< RankTwoTensor > & _deigenstrain_dT
Definition: ComputeThermalExpansionEigenstrainBase.h:50