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_ |
Definition at line 51 of file SundancePeriodicSingleCellMesh1D.hpp.
PeriodicSingleCellMesh1D::PeriodicSingleCellMesh1D | ( | double | xMin, | |
double | xMax | |||
) |
virtual Sundance::PeriodicSingleCellMesh1D::~PeriodicSingleCellMesh1D | ( | ) | [inline, virtual] |
virtual dtor
Definition at line 58 of file SundancePeriodicSingleCellMesh1D.hpp.
virtual void Sundance::PeriodicSingleCellMesh1D::assignIntermediateCellGIDs | ( | int | cellDim | ) | [inline, virtual] |
Coordinate intermediate cell definitions across processors
Implements Sundance::MeshBase.
Definition at line 240 of file SundancePeriodicSingleCellMesh1D.hpp.
CellType PeriodicSingleCellMesh1D::cellType | ( | int | cellDim | ) | const [virtual] |
Get the type of the given cell
Implements Sundance::MeshBase.
Definition at line 256 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,
Reimplemented from Sundance::MeshBase.
Definition at line 203 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
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 172 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 278 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
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 121 of file SundancePeriodicSingleCellMesh1D.cpp.
void PeriodicSingleCellMesh1D::getCofacets | ( | int | cellDim, | |
int | cellLID, | |||
int | cofacetDim, | |||
Array< int > & | cofacetLIDs | |||
) | const [virtual] |
Find the cofacets of the given cell
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 231 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 186 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
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 88 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 268 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 293 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.
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 225 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 246 of file SundancePeriodicSingleCellMesh1D.cpp.
virtual bool Sundance::PeriodicSingleCellMesh1D::hasIntermediateGIDs | ( | int | dim | ) | const [inline, virtual] |
int PeriodicSingleCellMesh1D::label | ( | int | cellDim, | |
int | cellLID | |||
) | const [virtual] |
Get the label of the given cell
Implements Sundance::MeshBase.
Definition at line 263 of file SundancePeriodicSingleCellMesh1D.cpp.
References labels_.
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 241 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 251 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
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 216 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 75 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 82 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 60 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 162 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 210 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 115 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 131 of file SundancePeriodicSingleCellMesh1D.cpp.
void PeriodicSingleCellMesh1D::setLabel | ( | int | cellDim, | |
int | cellLID, | |||
int | label | |||
) | [virtual] |
Set the label of the given cell
Implements Sundance::MeshBase.
Definition at line 287 of file SundancePeriodicSingleCellMesh1D.cpp.
References labels_.
Array<int> Sundance::PeriodicSingleCellMesh1D::labels_ [private] |
Definition at line 252 of file SundancePeriodicSingleCellMesh1D.hpp.
Referenced by getAllLabelsForDimension(), getLabels(), getLIDsForLabel(), label(), PeriodicSingleCellMesh1D(), and setLabel().
int Sundance::PeriodicSingleCellMesh1D::vert_ [private] |
Definition at line 251 of file SundancePeriodicSingleCellMesh1D.hpp.
Referenced by elemZeroFacetView(), and facetLID().
double Sundance::PeriodicSingleCellMesh1D::xMax_ [private] |
Definition at line 250 of file SundancePeriodicSingleCellMesh1D.hpp.
Referenced by getCellDiameters(), getJacobians(), and pushForward().
double Sundance::PeriodicSingleCellMesh1D::xMin_ [private] |
Definition at line 249 of file SundancePeriodicSingleCellMesh1D.hpp.
Referenced by getCellDiameters(), getJacobians(), nodePosition(), nodePositionView(), and pushForward().