www.mooseframework.org
PorousFlowConstantThermalExpansionCoefficient.C
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
9 
10 template <>
11 InputParameters
13 {
14  InputParameters params = validParams<PorousFlowMaterialVectorBase>();
15  params.addRangeCheckedParam<Real>(
16  "biot_coefficient", 1.0, "biot_coefficient>=0 & biot_coefficient<=1", "Biot coefficient");
17  params.addRangeCheckedParam<Real>("fluid_coefficient",
18  2.1E-4,
19  "fluid_coefficient>=0",
20  "Volumetric coefficient of thermal expansion for the fluid");
21  params.addRequiredRangeCheckedParam<Real>(
22  "drained_coefficient",
23  "drained_coefficient>=0.0",
24  "Volumetric coefficient of thermal expansion of the drained porous skeleton (ie the porous "
25  "rock without flulid, or with a fluid that is free to move in and out of the rock)");
26  params.addClassDescription("Computes the effective thermal expansion coefficient, (biot_coeff - "
27  "porosity) * drained_coefficient + porosity * fluid_coefficient.");
28  return params;
29 }
30 
32  const InputParameters & parameters)
33  : PorousFlowMaterialVectorBase(parameters),
34  _biot_coefficient(getParam<Real>("biot_coefficient")),
35  _fluid_coefficient(getParam<Real>("fluid_coefficient")),
36  _drained_coefficient(getParam<Real>("drained_coefficient")),
37  _porosity(_nodal_material ? getMaterialProperty<Real>("PorousFlow_porosity_nodal")
38  : getMaterialProperty<Real>("PorousFlow_porosity_qp")),
39  _coeff(_nodal_material
40  ? declareProperty<Real>("PorousFlow_constant_thermal_expansion_coefficient_nodal")
41  : declareProperty<Real>("PorousFlow_constant_thermal_expansion_coefficient_qp")),
42  _coeff_old(_nodal_material ? getMaterialPropertyOld<Real>(
43  "PorousFlow_constant_thermal_expansion_coefficient_nodal")
44  : getMaterialPropertyOld<Real>(
45  "PorousFlow_constant_thermal_expansion_coefficient_qp"))
46 {
47 }
48 
49 void
51 {
54 }
55 
56 void
58 {
59  _coeff[_qp] = _coeff_old[_qp];
60 }
MaterialProperty< Real > & _coeff
Computed volumetric thermal expansion coefficient.
InputParameters validParams< PorousFlowMaterialVectorBase >()
Base class for all PorousFlow vector materials.
const Real _drained_coefficient
Drained porous-skeleton volumetric thermal expansion coefficient.
const Real _fluid_coefficient
Fluid volumetric thermal expansion coefficient.
const MaterialProperty< Real > & _coeff_old
Old value of the volumetric thermal expansion coefficient. This variable is necessary in order to kee...
InputParameters validParams< PorousFlowConstantThermalExpansionCoefficient >()
const MaterialProperty< Real > & _porosity
porosity at the nodes or quadpoints. Only the initial value is ever used