proteus 1.9.0
C/C++/Fortran libraries
Loading...
Searching...
No Matches
proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary > Class Template Reference

#include </work/cekees/proteus/proteus/richards/Richards.h>

Inheritance diagram for proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >:
[legend]
Collaboration diagram for proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >:
[legend]

Public Member Functions

 Richards ()
void evaluateCoefficients (const int rowptr[nSpace], const int colind[nnz], const double rho0, const double rho_transport, const double beta, const double gravity[nSpace], const double alpha, const double n_vg, const double thetaR, const double thetaSR, const double KWs[nnz], const double &u, double &m, double &dm, double f[nSpace], double df[nSpace], double a[nnz], double da[nnz], double as[nnz], double &kr, double &dkr, double &thetaW_out)
void evaluateInverseCoefficients (const int rowptr[nSpace], const int colind[nnz], const double rho, const double beta, const double gravity[nSpace], const double alpha, const double n_vg, const double thetaR, const double thetaSR, const double KWs[nnz], double &u, const double &m, const double &dm, const double f[nSpace], const double df[nSpace], const double a[nnz], const double da[nnz])
void evaluateInverseCoefficients_Newton (const int rowptr[nSpace], const int colind[nnz], const double rho, const double beta, const double gravity[nSpace], const double alpha, const double n_vg, const double thetaR, const double thetaSR, const double KWs[nnz], double &u, const double &m, const double &dm, const double f[nSpace], const double df[nSpace], const double a[nnz], const double da[nnz])
void calculateCFL (const double &elementDiameter, const double df[nSpace], double &cfl)
void calculateSubgridError_tau (const double &elementDiameter, const double &dmt, const double dH[nSpace], double &cfl, double &tau)
void calculateSubgridError_tau (const double &Ct_sge, const double G[nSpace *nSpace], const double &A0, const double Ai[nSpace], double &tau_v, double &cfl)
void calculateNumericalDiffusion (const double &shockCapturingDiffusion, const double &elementDiameter, const double &strong_residual, const double grad_u[nSpace], double &numDiff)
void exteriorNumericalFlux (const double &bc_flux, int rowptr[nSpace], int colind[nnz], int isSeepageFace, int &isDOFBoundary, double n[nSpace], double bc_u, double K[nnz], double grad_psi[nSpace], double u, double K_rho_g[nSpace], double penalty, double &flux)
void exteriorNumericalFluxJacobian (const int rowptr[nSpace], const int colind[nnz], const int isDOFBoundary, const double n[nSpace], const double K[nnz], const double dK[nnz], const double grad_psi[nSpace], const double grad_v[nSpace], const double dK_rho_g[nSpace], const double v, const double penalty, double &fluxJacobian)
void exteriorNumericalFlux2 (const double &bc_flux, int rowptr[nSpace], int colind[nnz], int isSeepageFace, int &isDOFBoundary, double n[nSpace], double bc_u, double K[nnz], double grad_psi[nSpace], double u, double K_rho_g[nSpace], double penalty, double &flux, double &bflux)
void exteriorNumericalFluxJacobian2 (const int rowptr[nSpace], const int colind[nnz], const int isDOFBoundary, const double n[nSpace], const double Ks[nnz], const double K[nnz], const double dK[nnz], const double grad_psi[nSpace], const double grad_v[nSpace], const double dK_rho_g[nSpace], const double v, const double penalty, double &fluxJacobian, double &bfluxJacobian)
double seepagefluxcalculator (double anb_seepage_flux, int isSeepageFace, double dS, double flux_ext)
void calculateResidual (arguments_dict &args)
void calculateJacobian (arguments_dict &args)
void FCTStep (arguments_dict &args)
void kth_FCT_step (arguments_dict &args)
void calculateResidual_entropy_viscosity (arguments_dict &args)
void invert (arguments_dict &args)
void calculateMassMatrix (arguments_dict &args)
Public Member Functions inherited from proteus::richards::Richards_base
virtual ~Richards_base ()

Public Attributes

const int nDOF_test_X_trial_element
CompKernelType ck
std::vector< double > rho_dof_member
int PSK_TYPE_member = 0

Detailed Description

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
class proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >

Definition at line 67 of file Richards.h.

Constructor & Destructor Documentation

◆ Richards()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::Richards ( )
inline

Definition at line 80 of file Richards.h.

Member Function Documentation

◆ calculateCFL()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateCFL ( const double & elementDiameter,
const double df[nSpace],
double & cfl )
inline

Definition at line 175 of file Richards.h.

◆ calculateJacobian()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateJacobian ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 675 of file Richards.h.

◆ calculateMassMatrix()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateMassMatrix ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 2048 of file Richards.h.

◆ calculateNumericalDiffusion()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateNumericalDiffusion ( const double & shockCapturingDiffusion,
const double & elementDiameter,
const double & strong_residual,
const double grad_u[nSpace],
double & numDiff )
inline

Definition at line 205 of file Richards.h.

◆ calculateResidual()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateResidual ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 313 of file Richards.h.

◆ calculateResidual_entropy_viscosity()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateResidual_entropy_viscosity ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 1186 of file Richards.h.

◆ calculateSubgridError_tau() [1/2]

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateSubgridError_tau ( const double & Ct_sge,
const double G[nSpace *nSpace],
const double & A0,
const double Ai[nSpace],
double & tau_v,
double & cfl )
inline

