Class documentation of Concepts

Loading...
Searching...
No Matches
hp3D Namespace Reference

Classes

class  Advection
 
class  APrioriRefinement
 
class  ArrayElementFormula
 
class  ArrayHexaWeights
 
class  BilinearFormTwoPartDeriv
 
class  BuildDofsBase
 
class  BuildEdgeDofs
 
class  BuildFaceDofs
 
class  BuildFaceDofsHypTrunk
 
class  BuildFaceDofsLinTrunk
 
class  BuildInnerDofs
 
class  BuildInnerDofsHypTrunk
 
class  BuildInnerDofsLinTrunk
 
class  BuildVertexDofs
 
class  DaugeWeight
 
class  DistancePost
 
class  DivDiv
 
class  Element
 
class  ElementFormulaVectorOnTrace
 
class  FormulaFromWeight
 
class  Grad
 
class  Hexahedron
 
class  HexahedronFaceBase
 
class  HexahedronFaceFirst
 
class  HexahedronGraphics
 
class  HexFunctions
 
class  Hook
 
class  Identity
 
class  Laplace
 
class  Laplacian
 
class  LinearElasticity
 
class  LinearFormHelper_1
 
class  MaxwellSharedData
 
class  NeumannTraceElement3d
 
class  NeumannTraceSpace3d
 
class  Postprocess14
 
class  Postprocess3
 
class  Postprocess34
 
class  Postprocess4
 
class  PostprocessRoot
 
class  PostprocessRoot4
 
class  PostprocessSquare
 
class  ProductOfAll
 
class  RefineOrRaise
 
class  Riesz
 
class  RotRot
 
class  ShapeFunction3D
 
class  ShortestDist
 
class  ShortestDistLimited
 
class  SingularEdge
 
class  SingularSet
 
class  SingularVertex
 
class  Space
 
class  SpaceTransition
 
class  SumFactorization
 
class  TraceSpace
 
class  TransitionPair
 
class  TrivialWeight
 
class  Value
 
class  ZeroTangentialValue
 

Enumerations

enum  partDerivType { NO_DERIV = 0 , X_DERIV = 1 , Y_DERIV = 2 , Z_DERIV = 3 }
 

Functions

template<class F >
void setupIdentity (vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &bf)
 
template<class F >
void setupIdentity (vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &bf, const concepts::ElementFormulaContainer< concepts::Mapping< F, 3 > > frm, bool transposed=false)
 
template<class F >
void setupAdvection (vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &bf, const concepts::ElementFormulaContainer< concepts::Point< F, 3 > > frm)
 
template<class F >
ShapeFunction3D< F > makeShapeFunction3D (const Hexahedron &elm)
 
std::ostream & operator<< (std::ostream &os, const TrivialWeight &p)
 
std::ostream & operator<< (std::ostream &os, const ShortestDist &p)
 
std::ostream & operator<< (std::ostream &os, const PostprocessSquare &p)
 
std::ostream & operator<< (std::ostream &os, const PostprocessRoot &p)
 
std::ostream & operator<< (std::ostream &os, const PostprocessRoot4 &p)
 
std::ostream & operator<< (std::ostream &os, const Postprocess34 &p)
 
std::ostream & operator<< (std::ostream &os, const Postprocess14 &p)
 
std::ostream & operator<< (std::ostream &os, const Postprocess4 &p)
 
std::ostream & operator<< (std::ostream &os, const Postprocess3 &p)
 
template<typename DistClass , typename Function >
std::ostream & operator<< (std::ostream &os, const DistancePost< DistClass, Function > &p)
 
std::ostream & operator<< (std::ostream &os, const ProductOfAll &p)
 
std::ostream & operator<< (std::ostream &os, const DaugeWeight &p)
 
std::ostream & operator<< (std::ostream &os, const ShortestDistLimited &p)
 

Detailed Description

3D hp-FEM for H1-conforming elements.

The Space can be built using full tensor product polynomial spaces in the elements or trunk spaces (and much more) by changing the way the degrees of freedom are built in the BuildDofsBase class (and its specializations).

Author
Philipp Frauenfelder, 2001
Todo:
Three dimensional hp-DGFEM in hexahedra for locally refined meshes.

Enumeration Type Documentation

◆ partDerivType

enum hp3D::partDerivType

Definition at line 31 of file bf3D_partialDeriv.hh.

Function Documentation

◆ operator<<()

template<typename DistClass , typename Function >
std::ostream & hp3D::operator<< ( std::ostream &  os,
const DistancePost< DistClass, Function > &  p 
)
inline

Definition at line 175 of file shortestDist.hh.

◆ setupAdvection()

template<class F >
void hp3D::setupAdvection ( vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &  bf,
const concepts::ElementFormulaContainer< concepts::Point< F, 3 > >  frm 
)

Function to setup a bilinear form related to the vector Advection, namely

\[\sum_{i,j=1}^3 \int_K w_j u_i\frac{\partial v_i}{\partial_{x_j}}\mathrm{d}x
  = \sum_{i=1}^3 \int_K \underline{w}\cdot\nabla v_i u_i \mathrm{d}x
  = \int_K \underline{w}^\top\nabla\underline{v}\underline{u}\mathrm{d}x\]

on vectorial spaces, where $\underline{u}$ and $\underline{v}$ are trial and test functions respectively, $\underline{w}$ is a given vectorial formula, and

\[
\nabla \underline{v} = \left(\begin{array}{ccc}
\frac{\partial u_1}{\partial x_1} & 
\frac{\partial u_1}{\partial x_2} &
\frac{\partial u_1}{\partial x_3} \\
\frac{\partial u_2}{\partial x_1} & 
\frac{\partial u_2}{\partial x_2} &
\frac{\partial u_2}{\partial x_3} \\
\frac{\partial u_3}{\partial x_1} & 
\frac{\partial u_3}{\partial x_2} &
\frac{\partial u_3}{\partial x_3}.
\end{array}\right)
\]

◆ setupIdentity() [1/2]

template<class F >
void hp3D::setupIdentity ( vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &  bf)

Function to setup a bilinear form related to the vector Identity, namely

\[\int_K \underline{u}\cdot\underline{v}\mathrm{d}x\]

on vectorial spaces.

◆ setupIdentity() [2/2]

template<class F >
void hp3D::setupIdentity ( vectorial::BilinearForm< F, typename concepts::Realtype< F >::type > &  bf,
const concepts::ElementFormulaContainer< concepts::Mapping< F, 3 > >  frm,
bool  transposed = false 
)

Function to setup a bilinear form related to the vector Identity, namely

\[\int_K \underline{u}^\top A\underline{v}\mathrm{d}x\]

wih a matrix function A on vectorial spaces.

If transposed is true then the transposed of A is taken instead.