Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Elem2D Class Reference

#include <elem2d.hpp>

Inheritance diagram for Elem2D:

Inheritance graph
[legend]
Collaboration diagram for Elem2D:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Elem2D (GSHORT ntmp=2)
virtual ~Elem2D ()
virtual ELEMTYPE ElemType ()
virtual GINT Dim ()
GINT GetOrder (const GINT idir)
GINT GetNumNodes ()
virtual GDOUBLE Integrate (GVector *v, GDOUBLE *multiplicity=NULL)=0
virtual GDOUBLE PIntegrate (GVector *v, GDOUBLE *multiplicity=NULL)=0
virtual GBOOL Differentiate (GVector *dv, GVector *v, GINT idir)=0
virtual GBOOL DifferentiateWithMass (GVector *dv, GVector *v, GVector *tmp, GINT idir)=0
virtual GBOOL DifferentiateWeak (GVector *dv, GVector *v, GVector *tmp, GINT idir)=0
GVector * GetTemp ()
GVector * GetTemp (GSHORT i)
GMemMgrGetTempMgr ()
GBOOL TempLock (GVector *vec)
GBOOL TempUnlock (GVector *vec)
GDOUBLE GetArea ()
GDOUBLE GetMinEdgeLength ()
GDOUBLE GetMaxEdgeLength ()
Point3D * GetSpVertices (GINT ivertex=-1)
Point3D * GetSpMidpoints (GINT iEdge=-1)
Point3D * GetElemCenter ()
GDOUBLE * GetSpvVertices ()
GINT GetNumVertices ()
GINT GetNumEdges ()
GINT GetNumFaces ()
void Vertex2EdgePoint (GINT iedge[], GINT ipoint[], const GINT ivert)
GINT EdgePoint2Vertex (const GINT ie, const GINT ip)
void Edge2Vertex (GINT iv[], const GINT ie)
GBOOL isVirtualVertex (GINT iedge, GINT iendpoint)
GBOOL GetCommonVertex (GINT &icedge, GINT &icendpoint, const GINT iedge, const GINT iendpoint)
void GetVertexCommonEdges (GINT icedge[], GINT icendpoint[], const GINT ivertex)
GMortar1DGetEdgeMortar (GINT iedge=-1)
GIBuffer * GetEdgeIndices (GINT iedge=-1)
GIBuffer * GetEdgeIndicesN (GINT iedge=-1)
GIBuffer * GetInteriorIndices ()
GIBuffer * GetVertexIndices (GINT iedge=-1)
GVector * GetNodalMultiplicity ()
GVector * GetMask ()
GVector * GetBdyMask ()
GNeighborList * GetVNeighbor (GINT ivertex=-1)
GNeighborList * GetVVNeighbor (GINT ivertex=-1)
GNeighborList * GetENeighbor (GINT iedge=-1)
GIBuffer * GetBdyIndices ()
GBTBuffer * GetBdyTypes ()
BDYTYPE & GetVertType (GINT i)
BDYTYPE & GetEdgeType (GINT i)
BDYTYPE & GetFaceType (GINT i)
GINT & bGlobalBdyEdge (GINT i)
void ComputeBdyInfo ()
GKEY GetID ()
GKEY GetParentID ()
GKEY GetRootID ()
GDOUBLE GetiRootID ()
GNBasisGetDBasisObj (GINT idir)
virtual GNBasisGetBasisObj (GINT idir)=0
virtual GVector * Get1DWeights (GINT idir)=0
virtual GVector * GetXiNodes (GINT idir)=0
virtual GMatrix * Get1DDerivMatrix (GINT idir, GBOOL bTranspose)=0
virtual GMatrix * Get1DDerivMatrixWithMass (GINT idir, GBOOL bTranspose)=0
virtual GMatrix * Get1DDerivMatrixWeak (GINT idir, GBOOL bTranspose)=0
virtual GMatrix * Get1DStiffMatrix (GINT idir, GBOOL bTranspose)=0
virtual GVector * Get2DWeights ()=0
virtual GVector * GetMassMatrix ()=0
virtual GVector * GetiMass ()=0
virtual GVector * GetgMass ()=0
virtual GBOOL Assemble ()=0
virtual GVector * GetSpNodes (GINT idir)=0
virtual GMatrix * GetInterpOp (GINT idir, GBOOL Transpose)=0
virtual GMatrix * GetInterpDeriv (GINT idir, GBOOL Transpose)=0
virtual GBOOL XToXi (Point3D pX[], Point3D pXi[], const GINT n)=0
GBOOL Interp (GVector *Ufrom, Point3D *xto, GINT *ito, GINT nto, GVector *Uto)
GDOUBLE Interp (const GSHORT iLevel, const GDOUBLE x, const GDOUBLE y)
GBOOL Map2NewCoords (GVector *oldU, GVector *newX[], GINT nc, GINT *inew, GINT ni, GVector *newU, GIBuffer *&iremap)
void SetID (GKEY id)
void SetParentID (GKEY id)
void SetRootID (GKEY id)
void SetBasis (GNBasis *b1, GNBasis *b2)
void SetBasis (GNBasis *b, GINT idir)
void SetDBasis (GNBasis *b, GINT idir)
GVector * GetDMass ()
GMatrix * GetDJ (GINT idir)
GMatrix * GetDJT (GINT idir)
GBOOL DealiasingEnabled ()
virtual GBOOL ComputeSpNodes ()=0
virtual GBOOL SetVertices (Point3D P[], GINT num)=0
virtual void SetInterpBasis (GNBasis *b1, GNBasis *b2)=0
void SetOrder (GINT iorder1, GINT iorder2)
virtual GBOOL Resize (GINT order1, GINT order2)=0
virtual GINT SolveFE ()=0
virtual GBOOL Point_in_poly (Point3D V[], GINT, Point3D P[], GINT num)
virtual GBOOL Point_in_poly (Point3D P[], GINT num)
virtual GBOOL Point_in_poly (GDOUBLE x, GDOUBLE y)
GDOUBLE X1 (GDOUBLE xi1, GDOUBLE xi2)
 Output stream operator.