Definition at line 197 of file Richards.h.

◆ calculateSubgridError_tau() [2/2]

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::calculateSubgridError_tau ( const double & elementDiameter,
const double & dmt,
const double dH[nSpace],
double & cfl,
double & tau )
inline

Definition at line 185 of file Richards.h.

◆ evaluateCoefficients()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::evaluateCoefficients ( const int rowptr[nSpace],
const int colind[nnz],
const double rho0,
const double rho_transport,
const double beta,
const double gravity[nSpace],
const double alpha,
const double n_vg,
const double thetaR,
const double thetaSR,
const double KWs[nnz],
const double & u,
double & m,
double & dm,
double f[nSpace],
double df[nSpace],
double a[nnz],
double da[nnz],
double as[nnz],
double & kr,
double & dkr,
double & thetaW_out )
inline

Definition at line 81 of file Richards.h.

◆ evaluateInverseCoefficients()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::evaluateInverseCoefficients ( const int rowptr[nSpace],
const int colind[nnz],
const double rho,
const double beta,
const double gravity[nSpace],
const double alpha,
const double n_vg,
const double thetaR,
const double thetaSR,
const double KWs[nnz],
double & u,
const double & m,
const double & dm,
const double f[nSpace],
const double df[nSpace],
const double a[nnz],
const double da[nnz] )
inline

Definition at line 126 of file Richards.h.

◆ evaluateInverseCoefficients_Newton()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::evaluateInverseCoefficients_Newton ( const int rowptr[nSpace],
const int colind[nnz],
const double rho,
const double beta,
const double gravity[nSpace],
const double alpha,
const double n_vg,
const double thetaR,
const double thetaSR,
const double KWs[nnz],
double & u,
const double & m,
const double & dm,
const double f[nSpace],
const double df[nSpace],
const double a[nnz],
const double da[nnz] )
inline

Definition at line 142 of file Richards.h.

◆ exteriorNumericalFlux()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::exteriorNumericalFlux ( const double & bc_flux,
int rowptr[nSpace],
int colind[nnz],
int isSeepageFace,
int & isDOFBoundary,
double n[nSpace],
double bc_u,
double K[nnz],
double grad_psi[nSpace],
double u,
double K_rho_g[nSpace],
double penalty,
double & flux )
inline

Definition at line 216 of file Richards.h.

◆ exteriorNumericalFlux2()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::exteriorNumericalFlux2 ( const double & bc_flux,
int rowptr[nSpace],
int colind[nnz],
int isSeepageFace,
int & isDOFBoundary,
double n[nSpace],
double bc_u,
double K[nnz],
double grad_psi[nSpace],
double u,
double K_rho_g[nSpace],
double penalty,
double & flux,
double & bflux )
inline

Definition at line 258 of file Richards.h.

◆ exteriorNumericalFluxJacobian()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::exteriorNumericalFluxJacobian ( const int rowptr[nSpace],
const int colind[nnz],
const int isDOFBoundary,
const double n[nSpace],
const double K[nnz],
const double dK[nnz],
const double grad_psi[nSpace],
const double grad_v[nSpace],
const double dK_rho_g[nSpace],
const double v,
const double penalty,
double & fluxJacobian )
inline

Definition at line 243 of file Richards.h.

◆ exteriorNumericalFluxJacobian2()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::exteriorNumericalFluxJacobian2 ( const int rowptr[nSpace],
const int colind[nnz],
const int isDOFBoundary,
const double n[nSpace],
const double Ks[nnz],
const double K[nnz],
const double dK[nnz],
const double grad_psi[nSpace],
const double grad_v[nSpace],
const double dK_rho_g[nSpace],
const double v,
const double penalty,
double & fluxJacobian,
double & bfluxJacobian )
inline

Definition at line 289 of file Richards.h.

◆ FCTStep()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::FCTStep ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 901 of file Richards.h.

◆ invert()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::invert ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 2001 of file Richards.h.

◆ kth_FCT_step()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
void proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::kth_FCT_step ( arguments_dict & args)
inlinevirtual

Implements proteus::richards::Richards_base.

Definition at line 1051 of file Richards.h.

◆ seepagefluxcalculator()

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
double proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::seepagefluxcalculator ( double anb_seepage_flux,
int isSeepageFace,
double dS,
double flux_ext )
inline

Definition at line 307 of file Richards.h.

Member Data Documentation

◆ ck

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
CompKernelType proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::ck

Definition at line 70 of file Richards.h.

◆ nDOF_test_X_trial_element

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
const int proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::nDOF_test_X_trial_element

Definition at line 69 of file Richards.h.

◆ PSK_TYPE_member

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
int proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::PSK_TYPE_member = 0

Definition at line 79 of file Richards.h.

◆ rho_dof_member

template<class CompKernelType, int nSpace, int nQuadraturePoints_element, int nDOF_mesh_trial_element, int nDOF_trial_element, int nDOF_test_element, int nQuadraturePoints_elementBoundary>
std::vector<double> proteus::richards::Richards< CompKernelType, nSpace, nQuadraturePoints_element, nDOF_mesh_trial_element, nDOF_trial_element, nDOF_test_element, nQuadraturePoints_elementBoundary >::rho_dof_member

Definition at line 74 of file Richards.h.


The documentation for this class was generated from the following file: