Go to the documentation of this file.
14 #include "GeneralUserObject.h"
42 virtual RealVectorValue
velSUPG(RealTensorValue perm,
43 RealVectorValue gradp,
45 RealVectorValue gravity)
const = 0;
51 virtual RealTensorValue
dvelSUPG_dgradp(RealTensorValue perm)
const = 0;
59 virtual RealVectorValue
60 dvelSUPG_dp(RealTensorValue perm, Real density_prime, RealVectorValue gravity)
const = 0;
70 virtual RealVectorValue
bb(RealVectorValue vel,
72 RealVectorValue xi_prime,
73 RealVectorValue eta_prime,
74 RealVectorValue zeta_prime)
const = 0;
84 virtual RealVectorValue
dbb2_dgradp(RealVectorValue vel,
85 RealTensorValue dvel_dgradp,
86 RealVectorValue xi_prime,
87 RealVectorValue eta_prime,
88 RealVectorValue zeta_prime)
const = 0;
98 virtual Real
dbb2_dp(RealVectorValue vel,
99 RealVectorValue dvel_dp,
100 RealVectorValue xi_prime,
101 RealVectorValue eta_prime,
102 RealVectorValue zeta_prime)
const = 0;
111 virtual Real
tauSUPG(RealVectorValue vel, Real traceperm, RealVectorValue b)
const = 0;
122 RealTensorValue dvel_dgradp,
125 RealVectorValue db2_dgradp)
const = 0;
136 RealVectorValue dvel_dp,
139 Real db2_dp)
const = 0;
virtual RealTensorValue dvelSUPG_dgradp(RealTensorValue perm) const =0
derivative of SUPG velocity wrt gradient of porepressure
virtual RealVectorValue dtauSUPG_dgradp(RealVectorValue vel, RealTensorValue dvel_dgradp, Real traceperm, RealVectorValue b, RealVectorValue db2_dgradp) const =0
derivative of tau wrt gradient of porepressure
virtual RealVectorValue bb(RealVectorValue vel, int dimen, RealVectorValue xi_prime, RealVectorValue eta_prime, RealVectorValue zeta_prime) const =0
|bb| ~ 2*velocity/element_length
InputParameters validParams< RichardsSUPG >()
virtual Real dbb2_dp(RealVectorValue vel, RealVectorValue dvel_dp, RealVectorValue xi_prime, RealVectorValue eta_prime, RealVectorValue zeta_prime) const =0
derivative of bb*bb wrt porepressure
virtual RealVectorValue velSUPG(RealTensorValue perm, RealVectorValue gradp, Real density, RealVectorValue gravity) const =0
SUPG velocity This points in direction of information propagation.
const std::string density
virtual Real dtauSUPG_dp(RealVectorValue vel, RealVectorValue dvel_dp, Real traceperm, RealVectorValue b, Real db2_dp) const =0
derivative of tau wrt porepressure (keeping gradp fixed)
base class for SUPG of the Richards equation You must override all the functions below with your spec...
virtual RealVectorValue dvelSUPG_dp(RealTensorValue perm, Real density_prime, RealVectorValue gravity) const =0
derivative of SUPG velocity wrt porepressure (keeping gradp fixed)
RichardsSUPG(const InputParameters ¶meters)
virtual RealVectorValue dbb2_dgradp(RealVectorValue vel, RealTensorValue dvel_dgradp, RealVectorValue xi_prime, RealVectorValue eta_prime, RealVectorValue zeta_prime) const =0
derivative of bb*bb wrt gradient of porepressure
virtual bool SUPG_trivial() const =0
Returns true if SUPG is trivial.
virtual Real tauSUPG(RealVectorValue vel, Real traceperm, RealVectorValue b) const =0
The SUPG tau parameter.