Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | List of all members
panzer::ElemFieldPattern Class Reference

#include <Panzer_ElemFieldPattern.hpp>

Inheritance diagram for panzer::ElemFieldPattern:
Inheritance graph
[legend]

Public Member Functions

 ElemFieldPattern ()
 
 ElemFieldPattern (const shards::CellTopology &ct)
 
virtual ~ElemFieldPattern ()
 Do nothing destructor. More...
 
void setCellTopology (const shards::CellTopology &ct)
 Set the cell topology for this field pattern. More...
 
virtual int getSubcellCount (int dim) const
 
virtual const std::vector< int > & getSubcellIndices (int dim, int cellIndex) const
 
virtual void getSubcellClosureIndices (int dim, int cellIndex, std::vector< int > &indices) const
 
virtual int getDimension () const
 
virtual shards::CellTopology getCellTopology () const
 
- Public Member Functions inherited from panzer::FieldPattern
virtual ~FieldPattern ()=0
 Do nothing destructor. More...
 
virtual int numberIds () const
 
virtual bool sameGeometry (const FieldPattern &fp) const
 
virtual bool consistentSubcells () const
 
virtual void print (std::ostream &os) const
 
virtual bool equals (const FieldPattern &fp) const
 

Public Attributes

shards::CellTopology cellTopo_
 
std::vector< std::vector< int > > ElemIndices_
 
std::vector< int > empty_
 

Detailed Description

A simple field pattern that is useful for guranteeing you can compute orientations.

Definition at line 60 of file Panzer_ElemFieldPattern.hpp.

Constructor & Destructor Documentation

panzer::ElemFieldPattern::ElemFieldPattern ( )
panzer::ElemFieldPattern::ElemFieldPattern ( const shards::CellTopology &  ct)

Definition at line 50 of file Panzer_ElemFieldPattern.cpp.

virtual panzer::ElemFieldPattern::~ElemFieldPattern ( )
inlinevirtual

Do nothing destructor.

Definition at line 68 of file Panzer_ElemFieldPattern.hpp.

Member Function Documentation

void panzer::ElemFieldPattern::setCellTopology ( const shards::CellTopology &  ct)

Set the cell topology for this field pattern.

Definition at line 55 of file Panzer_ElemFieldPattern.cpp.

int panzer::ElemFieldPattern::getSubcellCount ( int  dim) const
virtual

How many sub cells of a particular dimension are there? For instance a "hex" element as six sub cells of dimension 2 (Elem type),12 sub cells of dimension one (edge type), and 8 sub cell of dimension 0.

Parameters
[in]dimDimension of the sub cell of interest
Returns
Number of sub cells of dimension dim

Implements panzer::FieldPattern.

Definition at line 66 of file Panzer_ElemFieldPattern.cpp.

const std::vector< int > & panzer::ElemFieldPattern::getSubcellIndices ( int  dim,
int  cellIndex 
) const
virtual

Get the local indices associated with a particular sub cell. The sub cell is specified through its dimension and cell index. A vector is returned that gives the indices.

Parameters
[in]dimDimension of the sub cell of interest
[in]cellIndexIndex of the sub cell (must be lest than getSubcellCount(dim) and greater than or equal to 0.
Returns
A vector of indices for the specified sub cell.

Implements panzer::FieldPattern.

Definition at line 72 of file Panzer_ElemFieldPattern.cpp.

void panzer::ElemFieldPattern::getSubcellClosureIndices ( int  dim,
int  cellIndex,
std::vector< int > &  indices 
) const
virtual

Get the set of indices that are on the sub cell. The ``closure'' means that this set includes indices of all the child sub cells as well.

Parameters
[in]dimDimension of the sub cell of interest
[in]cellIndexIndex of the sub cell (must be lest than getSubcellCount(dim) and greater than or equal to 0.
[out]indicesVector, to be overwritten, containing the closure indices on return.

Implements panzer::FieldPattern.

Definition at line 81 of file Panzer_ElemFieldPattern.cpp.

int panzer::ElemFieldPattern::getDimension ( ) const
virtual

What is the dimension of this pattern. For instance a "quad" element is two dimensional. This is a purely geometric quantity.

Implements panzer::FieldPattern.

Definition at line 87 of file Panzer_ElemFieldPattern.cpp.

virtual shards::CellTopology panzer::ElemFieldPattern::getCellTopology ( ) const
inlinevirtual

Get the cell topology associated with this field pattern.

Implements panzer::FieldPattern.

Definition at line 117 of file Panzer_ElemFieldPattern.hpp.

Member Data Documentation

shards::CellTopology panzer::ElemFieldPattern::cellTopo_

Definition at line 121 of file Panzer_ElemFieldPattern.hpp.

std::vector<std::vector<int> > panzer::ElemFieldPattern::ElemIndices_

Definition at line 122 of file Panzer_ElemFieldPattern.hpp.

std::vector<int> panzer::ElemFieldPattern::empty_

Definition at line 123 of file Panzer_ElemFieldPattern.hpp.


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