PPL Logo

TetMesh Class Reference

A 3d tetrahedral mesh. More...

#include <tetmesh.h>

Collaboration diagram for TetMesh:

Collaboration graph
[legend]

Public Types

enum  { nodePer = 4 }

Public Member Functions

 TetMesh ()
 Create a new empty mesh.
 TetMesh (int nt, int np)
 Create a new mesh with this many tets and points.
virtual ~TetMesh ()
virtual void allocate (int nt, int np)
 Set the size of this mesh to be nt tets and np points.
int getTets (void) const
 Return the number of tets in the mesh.
intgetTet (int t)
 Return the t'th tetrahedra's 0-based node indices.
const intgetTet (int t) const
intgetTetConn (void)
const intgetTetConn (void) const
double getTetVolume (int t) const
void flipTet (int t)
double getTetOrientation (int t)
int getPoints (void) const
 Return the number of points (vertices, nodes) in the mesh.
CkVector3dgetPoint (int p)
 Return the p'th vertex (0..getPoints()-1).
const CkVector3dgetPoint (int p) const
CkVector3dgetPointArray (void)
const CkVector3dgetPointArray (void) const
void cleanup ()
int addTet (const conn_t &c)
 Simple mesh modification.
int addPoint (const CkVector3d &pt)
void translateMesh (const CkVector3d &pt)
void write_real_tecplot (char *fname)

Data Fields

int nonGhostTet
int nonGhostPt

Private Member Functions

void ct (int t) const
 Check these indices for in-range.
void cp (int p) const
void ct (int t) const
void cp (int p) const

Private Attributes

std::vector< conn_ttet
std::vector< CkVector3dpts

Data Structures

class  conn_t

Detailed Description

A 3d tetrahedral mesh.

Contains the connectivity only--no data.

Definition at line 18 of file tetmesh.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
nodePer 

Definition at line 20 of file tetmesh.h.


Constructor & Destructor Documentation

TetMesh::TetMesh (  ) 

Create a new empty mesh.

Definition at line 26 of file tetmesh.C.

TetMesh::TetMesh ( int  nt,
int  np 
)

Create a new mesh with this many tets and points.

Definition at line 29 of file tetmesh.C.

References allocate().

Here is the call graph for this function:

TetMesh::~TetMesh (  )  [virtual]

Definition at line 32 of file tetmesh.C.


Member Function Documentation

void TetMesh::allocate ( int  nt,
int  np 
) [virtual]

Set the size of this mesh to be nt tets and np points.

Throws away the previous mesh.

Throws away the previous mesh.

Definition at line 37 of file tetmesh.C.

References pts, and tet.

Referenced by readFEM(), readGhostFEM(), readNoboite(), and TetMesh().

Here is the caller graph for this function:

int TetMesh::getTets ( void   )  const [inline]

Return the number of tets in the mesh.

Definition at line 42 of file tetmesh.h.

References tet.

Referenced by averageEdgeLength(), main(), parallelTransfer_c::parallelTransfer_c(), print(), printSize(), readNoboite(), parallelTransfer_c::transfer(), transferCells(), writeFEM(), and writeNoboite().

Here is the caller graph for this function:

int* TetMesh::getTet ( int  t  )  [inline]

Return the t'th tetrahedra's 0-based node indices.

Definition at line 44 of file tetmesh.h.

References ct(), and tet.

Referenced by averageEdgeLength(), getBox(), getTetConn(), getTetVolume(), print(), printTet(), readGhostFEM(), TetMeshElement::TetMeshElement(), parallelTransfer_c::transferNodeValues(), and writeNoboite().

Here is the call graph for this function:

Here is the caller graph for this function:

const int* TetMesh::getTet ( int  t  )  const [inline]

Definition at line 45 of file tetmesh.h.

References ct(), and tet.

Here is the call graph for this function:

int* TetMesh::getTetConn ( void   )  [inline]

Definition at line 46 of file tetmesh.h.

References getTet().

Referenced by readFEM(), readGhostFEM(), readNoboite(), and writeFEM().

Here is the call graph for this function:

Here is the caller graph for this function:

