Galeri Development
Galeri::FiniteElements::SUPGVariational< T > Class Template Reference

SUPG discretization of an advection-diffusion PDE. More...

`#include <Galeri_SUPGVariational.h>`

Inheritance diagram for Galeri::FiniteElements::SUPGVariational< T >:
[legend]
Collaboration diagram for Galeri::FiniteElements::SUPGVariational< T >:
[legend]

List of all members.

## 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).
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).

## Detailed Description

### template<class T> class Galeri::FiniteElements::SUPGVariational< T >

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.

Date:
Last updated on Apr-05.

The documentation for this class was generated from the following files:
• FiniteElements/Galeri_SUPGVariational.h
• fem/Galeri_SUPGVariational.h