GDOUBLE X2 (GDOUBLE xi1, GDOUBLE xi2)
GBOOL AreEqual (Point3D P1, Point3D P2)
GBOOL AreEqual (IPoint3D P1, IPoint3D P2)

Protected Member Functions

void CreateElemDynamic ()
void InitMortars ()
void SetIndices ()

Protected Attributes

GINT Np1
GINT Np2
GINT ** iep2v_
GBOOL bInitialized
GBOOL bSolved
ELEMTYPE elemtype_
GKEY elemid_
GKEY parentid_
GKEY rootid_
GINT nVertices_
GINT nEdges_
GINT nFaces_
Point3D * spVertices
Point3D * spMidpoints
Point3D * elemCenter
GDOUBLE area_
GDOUBLE irootid_
GDOUBLE * spvVertices
GVector * spNodes1
GVector * spNodes2
GNBasisbasis1
GNBasisbasis2
GNBasisgbasis1
GNBasisgbasis2
GNBasisdealias_basis_ [GDIM]
GMatrix JD_ [GDIM]
GMatrix JDT_ [GDIM]
 maps to dealias space
GVector DMassMatrix_
 maps from dealias space
GMortar1Dedge_mortars_
 dealias space mass matrix
GNeighborList * vertex_neighbor_
GNeighborList * vvertex_neighbor_
GNeighborList * edge_neighbor_
GIBuffer * vert_indices_
GIBuffer * edge_indices_
GIBuffer * edge_indicesn_
GIBuffer * inter_indices_
GIBuffer * midpnt_indices_
GVector * nodal_multiplicity_
GIBuffer * bdy_indices_
GBTBuffer * bdy_types_
GBTBuffer * vert_types_
GBTBuffer * edge_types_
GBTBuffer * face_types_
GIBuffer * bGlobal_edge_
GVector * mask_
GVector * bmask_
GVector vtmp [G_NUM_ELEM_TMP]
GMemMgrvtmpmgr_

Friends

ostream & operator<< (ostream &, Elem2D &)

Constructor & Destructor Documentation

Elem2D::Elem2D GSHORT  ntmp = 2  ) 
 

Elem2D::~Elem2D  )  [virtual]
 


Member Function Documentation

GBOOL Elem2D::AreEqual IPoint3D  P1,
IPoint3D  P2
[inline]
 

GBOOL Elem2D::AreEqual Point3D  P1,
Point3D  P2
[inline]
 

virtual GBOOL Elem2D::Assemble  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GINT & Elem2D::bGlobalBdyEdge GINT  i  ) 
 

void Elem2D::ComputeBdyInfo  ) 
 

virtual GBOOL Elem2D::ComputeSpNodes  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

void Elem2D::CreateElemDynamic  )  [protected]
 

GBOOL Elem2D::DealiasingEnabled  ) 
 

virtual GBOOL Elem2D::Differentiate GVector *  dv,
GVector *  v,
GINT  idir
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GBOOL Elem2D::DifferentiateWeak GVector *  dv,
GVector *  v,
GVector *  tmp,
GINT  idir
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GBOOL Elem2D::DifferentiateWithMass GVector *  dv,
GVector *  v,
GVector *  tmp,
GINT  idir
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GINT Elem2D::Dim  )  [inline, virtual]
 

void Elem2D::Edge2Vertex GINT  iv[],
const GINT  ie
 

GINT Elem2D::EdgePoint2Vertex const GINT  ie,
const GINT  ip
 

virtual ELEMTYPE Elem2D::ElemType  )  [inline, virtual]
 

virtual GMatrix* Elem2D::Get1DDerivMatrix GINT  idir,
GBOOL  bTranspose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GMatrix* Elem2D::Get1DDerivMatrixWeak GINT  idir,
GBOOL  bTranspose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GMatrix* Elem2D::Get1DDerivMatrixWithMass GINT  idir,
GBOOL  bTranspose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GMatrix* Elem2D::Get1DStiffMatrix GINT  idir,
GBOOL  bTranspose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GVector* Elem2D::Get1DWeights GINT  idir  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GVector* Elem2D::Get2DWeights  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GDOUBLE Elem2D::GetArea  ) 
 

virtual GNBasis* Elem2D::GetBasisObj GINT  idir  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GIBuffer * Elem2D::GetBdyIndices  ) 
 

GVector * Elem2D::GetBdyMask  ) 
 

GBTBuffer * Elem2D::GetBdyTypes  ) 
 

GBOOL Elem2D::GetCommonVertex GINT &  icedge,
GINT &  icendpoint,
const GINT  iedge,
const GINT  iendpoint
 

GNBasis * Elem2D::GetDBasisObj GINT  idir  ) 
 

GMatrix * Elem2D::GetDJ GINT  idir  ) 
 

GMatrix * Elem2D::GetDJT GINT  idir  ) 
 

GVector * Elem2D::GetDMass  ) 
 

GIBuffer * Elem2D::GetEdgeIndices GINT  iedge = -1  ) 
 

GIBuffer * Elem2D::GetEdgeIndicesN GINT  iedge = -1  ) 
 

GMortar1D * Elem2D::GetEdgeMortar GINT  iedge = -1  ) 
 

BDYTYPE & Elem2D::GetEdgeType GINT  i  ) 
 

Point3D * Elem2D::GetElemCenter  ) 
 

GNeighborList * Elem2D::GetENeighbor GINT  iedge = -1  ) 
 

BDYTYPE & Elem2D::GetFaceType GINT  i  ) 
 

virtual GVector* Elem2D::GetgMass  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GKEY Elem2D::GetID  ) 
 

virtual GVector* Elem2D::GetiMass  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GIBuffer * Elem2D::GetInteriorIndices  ) 
 

virtual GMatrix* Elem2D::GetInterpDeriv GINT  idir,
GBOOL  Transpose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GMatrix* Elem2D::GetInterpOp GINT  idir,
GBOOL  Transpose
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GDOUBLE Elem2D::GetiRootID  ) 
 

