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< Point > | x_ |
Array< Array< int > > | verts_ |
Array< Array< int > > | labels_ |
Definition at line 51 of file SundancePeriodicMesh1D.hpp.
PeriodicMesh1D::PeriodicMesh1D | ( | double | xMin, | |
double | xMax, | |||
int | numElems | |||
) |
virtual Sundance::PeriodicMesh1D::~PeriodicMesh1D | ( | ) | [inline, virtual] |
virtual dtor
Definition at line 58 of file SundancePeriodicMesh1D.hpp.
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,
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
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
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
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
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.
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] |
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
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_.
Array<Array<int> > Sundance::PeriodicMesh1D::labels_ [private] |
Definition at line 254 of file SundancePeriodicMesh1D.hpp.
Referenced by getAllLabelsForDimension(), getLabels(), getLIDsForLabel(), label(), PeriodicMesh1D(), and setLabel().
int Sundance::PeriodicMesh1D::numElems_ [private] |
Definition at line 249 of file SundancePeriodicMesh1D.hpp.
Referenced by facetLID(), getCofacets(), maxCofacetLID(), numCells(), numFacets(), and PeriodicMesh1D().
Array<Array<int> > Sundance::PeriodicMesh1D::verts_ [private] |
Definition at line 253 of file SundancePeriodicMesh1D.hpp.
Referenced by elemZeroFacetView(), facetLID(), and PeriodicMesh1D().
Array<Point> Sundance::PeriodicMesh1D::x_ [private] |
Definition at line 252 of file SundancePeriodicMesh1D.hpp.
Referenced by getCellDiameters(), getJacobians(), nodePosition(), nodePositionView(), PeriodicMesh1D(), and pushForward().
double Sundance::PeriodicMesh1D::xMax_ [private] |
double Sundance::PeriodicMesh1D::xMin_ [private] |