Sundance::PeriodicMesh1D Class Reference

Inheritance diagram for Sundance::PeriodicMesh1D:

Sundance::MeshBase Sundance::ObjectWithClassVerbosity< MeshBase > Sundance::ObjectWithInstanceID< MeshBase > Playa::ObjectWithVerbosity

List of all members.

Public Member Functions

 PeriodicMesh1D (double xMin, double xMax, int numElems)
virtual ~PeriodicMesh1D ()
int numCells (int dim) const
Point nodePosition (int i) const
const double * nodePositionView (int i) const
virtual void getJacobians (int cellDim, const Array< int > &cellLID, CellJacobianBatch &jBatch) const
virtual void getCellDiameters (int cellDim, const Array< int > &cellLID, Array< double > &cellDiameters) const
virtual void pushForward (int cellDim, const Array< int > &cellLID, const Array< Point > &refQuadPts, Array< Point > &physQuadPts) const
virtual int ownerProcID (int cellDim, int cellLID) const
virtual int numFacets (int cellDim, int cellLID, int facetDim) const
virtual int facetLID (int cellDim, int cellLID, int facetDim, int facetIndex, int &facetOrientation) const
virtual void getFacetLIDs (int cellDim, const Array< int > &cellLID, int facetDim, Array< int > &facetLID, Array< int > &facetSign) const
const int * elemZeroFacetView (int cellLID) const
virtual int numMaxCofacets (int cellDim, int cellLID) const
virtual int maxCofacetLID (int cellDim, int cellLID, int cofacetIndex, int &facetIndex) const
virtual void getMaxCofacetLIDs (const Array< int > &cellLIDs, MaximalCofacetBatch &cofacets) const
void getCofacets (int cellDim, int cellLID, int cofacetDim, Array< int > &cofacetLIDs) const
virtual int mapGIDToLID (int cellDim, int globalIndex) const
virtual bool hasGID (int cellDim, int globalIndex) const
virtual int mapLIDToGID (int cellDim, int localIndex) const
virtual CellType cellType (int cellDim) const
virtual int label (int cellDim, int cellLID) const
virtual void getLabels (int cellDim, const Array< int > &cellLID, Array< int > &labels) const
virtual Set< int > getAllLabelsForDimension (int cellDim) const
virtual void getLIDsForLabel (int cellDim, int label, Array< int > &cellLIDs) const
virtual void setLabel (int cellDim, int cellLID, int label)
virtual void assignIntermediateCellGIDs (int cellDim)
virtual bool hasIntermediateGIDs (int dim) const

Private Attributes

int numElems_
double xMin_
double xMax_
Array< Pointx_
Array< Array< int > > verts_
Array< Array< int > > labels_


Detailed Description

Periodic mesh in 1D

Definition at line 51 of file SundancePeriodicMesh1D.hpp.


Constructor & Destructor Documentation

PeriodicMesh1D::PeriodicMesh1D ( double  xMin,
double  xMax,
int  numElems 
)

Definition at line 49 of file SundancePeriodicMesh1D.cpp.

References labels_, numElems_, verts_, x_, xMax_, and xMin_.

virtual Sundance::PeriodicMesh1D::~PeriodicMesh1D (  )  [inline, virtual]

virtual dtor

Definition at line 58 of file SundancePeriodicMesh1D.hpp.


Member Function Documentation

virtual void Sundance::PeriodicMesh1D::assignIntermediateCellGIDs ( int  cellDim  )  [inline, virtual]

Coordinate intermediate cell definitions across processors

Implements Sundance::MeshBase.

Definition at line 240 of file SundancePeriodicMesh1D.hpp.

CellType PeriodicMesh1D::cellType ( int  cellDim  )  const [virtual]

Get the type of the given cell

Implements Sundance::MeshBase.

Definition at line 285 of file SundancePeriodicMesh1D.cpp.

References Sundance::LineCell, Sundance::NullCell, and Sundance::PointCell.

const int * PeriodicMesh1D::elemZeroFacetView ( int  cellLID  )  const [virtual]

Return a view of an element's zero-dimensional facets,

Returns:
an array of integers with the indexes of the points which for it

Reimplemented from Sundance::MeshBase.

Definition at line 232 of file SundancePeriodicMesh1D.cpp.

References verts_.

int PeriodicMesh1D::facetLID ( int  cellDim,
int  cellLID,
int  facetDim,
int  facetIndex,
int &  facetOrientation 
) const [virtual]

Return the local ID of a facet cell