const int* TetMesh::getTetConn ( void   )  const [inline]

Definition at line 47 of file tetmesh.h.

References getTet().

Here is the call graph for this function:

double TetMesh::getTetVolume ( int  t  )  const

Definition at line 61 of file tetmesh.C.

References getPoint(), getTet(), and tetVolume().

Referenced by main(), parallelTransfer_c::transfer(), and transferCells().

Here is the call graph for this function:

Here is the caller graph for this function:

void TetMesh::flipTet ( int  t  )  [inline]

Definition at line 49 of file tetmesh.h.

References tet.

double TetMesh::getTetOrientation ( int  t  )  [inline]

Definition at line 54 of file tetmesh.h.

References pts, and tet.

int TetMesh::getPoints ( void   )  const [inline]

Return the number of points (vertices, nodes) in the mesh.

Definition at line 70 of file tetmesh.h.

References pts.

Referenced by print(), printSize(), readNoboite(), writeFEM(), and writeNoboite().

Here is the caller graph for this function:

CkVector3d& TetMesh::getPoint ( int  p  )  [inline]

Return the p'th vertex (0..getPoints()-1).

Definition at line 72 of file tetmesh.h.

References cp(), and pts.

Referenced by averageEdgeLength(), getBox(), TetMeshElement::getNodeLocation(), getTetVolume(), print(), printSize(), printTet(), readGhostFEM(), parallelTransfer_c::transferNodeValues(), and writeNoboite().

Here is the call graph for this function:

Here is the caller graph for this function:

const CkVector3d& TetMesh::getPoint ( int  p  )  const [inline]

Definition at line 73 of file tetmesh.h.

References cp(), and pts.

Here is the call graph for this function:

CkVector3d * TetMesh::getPointArray ( void   ) 

Definition at line 43 of file tetmesh.C.

References pts.

Referenced by readFEM(), readGhostFEM(), readNoboite(), and writeFEM().

Here is the caller graph for this function:

const CkVector3d * TetMesh::getPointArray ( void   )  const

Definition at line 46 of file tetmesh.C.

References pts.

void TetMesh::cleanup (  )  [inline]

Definition at line 77 of file tetmesh.h.

References pts, stats::swap(), and tet.

Here is the call graph for this function:

int TetMesh::addTet ( const conn_t c  )  [inline]

Simple mesh modification.

The new number of the added object is returned.

Definition at line 86 of file tetmesh.h.

References tet.

int TetMesh::addPoint ( const CkVector3d pt  )  [inline]

Definition at line 87 of file tetmesh.h.

References pts.

void TetMesh::translateMesh ( const CkVector3d pt  )  [inline]

Definition at line 89 of file tetmesh.h.

References pts.

void TetMesh::write_real_tecplot ( char *  fname  )  [inline]

Definition at line 98 of file tetmesh.h.

References file, n, nonGhostPt, nonGhostTet, pts, and tet.

void TetMesh::ct ( int  t  )  const [private]

Check these indices for in-range.

A very basic tetrahedral mesh.

Orion Sky Lawlor, olawlor@acm.org, 3/11/2003

Definition at line 13 of file tetmesh.C.

References tet.

Referenced by getTet().

Here is the caller graph for this function:

void TetMesh::cp ( int  p  )  const [private]

Definition at line 17 of file tetmesh.C.

References pts.

Referenced by getPoint().

Here is the caller graph for this function:

void TetMesh::ct ( int  t  )  const [inline, private]

Definition at line 133 of file tetmesh.h.

void TetMesh::cp ( int  p  )  const [inline, private]

Definition at line 134 of file tetmesh.h.


Field Documentation

Definition at line 97 of file tetmesh.h.

Referenced by readGhostFEM(), and write_real_tecplot().

Definition at line 97 of file tetmesh.h.

Referenced by readGhostFEM(), and write_real_tecplot().

std::vector<conn_t> TetMesh::tet [private]

std::vector<CkVector3d> TetMesh::pts [private]


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

Generated on Mon Sep 21 08:30:40 2020 for Charm++ by  doxygen 1.5.5