MFEM v2.0
Public Types | Public Member Functions | Static Public Attributes | Private Attributes
Geometry Class Reference

#include <geom.hpp>

Collaboration diagram for Geometry:
Collaboration graph
[legend]

List of all members.

Public Types

enum  Type {
  POINT, SEGMENT, TRIANGLE, SQUARE,
  TETRAHEDRON, CUBE
}

Public Member Functions

 Geometry ()
 ~Geometry ()
const IntegrationRuleGetVertices (int GeomType)
const IntegrationPointGetCenter (int GeomType)
DenseMatrixGetPerfGeomToGeomJac (int GeomType)
void GetPerfPointMat (int GeomType, DenseMatrix &pm)
void JacToPerfJac (int GeomType, const DenseMatrix &J, DenseMatrix &PJ) const
int NumBdr (int GeomType)

Static Public Attributes

static const int NumGeom = 6
static const int NumBdrArray [] = { 0, 2, 3, 4, 4, 6 }
static const char * Name [NumGeom]

Private Attributes

IntegrationRuleGeomVert [NumGeom]
IntegrationPoint GeomCenter [NumGeom]
DenseMatrixPerfGeomToGeomJac [NumGeom]

Detailed Description

Types of domains for integration rules and reference finite elements: Geometry::POINT - a point Geometry::SEGMENT - the interval [0,1] Geometry::TRIANGLE - triangle with verteces (0,0), (1,0), (0,1) Geometry::SQUARE - the unit square (0,1)x(0,1) Geometry::TETRAHEDRON - w/ vert. (0,0,0),(1,0,0),(0,1,0),(0,0,1) Geometry::CUBE - the unit cube

Definition at line 22 of file geom.hpp.


Member Enumeration Documentation

Enumerator:
POINT 
SEGMENT 
TRIANGLE 
SQUARE 
TETRAHEDRON 
CUBE 

Definition at line 25 of file geom.hpp.


Constructor & Destructor Documentation

Geometry::Geometry ( )
Geometry::~Geometry ( )

Definition at line 157 of file geom.cpp.

References GeomVert, NumGeom, and PerfGeomToGeomJac.


Member Function Documentation

const IntegrationPoint& Geometry::GetCenter ( int  GeomType) [inline]
DenseMatrix* Geometry::GetPerfGeomToGeomJac ( int  GeomType) [inline]

Definition at line 46 of file geom.hpp.

References PerfGeomToGeomJac.

void Geometry::GetPerfPointMat ( int  GeomType,
DenseMatrix pm 
)

Definition at line 183 of file geom.cpp.

References CUBE, mfem_error(), SEGMENT, DenseMatrix::SetSize(), SQUARE, TETRAHEDRON, and TRIANGLE.

Referenced by Geometry().

const IntegrationRule * Geometry::GetVertices ( int  GeomType)
void Geometry::JacToPerfJac ( int  GeomType,
const DenseMatrix J,
DenseMatrix PJ 
) const

Definition at line 244 of file geom.cpp.

References Mult(), and PerfGeomToGeomJac.

Referenced by Mesh::GetElementJacobian().

int Geometry::NumBdr ( int  GeomType) [inline]

Definition at line 52 of file geom.hpp.

References NumBdrArray.

Referenced by GridFunction::SaveSTL().


Member Data Documentation

Definition at line 33 of file geom.hpp.

Referenced by Geometry(), and GetCenter().

Definition at line 32 of file geom.hpp.

Referenced by Geometry(), GetVertices(), and ~Geometry().

const char * Geometry::Name [static]
Initial value:
{ "Point", "Segment", "Triangle", "Square", "Tetrahedron", "Cube" }

Definition at line 29 of file geom.hpp.

Referenced by IntegrationRules::Get().

const int Geometry::NumBdrArray = { 0, 2, 3, 4, 4, 6 } [static]

Definition at line 28 of file geom.hpp.

Referenced by NumBdr().

const int Geometry::NumGeom = 6 [static]

Definition at line 34 of file geom.hpp.

Referenced by Geometry(), GetPerfGeomToGeomJac(), JacToPerfJac(), and ~Geometry().


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines