www.mooseframework.org
ADComputeThermalExpansionEigenstrainBase.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
11 #include "RankTwoTensor.h"
12 
14 
15 template <ComputeStage compute_stage>
16 InputParameters
18 {
20  params.addCoupledVar("temperature", "Coupled temperature");
21  params.addRequiredCoupledVar("stress_free_temperature",
22  "Reference temperature at which there is no "
23  "thermal expansion for thermal eigenstrain "
24  "calculation");
25  return params;
26 }
27 
28 template <ComputeStage compute_stage>
30  const InputParameters & parameters)
31  : ADComputeEigenstrainBase<compute_stage>(parameters),
32  _temperature(adCoupledValue("temperature")),
33  _stress_free_temperature(adCoupledValue("stress_free_temperature"))
34 {
35 }
36 
37 template <ComputeStage compute_stage>
38 void
40 {
41  ADReal thermal_strain = 0.0;
42 
43  computeThermalStrain(thermal_strain);
44 
45  _eigenstrain[_qp].zero();
46  _eigenstrain[_qp].addIa(thermal_strain);
47 }
48 
adBaseClass
adBaseClass(ADComputeThermalExpansionEigenstrainBase)
ADComputeEigenstrainBase
ADComputeEigenstrainBase is the base class for eigenstrain tensors.
Definition: ADComputeEigenstrainBase.h:21
ADComputeThermalExpansionEigenstrainBase.h
ADComputeThermalExpansionEigenstrainBase::validParams
static InputParameters validParams()
Definition: ADComputeThermalExpansionEigenstrainBase.C:17
ADComputeEigenstrainBase::validParams
static InputParameters validParams()
Definition: ADComputeEigenstrainBase.C:18
ADComputeThermalExpansionEigenstrainBase::ADComputeThermalExpansionEigenstrainBase
ADComputeThermalExpansionEigenstrainBase(const InputParameters &parameters)
Definition: ADComputeThermalExpansionEigenstrainBase.C:29
ADComputeThermalExpansionEigenstrainBase
ADComputeThermalExpansionEigenstrainBase is a base class for all models that compute eigenstrains due...
Definition: ADComputeThermalExpansionEigenstrainBase.h:22
ADComputeThermalExpansionEigenstrainBase::computeQpEigenstrain
virtual void computeQpEigenstrain() override
Compute the eigenstrain and store in _eigenstrain.
Definition: ADComputeThermalExpansionEigenstrainBase.C:39
defineADLegacyParams
defineADLegacyParams(ADComputeThermalExpansionEigenstrainBase)