www.mooseframework.org
PoroFullSatTimeDerivative.h
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 
10 #pragma once
11 
12 #include "DerivativeMaterialInterface.h"
13 #include "TimeDerivative.h"
14 
15 // Forward Declarations
17 
18 template <>
20 
26 class PoroFullSatTimeDerivative : public DerivativeMaterialInterface<TimeDerivative>
27 {
28 public:
29  PoroFullSatTimeDerivative(const InputParameters & parameters);
30 
31 protected:
32  virtual Real computeQpResidual();
33 
34  virtual Real computeQpJacobian();
35 
36  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
37 
38 private:
40  const VariableValue & _u_old;
41 
43  const MaterialProperty<Real> & _volstrain;
44 
46  const MaterialProperty<Real> & _volstrain_old;
47 
49  unsigned int _ndisp;
50 
52  std::vector<unsigned int> _disp_var_num;
53 
55  const MaterialProperty<Real> & _alpha;
56 
58  const MaterialProperty<Real> & _one_over_biot_modulus;
59 
61  const MaterialProperty<Real> & _done_over_biot_modulus_dP;
62 
64  const MaterialProperty<Real> & _done_over_biot_modulus_dep;
65 };
66 
PoroFullSatTimeDerivative::_volstrain_old
const MaterialProperty< Real > & _volstrain_old
old value of volumetric strain
Definition: PoroFullSatTimeDerivative.h:46
PoroFullSatTimeDerivative::_disp_var_num
std::vector< unsigned int > _disp_var_num
variable number of the displacements variables
Definition: PoroFullSatTimeDerivative.h:52
PoroFullSatTimeDerivative::_one_over_biot_modulus
const MaterialProperty< Real > & _one_over_biot_modulus
1/M, where M is the Biot modulus
Definition: PoroFullSatTimeDerivative.h:58
PoroFullSatTimeDerivative::_done_over_biot_modulus_dP
const MaterialProperty< Real > & _done_over_biot_modulus_dP
d(1/M)/d(porepressure)
Definition: PoroFullSatTimeDerivative.h:61
PoroFullSatTimeDerivative::_alpha
const MaterialProperty< Real > & _alpha
Biot coefficient.
Definition: PoroFullSatTimeDerivative.h:55
PoroFullSatTimeDerivative::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
Definition: PoroFullSatTimeDerivative.C:68
PoroFullSatTimeDerivative::computeQpJacobian
virtual Real computeQpJacobian()
Definition: PoroFullSatTimeDerivative.C:60
PoroFullSatTimeDerivative::PoroFullSatTimeDerivative
PoroFullSatTimeDerivative(const InputParameters &parameters)
Definition: PoroFullSatTimeDerivative.C:29
validParams< PoroFullSatTimeDerivative >
InputParameters validParams< PoroFullSatTimeDerivative >()
Definition: PoroFullSatTimeDerivative.C:16
PoroFullSatTimeDerivative::_done_over_biot_modulus_dep
const MaterialProperty< Real > & _done_over_biot_modulus_dep
d(1/M)/d(volumetric strain)
Definition: PoroFullSatTimeDerivative.h:64
PoroFullSatTimeDerivative::_ndisp
unsigned int _ndisp
number of displacement variables
Definition: PoroFullSatTimeDerivative.h:49
PoroFullSatTimeDerivative::_u_old
const VariableValue & _u_old
old value of porepressure
Definition: PoroFullSatTimeDerivative.h:40
PoroFullSatTimeDerivative::computeQpResidual
virtual Real computeQpResidual()
Definition: PoroFullSatTimeDerivative.C:51
PoroFullSatTimeDerivative
Kernel = biot_coefficient*d(volumetric_strain)/dt + (1/biot_modulus)*d(porepressure)/dt this is the t...
Definition: PoroFullSatTimeDerivative.h:26
PoroFullSatTimeDerivative::_volstrain
const MaterialProperty< Real > & _volstrain
volumetric strain
Definition: PoroFullSatTimeDerivative.h:43