d(fluid mass in porespace)/dt with the fluid mass being lumped to the nodes. More...
#include <RichardsLumpedMassChange.h>
Public Member Functions | |
RichardsLumpedMassChange (const InputParameters ¶meters) | |
Protected Member Functions | |
virtual Real | computeQpResidual () |
virtual Real | computeQpJacobian () |
virtual Real | computeQpOffDiagJacobian (unsigned int jvar) |
Protected Attributes | |
const RichardsVarNames & | _richards_name_UO |
holds info regarding the names of the Richards variables and methods for extracting values of these variables More... | |
unsigned int | _num_p |
number of richards variables More... | |
unsigned int | _pvar |
the index of this variable in the list of Richards variables held by _richards_name_UO. More... | |
const MaterialProperty< Real > & | _porosity |
current value of the porosity More... | |
const MaterialProperty< Real > & | _porosity_old |
value of the porosity at the start of the timestep More... | |
const RichardsSeff * | _seff_UO |
The userobject that computes effective saturation (as a function of porepressure(s)) for this variable. More... | |
const RichardsSat * | _sat_UO |
The userobject that computes saturation (as a function of effective saturation) for this variable. More... | |
const RichardsDensity * | _density_UO |
The userobject that computes fluid density (as a function of the porepressure) More... | |
std::vector< const VariableValue * > | _ps_at_nodes |
Holds the values of pressures at all the nodes of the element Eg: _ps_at_nodes[_pvar] is a pointer to this variable's nodal porepressure values So: (*_ps_at_nodes[_pvar])[i] = _var.dofValues()[i]. More... | |
std::vector< const VariableValue * > | _ps_old_at_nodes |
Holds the nodal values of pressures at timestep_begin, in same way as _ps_at_nodes. More... | |
std::vector< Real > | _dseff |
holds nodal values of d(Seff)/dP_i More... | |
d(fluid mass in porespace)/dt with the fluid mass being lumped to the nodes.
Usually this is better to use than a non-lumped version because it prevents unphysical oscillations.
Definition at line 31 of file RichardsLumpedMassChange.h.
RichardsLumpedMassChange::RichardsLumpedMassChange | ( | const InputParameters & | parameters | ) |
Definition at line 43 of file RichardsLumpedMassChange.C.
|
protectedvirtual |
Definition at line 93 of file RichardsLumpedMassChange.C.
|
protectedvirtual |
Definition at line 113 of file RichardsLumpedMassChange.C.
|
protectedvirtual |
Definition at line 75 of file RichardsLumpedMassChange.C.
|
protected |
The userobject that computes fluid density (as a function of the porepressure)
Definition at line 74 of file RichardsLumpedMassChange.h.
|
protected |
holds nodal values of d(Seff)/dP_i
Definition at line 88 of file RichardsLumpedMassChange.h.
Referenced by computeQpJacobian(), computeQpOffDiagJacobian(), and RichardsLumpedMassChange().
|
protected |
number of richards variables
Definition at line 50 of file RichardsLumpedMassChange.h.
Referenced by RichardsLumpedMassChange().
|
protected |
current value of the porosity
Definition at line 62 of file RichardsLumpedMassChange.h.
Referenced by computeQpJacobian(), computeQpOffDiagJacobian(), and computeQpResidual().
|
protected |
value of the porosity at the start of the timestep
Definition at line 65 of file RichardsLumpedMassChange.h.
Referenced by computeQpResidual().
|
protected |
Holds the values of pressures at all the nodes of the element Eg: _ps_at_nodes[_pvar] is a pointer to this variable's nodal porepressure values So: (*_ps_at_nodes[_pvar])[i] = _var.dofValues()[i].
Definition at line 82 of file RichardsLumpedMassChange.h.
Referenced by computeQpJacobian(), computeQpOffDiagJacobian(), computeQpResidual(), and RichardsLumpedMassChange().
|
protected |
Holds the nodal values of pressures at timestep_begin, in same way as _ps_at_nodes.
Definition at line 85 of file RichardsLumpedMassChange.h.
Referenced by computeQpResidual(), and RichardsLumpedMassChange().
|
protected |
the index of this variable in the list of Richards variables held by _richards_name_UO.
Eg if richards_vars = 'pwater pgas poil' in the _richards_name_UO and this kernel has variable = pgas, then _pvar = 1 This is used to index correctly into seff_UO, sat_UO, density_UO, etc.
Definition at line 59 of file RichardsLumpedMassChange.h.
Referenced by computeQpJacobian(), computeQpOffDiagJacobian(), and computeQpResidual().
|
protected |
holds info regarding the names of the Richards variables and methods for extracting values of these variables
Definition at line 47 of file RichardsLumpedMassChange.h.
Referenced by computeQpOffDiagJacobian(), and RichardsLumpedMassChange().
|
protected |
The userobject that computes saturation (as a function of effective saturation) for this variable.
Definition at line 71 of file RichardsLumpedMassChange.h.
|
protected |
The userobject that computes effective saturation (as a function of porepressure(s)) for this variable.
Definition at line 68 of file RichardsLumpedMassChange.h.