GVector * Elem2D::GetMask  ) 
 

virtual GVector* Elem2D::GetMassMatrix  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GDOUBLE Elem2D::GetMaxEdgeLength  ) 
 

GDOUBLE Elem2D::GetMinEdgeLength  ) 
 

GVector * Elem2D::GetNodalMultiplicity  ) 
 

GINT Elem2D::GetNumEdges  ) 
 

GINT Elem2D::GetNumFaces  ) 
 

GINT Elem2D::GetNumNodes  ) 
 

GINT Elem2D::GetNumVertices  ) 
 

GINT Elem2D::GetOrder const GINT  idir  ) 
 

GKEY Elem2D::GetParentID  ) 
 

GKEY Elem2D::GetRootID  ) 
 

Point3D * Elem2D::GetSpMidpoints GINT  iEdge = -1  ) 
 

virtual GVector* Elem2D::GetSpNodes GINT  idir  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

Point3D * Elem2D::GetSpVertices GINT  ivertex = -1  ) 
 

GDOUBLE * Elem2D::GetSpvVertices  ) 
 

GVector * Elem2D::GetTemp GSHORT  i  ) 
 

GVector * Elem2D::GetTemp  ) 
 

GMemMgr * Elem2D::GetTempMgr  ) 
 

void Elem2D::GetVertexCommonEdges GINT  icedge[],
GINT  icendpoint[],
const GINT  ivertex
 

GIBuffer * Elem2D::GetVertexIndices GINT  iedge = -1  ) 
 

BDYTYPE & Elem2D::GetVertType GINT  i  ) 
 

GNeighborList * Elem2D::GetVNeighbor GINT  ivertex = -1  ) 
 

GNeighborList * Elem2D::GetVVNeighbor GINT  ivertex = -1  ) 
 

virtual GVector* Elem2D::GetXiNodes GINT  idir  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

void Elem2D::InitMortars  )  [protected]
 

virtual GDOUBLE Elem2D::Integrate GVector *  v,
GDOUBLE *  multiplicity = NULL
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GDOUBLE Elem2D::Interp const GSHORT  iLevel,
const GDOUBLE  x,
const GDOUBLE  y
 

GBOOL Elem2D::Interp GVector *  Ufrom,
Point3D *  xto,
GINT *  ito,
GINT  nto,
GVector *  Uto
 

GBOOL Elem2D::isVirtualVertex GINT  iedge,
GINT  iendpoint
 

GBOOL Elem2D::Map2NewCoords GVector *  oldU,
GVector *  newX[],
GINT  nc,
GINT *  inew,
GINT  ni,
GVector *  newU,
GIBuffer *&  iremap
 

virtual GDOUBLE Elem2D::PIntegrate GVector *  v,
GDOUBLE *  multiplicity = NULL
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GBOOL Elem2D::Point_in_poly GDOUBLE  x,
GDOUBLE  y
[virtual]
 

GBOOL Elem2D::Point_in_poly Point3D  P[],
GINT  num
[virtual]
 

virtual GBOOL Elem2D::Point_in_poly Point3D  V[],
GINT  ,
Point3D  P[],
GINT  num
[virtual]
 

virtual GBOOL Elem2D::Resize GINT  order1,
GINT  order2
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

void Elem2D::SetBasis GNBasis b,
GINT  idir
 

void Elem2D::SetBasis GNBasis b1,
GNBasis b2
 

void Elem2D::SetDBasis GNBasis b,
GINT  idir
 

void Elem2D::SetID GKEY  id  ) 
 

void Elem2D::SetIndices  )  [protected]
 

virtual void Elem2D::SetInterpBasis GNBasis b1,
GNBasis b2
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

void Elem2D::SetOrder GINT  iorder1,
GINT  iorder2
 

void Elem2D::SetParentID GKEY  id  ) 
 

void Elem2D::SetRootID GKEY  id  ) 
 

virtual GBOOL Elem2D::SetVertices Point3D  P[],
GINT  num
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

virtual GINT Elem2D::SolveFE  )  [pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.

GBOOL Elem2D::TempLock GVector *  vec  ) 
 

