QuadratureFormulaP1Tetrahedron Class Reference

#include <QuadratureFormula.hpp>

Inheritance diagram for QuadratureFormulaP1Tetrahedron:

Inheritance graph
[legend]
Collaboration diagram for QuadratureFormulaP1Tetrahedron:

Collaboration graph
[legend]

List of all members.

Public Types

enum  { numberOfQuadraturePoints = 4 }

Public Member Functions

const TinyVector< 3 > & operator[] (const size_t &i) const
const TinyVector
< numberOfQuadraturePoints,
TinyVector< 3 > > & 
vertices () const
size_t numberOfVertices () const
real_t weight (const size_t &i) const
 QuadratureFormulaP1Tetrahedron ()

Static Public Member Functions

static
QuadratureFormulaP1Tetrahedron
instance ()
static void create ()
static void destroy ()

Static Protected Attributes

static
QuadratureFormulaP1Tetrahedron
__pInstance

Private Member Functions

void __setQuadratureVertices ()

Private Attributes

TinyVector
< numberOfQuadraturePoints,
TinyVector< 3 > > 
__integrationVertices
TinyVector
< numberOfQuadraturePoints,
real_t > 
__weight


Detailed Description

Definition at line 554 of file QuadratureFormula.hpp.


Member Enumeration Documentation

anonymous enum

Enumerator:
numberOfQuadraturePoints 

Definition at line 558 of file QuadratureFormula.hpp.

00558        {
00559     numberOfQuadraturePoints = 4
00560   };


Constructor & Destructor Documentation

QuadratureFormulaP1Tetrahedron::QuadratureFormulaP1Tetrahedron (  )  [inline]

Definition at line 588 of file QuadratureFormula.hpp.

References __setQuadratureVertices().

00589   {
00590     this->__setQuadratureVertices();
00591   }

Here is the call graph for this function:


Member Function Documentation

const TinyVector<3>& QuadratureFormulaP1Tetrahedron::operator[] ( const size_t &  i  )  const [inline]

Definition at line 568 of file QuadratureFormula.hpp.

References __integrationVertices.

00569   {
00570     return __integrationVertices[i];
00571   }

const TinyVector<numberOfQuadraturePoints,TinyVector<3> >& QuadratureFormulaP1Tetrahedron::vertices (  )  const [inline]

Definition at line 573 of file QuadratureFormula.hpp.

References __integrationVertices.

Referenced by P1TetrahedronFiniteElement::integrationVertices().

00574   {
00575     return __integrationVertices;
00576   }

size_t QuadratureFormulaP1Tetrahedron::numberOfVertices (  )  const [inline]

Definition at line 578 of file QuadratureFormula.hpp.

References numberOfQuadraturePoints.

00579   {
00580     return numberOfQuadraturePoints;
00581   }

real_t QuadratureFormulaP1Tetrahedron::weight ( const size_t &  i  )  const [inline]

Definition at line 583 of file QuadratureFormula.hpp.

References __weight.

00584   {
00585     return __weight[i];
00586   }

void QuadratureFormulaP1Tetrahedron::__setQuadratureVertices (  )  [inline, private]

Definition at line 593 of file QuadratureFormula.hpp.

References __integrationVertices, __weight, and numberOfQuadraturePoints.

Referenced by QuadratureFormulaP1Tetrahedron().

00594   {
00595     __weight = 1./(6.*numberOfQuadraturePoints);
00596 
00597     TinyVector<4, real_t> mu;
00598     mu[0] = 0.585410196624969;
00599     mu[1] = 0.138196601125011;
00600     mu[2] = 0.138196601125011;
00601     mu[3] = 0.138196601125011;
00602 
00603     TinyVector<4, TinyVector<3,real_t> > vertex;
00604     vertex[0] = TinyVector<3, real_t>(0,0,0);
00605     vertex[1] = TinyVector<3, real_t>(1,0,0);
00606     vertex[2] = TinyVector<3, real_t>(0,1,0);
00607     vertex[3] = TinyVector<3, real_t>(0,0,1);
00608 
00609     for (size_t i=0; i<4; ++i) {
00610       __integrationVertices[i] = 0;
00611       for (size_t j=0; j<4; ++j) {
00612         __integrationVertices[i] += mu[(i-j)%4]*vertex[j];
00613       }
00614     }
00615   }

static QuadratureFormulaP1Tetrahedron & StaticBase< QuadratureFormulaP1Tetrahedron >::instance (  )  [inline, static, inherited]

Access to auto instanciated static;

Returns:
*__pInstance

Definition at line 46 of file StaticBase.hpp.

Referenced by MeshOfTetrahedra::buildLocalizationTools(), and P1TetrahedronFiniteElement::integrationVertices().

00047   {
00048     return *__pInstance;
00049   }

static void StaticBase< QuadratureFormulaP1Tetrahedron >::create (  )  [inline, static, inherited]

Creates __pInstance in Embedding class.

Definition at line 55 of file StaticBase.hpp.

Referenced by ThreadStaticCenter::ThreadStaticCenter().

00056   {
00057     __pInstance = new EmbeddingClass();
00058   }

static void StaticBase< QuadratureFormulaP1Tetrahedron >::destroy (  )  [inline, static, inherited]

Destroyes __autoInstanciated in Embedding class.

Definition at line 64 of file StaticBase.hpp.

Referenced by ThreadStaticCenter::~ThreadStaticCenter().

00065   {
00066     delete __pInstance;
00067   }


Member Data Documentation

Definition at line 563 of file QuadratureFormula.hpp.

Referenced by __setQuadratureVertices(), operator[](), and vertices().

TinyVector<numberOfQuadraturePoints, real_t> QuadratureFormulaP1Tetrahedron::__weight [private]

Definition at line 565 of file QuadratureFormula.hpp.

Referenced by __setQuadratureVertices(), and weight().

The static variable

Definition at line 37 of file StaticBase.hpp.


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

Generated on Wed Nov 19 00:12:08 2008 for FreeFEM3D (aka ff3d) by  doxygen 1.5.6