Parameters:
cellDim dimension of the cell whose facets are being obtained
cellLID local index of the cell whose facets are being obtained
facetDim dimension of the desired facet
facetIndex index into the list of the cell's facets
facetOrientation orientation of the facet as seen from the given cell (returned via reference)

Implements Sundance::MeshBase.

Definition at line 201 of file SundancePeriodicMesh1D.cpp.

References numElems_, and verts_.

Referenced by getFacetLIDs().

Set< int > PeriodicMesh1D::getAllLabelsForDimension ( int  cellDim  )  const [virtual]

Get the list of all labels defined for cells of the given dimension

Reimplemented from Sundance::MeshBase.

Definition at line 308 of file SundancePeriodicMesh1D.cpp.

References labels_, and Sundance::Set< Key, Compare >::put().

void PeriodicMesh1D::getCellDiameters ( int  cellDim,
const Array< int > &  cellLID,
Array< double > &  cellDiameters 
) const [virtual]

Compute the diameters of a batch of cells, result via reference argument

Parameters:
cellDim dimension of the cells whose diameters are to be computed
cellLID local indices of the cells for which diameters are to be computed
diameters reference to the array of cell diameters

Reimplemented from Sundance::MeshBase.

Definition at line 136 of file SundancePeriodicMesh1D.cpp.

References x_.

void PeriodicMesh1D::getCofacets ( int  cellDim,
int  cellLID,
int  cofacetDim,
Array< int > &  cofacetLIDs 
) const [virtual]

Find the cofacets of the given cell

Parameters:
cellDim dimension of the cell whose cofacets are being obtained
cellLID local index of the cell whose cofacets are being obtained
cofacetDim dimension of the cofacets to get
cofacetLIDs LIDs of the cofacet

Implements Sundance::MeshBase.

Definition at line 259 of file SundancePeriodicMesh1D.cpp.

References numElems_.

void PeriodicMesh1D::getFacetLIDs ( int  cellDim,
const Array< int > &  cellLID,
int  facetDim,
Array< int > &  facetLID,
Array< int > &  facetSign 
) const [virtual]

Return by reference argument an array containing&(elemVerts_.value(cellLID, 0)) the LIDs of the facetDim-dimensional facets of the given batch of cells

Implements Sundance::MeshBase.

Definition at line 215 of file SundancePeriodicMesh1D.cpp.

References facetLID().

void PeriodicMesh1D::getJacobians ( int  cellDim,
const Array< int > &  cellLID,
CellJacobianBatch jBatch 
) const [virtual]

Compute the jacobians of a batch of cells, returning the result via reference argument

Parameters:
cellDim dimension of the cells whose Jacobians are to be computed
cellLID local indices of the cells for which Jacobians are to be computed
jBatch reference to the resulting Jacobian batch

Reimplemented from Sundance::MeshBase.

Definition at line 102 of file SundancePeriodicMesh1D.cpp.

References Sundance::CellJacobianBatch::detJ(), Sundance::CellJacobianBatch::jVals(), Sundance::CellJacobianBatch::resize(), Sundance::MeshBase::spatialDim(), and x_.

void PeriodicMesh1D::getLabels ( int  cellDim,
const Array< int > &  cellLID,
Array< int > &  labels 
) const [virtual]

Get the labels for a batch of cells

Reimplemented from Sundance::MeshBase.

Definition at line 297 of file SundancePeriodicMesh1D.cpp.

References labels_.

void PeriodicMesh1D::getLIDsForLabel ( int  cellDim,
int  label,
Array< int > &  cellLIDs 
) const [virtual]

Get the cells associated with a specified label. The array cellLID will be filled with those cells of dimension cellDim having the given label.

Reimplemented from Sundance::MeshBase.

Definition at line 327 of file SundancePeriodicMesh1D.cpp.

References labels_.

void PeriodicMesh1D::getMaxCofacetLIDs ( const Array< int > &  cellLIDs,
MaximalCofacetBatch cofacets 
) const [virtual]

Get the LIDs of the maximal cofacets for a batch of codimension-one cells.

Parameters:
cellLIDs [in] array of LIDs of the cells whose cofacets are being obtained
cofacets [out] the batch of cofacets

Reimplemented from Sundance::MeshBase.

Definition at line 253 of file SundancePeriodicMesh1D.cpp.

bool PeriodicMesh1D::hasGID ( int  cellDim,
int  globalIndex 
) const [virtual]

Determine whether a given cell GID exists on this processor

Implements Sundance::MeshBase.

