SUPG discretization of an advection-diffusion PDE. More...
#include <Galeri_SUPGVariational.h>
Public Member Functions | |
SUPGVariational (const int NumQuadratureNodes, double(*diff)(const double &, const double &, const double &), double(*bx)(const double &, const double &, const double &), double(*by)(const double &, const double &, const double &), double(*bz)(const double &, const double &, const double &), double(*source)(const double &, const double &, const double &), double(*force)(const double &, const double &, const double &), double(*bc)(const double &, const double &, const double &, const int &), int(*bc_type)(const int &)) | |
Constructor. | |
~SUPGVariational () | |
Destructor. | |
double | diff (const double x, const double y, const double z) const |
Evaluates the diffusion coefficient at point (x, y, z). | |
double | source (const double x, const double y, const double z) const |
Evaluates the source term at point (x, y, z). | |
double | force (const double x, const double y, const double z) const |
Evaluates the force term at point (x, y, z). | |
double | conv_x (const double x, const double y, const double z) const |
Evaluates the x-component of the convective term at point (x, y, z). | |
double | conv_y (const double x, const double y, const double z) const |
Evaluates the y-component of the convective term at point (x, y, z). | |
double | conv_z (const double x, const double y, const double z) const |
Evaluates the z-component of the convective term at point (x, y, z). | |
virtual int | IntegrateOverElement (const AbstractVariational &Variational, const double *x, const double *y, const double *z, const double *data, double *ElementMatrix, double *ElementRHS) const |
Integrates the bilinear form and the right-hand side over the element. | |
virtual int | ElementNorm (const double *LocalSol, const double *x, const double *y, const double *z, double *Norm) const |
Computes the norm of the computed solution over the element. | |
virtual int | ElementNorm (int(*ExactSolution)(double, double, double, double *), const double *x, const double *y, const double *z, double *Norm) const |
Computed the norm of the exact solution over the element. | |
virtual int | ElementNorm (const double *LocalSol, int(*ExactSolution)(double, double, double, double *), const double *x, const double *y, const double *z, double *Norm) const |
Computed the norm of the computed and exact solution over the element. | |
double | LHS (const double Phi, const double Psi, const double PhiX, const double PsiX, const double PhiY, const double PsiY, const double PhiZ, const double PsiZ, const double x, const double y, const double z) const |
Evaluates the bilinear form (without integral) at point (x,y,z). | |
double | RHS (const double Psi, const double PsiX, const double PsiY, const double PsiZ, const double x, const double y, const double z) const |
Returns the value of the right-hand side (without integral) at point (x, y, z). | |
int | BC (const int PatchID) const |
Returns an integer identifying the boundary condition assigned to the specified patch. | |
double | BC (const double x, const double y, const double z, const int Patch) const |
Returns the value of the boundary condition at point (x, y, z). | |
Public Member Functions inherited from Galeri::FiniteElements::AbstractVariational | |
virtual | ~AbstractVariational () |
Destructor. | |
SUPG discretization of an advection-diffusion PDE.
This class performs the finite element discretization of a scalar, advection-diffusion PDE, using the SUPG stabilization and the coth formula for the definition of tau. This class works only with triangles and tetrahedra.