Public Member Functions | Private Attributes
Sundance::PeriodicSingleCellMesh1D Class Reference
Inheritance diagram for Sundance::PeriodicSingleCellMesh1D:
Sundance::MeshBase Sundance::ObjectWithClassVerbosity< MeshBase > Sundance::ObjectWithInstanceID< MeshBase > Playa::ObjectWithVerbosity

List of all members.

Public Member Functions

 PeriodicSingleCellMesh1D (double xMin, double xMax)
virtual ~PeriodicSingleCellMesh1D ()
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

double xMin_
double xMax_
int vert_
Array< int > labels_

Detailed Description

Periodic one-element mesh in 1D

Definition at line 62 of file SundancePeriodicSingleCellMesh1D.hpp.


Constructor & Destructor Documentation

PeriodicSingleCellMesh1D::PeriodicSingleCellMesh1D ( double  xMin,
double  xMax 
)

Definition at line 60 of file SundancePeriodicSingleCellMesh1D.cpp.

References labels_.

virtual dtor

Definition at line 69 of file SundancePeriodicSingleCellMesh1D.hpp.


Member Function Documentation

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

Coordinate intermediate cell definitions across processors

Implements Sundance::MeshBase.

Definition at line 251 of file SundancePeriodicSingleCellMesh1D.hpp.

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

Get the type of the given cell

Implements Sundance::MeshBase.

Definition at line 267 of file SundancePeriodicSingleCellMesh1D.cpp.

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

const int * PeriodicSingleCellMesh1D::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 214 of file SundancePeriodicSingleCellMesh1D.cpp.

References vert_.

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

Return the local ID of a facet cell

Parameters:
cellDimdimension of the cell whose facets are being obtained
cellLIDlocal index of the cell whose facets are being obtained
facetDimdimension of the desired facet
facetIndexindex into the list of the cell's facets
facetOrientationorientation of the facet as seen from the given cell (returned via reference)

Implements Sundance::MeshBase.

Definition at line 183 of file SundancePeriodicSingleCellMesh1D.cpp.

References vert_.

Referenced by getFacetLIDs().

Set< int > PeriodicSingleCellMesh1D::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 289 of file SundancePeriodicSingleCellMesh1D.cpp.

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

void PeriodicSingleCellMesh1D::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:
cellDimdimension of the cells whose diameters are to be computed
cellLIDlocal indices of the cells for which diameters are to be computed
diametersreference to the array of cell diameters

Reimplemented from Sundance::MeshBase.

Definition at line 132 of file SundancePeriodicSingleCellMesh1D.cpp.

References xMax_, and xMin_.

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

Find the cofacets of the given cell

Parameters:
cellDimdimension of the cell whose cofacets are being obtained
cellLIDlocal index of the cell whose cofacets are being obtained
cofacetDimdimension of the cofacets to get
cofacetLIDsLIDs of the cofacet

Implements Sundance::MeshBase.

Definition at line 242 of file SundancePeriodicSingleCellMesh1D.cpp.

void PeriodicSingleCellMesh1D::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 197 of file SundancePeriodicSingleCellMesh1D.cpp.

References facetLID().

void PeriodicSingleCellMesh1D::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:
cellDimdimension of the cells whose Jacobians are to be computed
cellLIDlocal indices of the cells for which Jacobians are to be computed
jBatchreference to the resulting Jacobian batch

Reimplemented from Sundance::MeshBase.

Definition at line 99 of file SundancePeriodicSingleCellMesh1D.cpp.

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

void PeriodicSingleCellMesh1D::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 279 of file SundancePeriodicSingleCellMesh1D.cpp.

References labels_.

void PeriodicSingleCellMesh1D::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 304 of file SundancePeriodicSingleCellMesh1D.cpp.

References labels_.

void PeriodicSingleCellMesh1D::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 236 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Determine whether a given cell GID exists on this processor

Implements Sundance::MeshBase.

Definition at line 257 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Implements Sundance::MeshBase.

Definition at line 254 of file SundancePeriodicSingleCellMesh1D.hpp.

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

Get the label of the given cell

Implements Sundance::MeshBase.

Definition at line 274 of file SundancePeriodicSingleCellMesh1D.cpp.

References labels_.

Referenced by setLabel().

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

Find the local ID of a cell given its global index

Implements Sundance::MeshBase.

Definition at line 252 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Find the global ID of a cell given its local index

Implements Sundance::MeshBase.

Definition at line 262 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Return the local ID of a maximal cofacet cell

Parameters:
cellDimdimension of the cell whose cofacets are being obtained
cellLIDlocal index of the cell whose cofacets are being obtained
cofacetIndexwhich maximal cofacet to get
facetIndexindex of the cell cellLID into the list of the maximal cell's facets

Implements Sundance::MeshBase.

Definition at line 227 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Return the position of the i-th node

Implements Sundance::MeshBase.

Definition at line 86 of file SundancePeriodicSingleCellMesh1D.cpp.

References xMin_.

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

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

Implements Sundance::MeshBase.

Definition at line 93 of file SundancePeriodicSingleCellMesh1D.cpp.

References xMin_.

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

Get the number of cells having dimension dim

Implements Sundance::MeshBase.

Definition at line 71 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Return the number of facets of the given cell

Implements Sundance::MeshBase.

Definition at line 173 of file SundancePeriodicSingleCellMesh1D.cpp.

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

Return the number of maximal cofacets of the given cell

Implements Sundance::MeshBase.

Definition at line 221 of file SundancePeriodicSingleCellMesh1D.cpp.

virtual int Sundance::PeriodicSingleCellMesh1D::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 126 of file SundancePeriodicSingleCellMesh1D.hpp.

void PeriodicSingleCellMesh1D::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 142 of file SundancePeriodicSingleCellMesh1D.cpp.

References xMax_, and xMin_.

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

Set the label of the given cell

Implements Sundance::MeshBase.

Definition at line 298 of file SundancePeriodicSingleCellMesh1D.cpp.

References label(), and labels_.


Member Data Documentation

Definition at line 262 of file SundancePeriodicSingleCellMesh1D.hpp.

Referenced by elemZeroFacetView(), and facetLID().

Site Contact