GBOOL Elem2D::TempUnlock GVector *  vec  ) 
 

void Elem2D::Vertex2EdgePoint GINT  iedge[],
GINT  ipoint[],
const GINT  ivert
 

GDOUBLE Elem2D::X1 GDOUBLE  xi1,
GDOUBLE  xi2
[inline]
 

GDOUBLE Elem2D::X2 GDOUBLE  xi1,
GDOUBLE  xi2
[inline]
 

virtual GBOOL Elem2D::XToXi Point3D  pX[],
Point3D  pXi[],
const GINT  n
[pure virtual]
 

Implemented in DefQuad2D, and RectQuad2D.


Friends And Related Function Documentation

ostream& operator<< ostream &  str,
Elem2D e
[friend]
 


Member Data Documentation

GDOUBLE Elem2D::area_ [protected]
 

GNBasis* Elem2D::basis1 [protected]
 

GNBasis* Elem2D::basis2 [protected]
 

GIBuffer* Elem2D::bdy_indices_ [protected]
 

GBTBuffer* Elem2D::bdy_types_ [protected]
 

GIBuffer* Elem2D::bGlobal_edge_ [protected]
 

GBOOL Elem2D::bInitialized [protected]
 

GVector* Elem2D::bmask_ [protected]
 

GBOOL Elem2D::bSolved [protected]
 

GNBasis* Elem2D::dealias_basis_[GDIM] [protected]
 

GVector Elem2D::DMassMatrix_ [protected]
 

GIBuffer* Elem2D::edge_indices_ [protected]
 

GIBuffer* Elem2D::edge_indicesn_ [protected]
 

GMortar1D* Elem2D::edge_mortars_ [protected]
 

GNeighborList* Elem2D::edge_neighbor_ [protected]
 

GBTBuffer* Elem2D::edge_types_ [protected]
 

Point3D* Elem2D::elemCenter [protected]
 

GKEY Elem2D::elemid_ [protected]
 

ELEMTYPE Elem2D::elemtype_ [protected]
 

GBTBuffer* Elem2D::face_types_ [protected]
 

GNBasis* Elem2D::gbasis1 [protected]
 

GNBasis* Elem2D::gbasis2 [protected]
 

GINT** Elem2D::iep2v_ [protected]
 

GIBuffer* Elem2D::inter_indices_ [protected]
 

GDOUBLE Elem2D::irootid_ [protected]
 

GMatrix Elem2D::JD_[GDIM] [protected]
 

GMatrix Elem2D::JDT_[GDIM] [protected]
 

GVector* Elem2D::mask_ [protected]
 

GIBuffer* Elem2D::midpnt_indices_ [protected]
 

GINT Elem2D::nEdges_ [protected]
 

GINT Elem2D::nFaces_ [protected]
 

GVector* Elem2D::nodal_multiplicity_ [protected]
 

GINT Elem2D::Np1 [protected]
 

GINT Elem2D::Np2 [protected]
 

GINT Elem2D::nVertices_ [protected]
 

GKEY Elem2D::parentid_ [protected]
 

GKEY Elem2D::rootid_ [protected]
 

Point3D* Elem2D::spMidpoints [protected]
 

GVector* Elem2D::spNodes1 [protected]
 

GVector* Elem2D::spNodes2 [protected]
 

Point3D* Elem2D::spVertices [protected]
 

GDOUBLE* Elem2D::spvVertices [protected]
 

GIBuffer* Elem2D::vert_indices_ [protected]
 

GBTBuffer* Elem2D::vert_types_ [protected]
 

GNeighborList* Elem2D::vertex_neighbor_ [protected]
 

GVector Elem2D::vtmp[G_NUM_ELEM_TMP] [protected]
 

GMemMgr* Elem2D::vtmpmgr_ [protected]
 

GNeighborList* Elem2D::vvertex_neighbor_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Dec 21 16:03:19 2005 for Geophysics & Astrophysics Spectral Element Adaptive Refinement (GASpAR) 2D Code by  doxygen 1.4.4