Definition at line 275 of file SundancePeriodicMesh1D.cpp.

virtual bool Sundance::PeriodicMesh1D::hasIntermediateGIDs ( int  dim  )  const [inline, virtual]

Implements Sundance::MeshBase.

Definition at line 243 of file SundancePeriodicMesh1D.hpp.

int PeriodicMesh1D::label ( int  cellDim,
int  cellLID 
) const [virtual]

Get the label of the given cell

Implements Sundance::MeshBase.

Definition at line 292 of file SundancePeriodicMesh1D.cpp.

References labels_.

int PeriodicMesh1D::mapGIDToLID ( int  cellDim,
int  globalIndex 
) const [virtual]

Find the local ID of a cell given its global index

Implements Sundance::MeshBase.

Definition at line 270 of file SundancePeriodicMesh1D.cpp.

int PeriodicMesh1D::mapLIDToGID ( int  cellDim,
int  localIndex 
) const [virtual]

Find the global ID of a cell given its local index

Implements Sundance::MeshBase.

Definition at line 280 of file SundancePeriodicMesh1D.cpp.

int PeriodicMesh1D::maxCofacetLID ( int  cellDim,
int  cellLID,
int  cofacetIndex,
int &  facetIndex 
) const [virtual]

Return the local ID of a maximal cofacet cell

Parameters:
cellDim dimension of the cell whose cofacets are being obtained
cellLID local index of the cell whose cofacets are being obtained
cofacetIndex which maximal cofacet to get
facetIndex index of the cell cellLID into the list of the maximal cell's facets

Implements Sundance::MeshBase.

Definition at line 244 of file SundancePeriodicMesh1D.cpp.

References numElems_.

Point PeriodicMesh1D::nodePosition ( int  i  )  const [virtual]

Return the position of the i-th node

Implements Sundance::MeshBase.

Definition at line 91 of file SundancePeriodicMesh1D.cpp.

References x_.

const double * PeriodicMesh1D::nodePositionView ( int  i  )  const [virtual]

Return a view of the i-th node's position

Implements Sundance::MeshBase.

Definition at line 97 of file SundancePeriodicMesh1D.cpp.

References x_.

int PeriodicMesh1D::numCells ( int  dim  )  const [virtual]

Get the number of cells having dimension dim

Implements Sundance::MeshBase.

Definition at line 76 of file SundancePeriodicMesh1D.cpp.

References numElems_.

int PeriodicMesh1D::numFacets ( int  cellDim,
int  cellLID,
int  facetDim 
) const [virtual]

Return the number of facets of the given cell

Implements Sundance::MeshBase.

Definition at line 191 of file SundancePeriodicMesh1D.cpp.

References numElems_.

int PeriodicMesh1D::numMaxCofacets ( int  cellDim,
int  cellLID 
) const [virtual]

Return the number of maximal cofacets of the given cell

Implements Sundance::MeshBase.

Definition at line 238 of file SundancePeriodicMesh1D.cpp.

virtual int Sundance::PeriodicMesh1D::ownerProcID ( int  cellDim,
int  cellLID 
) const [inline, virtual]

Return the rank of the processor that owns the given cell

Implements Sundance::MeshBase.

Definition at line 115 of file SundancePeriodicMesh1D.hpp.

void PeriodicMesh1D::pushForward ( int  cellDim,
const Array< int > &  cellLID,
const Array< Point > &  refQuadPts,
Array< Point > &  physQuadPts 
) const [virtual]

Map reference quadrature points to physical points on the given cells.

Reimplemented from Sundance::MeshBase.

Definition at line 161 of file SundancePeriodicMesh1D.cpp.

References x_.

void PeriodicMesh1D::setLabel ( int  cellDim,
int  cellLID,
int  label 
) [virtual]

Set the label of the given cell

Implements Sundance::MeshBase.

Definition at line 321 of file SundancePeriodicMesh1D.cpp.

References labels_.


Member Data Documentation

Array<Array<int> > Sundance::PeriodicMesh1D::labels_ [private]

Array<Array<int> > Sundance::PeriodicMesh1D::verts_ [private]

Definition at line 253 of file SundancePeriodicMesh1D.hpp.

Referenced by elemZeroFacetView(), facetLID(), and PeriodicMesh1D().

Definition at line 251 of file SundancePeriodicMesh1D.hpp.

Referenced by PeriodicMesh1D().

Definition at line 250 of file SundancePeriodicMesh1D.hpp.

Referenced by PeriodicMesh1D().

Site Contact