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

#include <Panzer_STK_CubeTetMeshFactory.hpp>

Inheritance diagram for panzer_stk_classic::CubeTetMeshFactory:
Inheritance graph
[legend]

Public Member Functions

 CubeTetMeshFactory ()
 Constructor. More...
 
virtual ~CubeTetMeshFactory ()
 Destructor. More...
 
Teuchos::RCP< STK_InterfacebuildMesh (stk_classic::ParallelMachine parallelMach) const
 Build the mesh object. More...
 
virtual Teuchos::RCP
< STK_Interface
buildUncommitedMesh (stk_classic::ParallelMachine parallelMach) const
 
virtual void completeMeshConstruction (STK_Interface &mesh, stk_classic::ParallelMachine parallelMach) const
 
void setParameterList (const Teuchos::RCP< Teuchos::ParameterList > &paramList)
 From ParameterListAcceptor. More...
 
Teuchos::RCP< const
Teuchos::ParameterList
getValidParameters () const
 From ParameterListAcceptor. More...
 
Teuchos::Tuple< std::size_t, 3 > procRankToProcTuple (std::size_t procRank) const
 what is the 3D tuple describe this processor distribution More...
 
- Public Member Functions inherited from panzer_stk_classic::STK_MeshFactory
 STK_MeshFactory ()
 
void enableRebalance (bool enable, const Teuchos::RCP< const Teuchos::ParameterList > &rebalanceList=Teuchos::null)
 
void rebalance (STK_Interface &mesh) const
 
- Public Member Functions inherited from Teuchos::ParameterListAcceptorDefaultBase
RCP< ParameterListgetNonconstParameterList ()
 
RCP< ParameterListunsetParameterList ()
 
RCP< const ParameterListgetParameterList () const
 

Protected Member Functions

void initializeWithDefaults ()
 
void buildMetaData (stk_classic::ParallelMachine parallelMach, STK_Interface &mesh) const
 
void buildElements (stk_classic::ParallelMachine parallelMach, STK_Interface &mesh) const
 
void buildBlock (stk_classic::ParallelMachine machRank, int xBlock, int yBlock, int zBlock, STK_Interface &mesh) const
 
std::pair< int, int > determineXElemSizeAndStart (int xBlock, unsigned int size, unsigned int rank) const
 
std::pair< int, int > determineYElemSizeAndStart (int yBlock, unsigned int size, unsigned int rank) const
 
std::pair< int, int > determineZElemSizeAndStart (int zBlock, unsigned int size, unsigned int rank) const
 
void addSideSets (STK_Interface &mesh) const
 
void buildTetsOnHex (const Teuchos::Tuple< int, 3 > &meshDesc, const Teuchos::Tuple< int, 3 > &element, stk_classic::mesh::Part *block, const std::vector< stk_classic::mesh::EntityId > &h_nodes, STK_Interface &mesh) const
 
const stk_classic::mesh::Relation * getRelationByID (unsigned ID, stk_classic::mesh::PairIterRelation edges) const
 
- Protected Member Functions inherited from Teuchos::ParameterListAcceptorDefaultBase
void setMyParamList (const RCP< ParameterList > &paramList)
 
RCP< ParameterListgetMyNonconstParamList ()
 
RCP< const ParameterListgetMyParamList () const
 

Protected Attributes

double x0_
 
double y0_
 
double z0_
 
double xf_
 
double yf_
 
double zf_
 
int xBlocks_
 
int yBlocks_
 
int zBlocks_
 
int nXElems_
 
int nYElems_
 
int nZElems_
 
int xProcs_
 
int yProcs_
 
int zProcs_
 
unsigned int machRank_
 
unsigned int machSize_
 
Teuchos::Tuple< std::size_t, 3 > procTuple_
 
- Protected Attributes inherited from panzer_stk_classic::STK_MeshFactory
std::vector< Teuchos::RCP
< const PeriodicBC_MatcherBase > > 
periodicBCVec_
 
bool enableRebalance_
 
Teuchos::RCP< const
Teuchos::ParameterList
rebalanceList_
 

Additional Inherited Members

- Static Public Member Functions inherited from panzer_stk_classic::STK_MeshFactory
static void parsePeriodicBCList (const Teuchos::RCP< Teuchos::ParameterList > &pl, std::vector< Teuchos::RCP< const PeriodicBC_MatcherBase > > &periodicBC)
 

Detailed Description

This builds a parallel mesh object. Note that the local IDs are ordered by going up the z, then y axis and across the X-axis (in that order). See the SquareQuad mesh factory for more information.

Definition at line 58 of file Panzer_STK_CubeTetMeshFactory.hpp.

Constructor & Destructor Documentation

panzer_stk_classic::CubeTetMeshFactory::CubeTetMeshFactory ( )

Constructor.

Definition at line 52 of file Panzer_STK_CubeTetMeshFactory.cpp.

panzer_stk_classic::CubeTetMeshFactory::~CubeTetMeshFactory ( )
virtual

Destructor.

Definition at line 58 of file Panzer_STK_CubeTetMeshFactory.cpp.

Member Function Documentation

Teuchos::RCP< STK_Interface > panzer_stk_classic::CubeTetMeshFactory::buildMesh ( stk_classic::ParallelMachine  parallelMach) const
virtual

Build the mesh object.

Implements panzer_stk_classic::STK_MeshFactory.

Definition at line 63 of file Panzer_STK_CubeTetMeshFactory.cpp.

Teuchos::RCP< STK_Interface > panzer_stk_classic::CubeTetMeshFactory::buildUncommitedMesh ( stk_classic::ParallelMachine  parallelMach) const
virtual

This builds all the meta data of the mesh. Does not call metaData->commit. Allows user to add solution fields and other pieces. The mesh can be "completed" by calling completeMeshConstruction.

Implements panzer_stk_classic::STK_MeshFactory.

Definition at line 79 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::completeMeshConstruction ( STK_Interface mesh,
stk_classic::ParallelMachine  parallelMach 
) const
virtual

Finishes building a mesh object started by buildUncommitedMesh.

Implements panzer_stk_classic::STK_MeshFactory.

Definition at line 107 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::setParameterList ( const Teuchos::RCP< Teuchos::ParameterList > &  paramList)
virtual

From ParameterListAcceptor.

Implements Teuchos::ParameterListAcceptor.

Definition at line 129 of file Panzer_STK_CubeTetMeshFactory.cpp.

Teuchos::RCP< const Teuchos::ParameterList > panzer_stk_classic::CubeTetMeshFactory::getValidParameters ( ) const
virtual

From ParameterListAcceptor.

Reimplemented from Teuchos::ParameterListAcceptor.

Definition at line 160 of file Panzer_STK_CubeTetMeshFactory.cpp.

Teuchos::Tuple< std::size_t, 3 > panzer_stk_classic::CubeTetMeshFactory::procRankToProcTuple ( std::size_t  procRank) const

what is the 3D tuple describe this processor distribution

Convert processor rank to a tuple.

Definition at line 547 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::initializeWithDefaults ( )
protected

Definition at line 195 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::buildMetaData ( stk_classic::ParallelMachine  parallelMach,
STK_Interface mesh 
) const
protected

Definition at line 204 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::buildElements ( stk_classic::ParallelMachine  parallelMach,
STK_Interface mesh 
) const
protected

Definition at line 234 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::buildBlock ( stk_classic::ParallelMachine  machRank,
int  xBlock,
int  yBlock,
int  zBlock,
STK_Interface mesh 
) const
protected

Definition at line 248 of file Panzer_STK_CubeTetMeshFactory.cpp.

std::pair< int, int > panzer_stk_classic::CubeTetMeshFactory::determineXElemSizeAndStart ( int  xBlock,
unsigned int  size,
unsigned int  rank 
) const
protected

Definition at line 375 of file Panzer_STK_CubeTetMeshFactory.cpp.

std::pair< int, int > panzer_stk_classic::CubeTetMeshFactory::determineYElemSizeAndStart ( int  yBlock,
unsigned int  size,
unsigned int  rank 
) const
protected

Definition at line 398 of file Panzer_STK_CubeTetMeshFactory.cpp.

std::pair< int, int > panzer_stk_classic::CubeTetMeshFactory::determineZElemSizeAndStart ( int  zBlock,
unsigned int  size,
unsigned int  rank 
) const
protected

Definition at line 424 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::addSideSets ( STK_Interface mesh) const
protected

Definition at line 459 of file Panzer_STK_CubeTetMeshFactory.cpp.

void panzer_stk_classic::CubeTetMeshFactory::buildTetsOnHex ( const Teuchos::Tuple< int, 3 > &  meshDesc,
const Teuchos::Tuple< int, 3 > &  element,
stk_classic::mesh::Part *  block,
const std::vector< stk_classic::mesh::EntityId > &  h_nodes,
STK_Interface mesh 
) const
protected

Definition at line 312 of file Panzer_STK_CubeTetMeshFactory.cpp.

const stk_classic::mesh::Relation * panzer_stk_classic::CubeTetMeshFactory::getRelationByID ( unsigned  ID,
stk_classic::mesh::PairIterRelation  edges 
) const
protected

Definition at line 450 of file Panzer_STK_CubeTetMeshFactory.cpp.

Member Data Documentation

double panzer_stk_classic::CubeTetMeshFactory::x0_
protected

Definition at line 103 of file Panzer_STK_CubeTetMeshFactory.hpp.

double panzer_stk_classic::CubeTetMeshFactory::y0_
protected

Definition at line 103 of file Panzer_STK_CubeTetMeshFactory.hpp.

double panzer_stk_classic::CubeTetMeshFactory::z0_
protected

Definition at line 103 of file Panzer_STK_CubeTetMeshFactory.hpp.

double panzer_stk_classic::CubeTetMeshFactory::xf_
protected

Definition at line 104 of file Panzer_STK_CubeTetMeshFactory.hpp.

double panzer_stk_classic::CubeTetMeshFactory::yf_
protected

Definition at line 104 of file Panzer_STK_CubeTetMeshFactory.hpp.

double panzer_stk_classic::CubeTetMeshFactory::zf_
protected

Definition at line 104 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::xBlocks_
protected

Definition at line 106 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::yBlocks_
protected

Definition at line 106 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::zBlocks_
protected

Definition at line 106 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::nXElems_
protected

Definition at line 108 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::nYElems_
protected

Definition at line 108 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::nZElems_
protected

Definition at line 108 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::xProcs_
mutableprotected

Definition at line 110 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::yProcs_
mutableprotected

Definition at line 110 of file Panzer_STK_CubeTetMeshFactory.hpp.

int panzer_stk_classic::CubeTetMeshFactory::zProcs_
mutableprotected

Definition at line 110 of file Panzer_STK_CubeTetMeshFactory.hpp.

unsigned int panzer_stk_classic::CubeTetMeshFactory::machRank_
mutableprotected

Definition at line 112 of file Panzer_STK_CubeTetMeshFactory.hpp.

unsigned int panzer_stk_classic::CubeTetMeshFactory::machSize_
mutableprotected

Definition at line 112 of file Panzer_STK_CubeTetMeshFactory.hpp.

Teuchos::Tuple<std::size_t,3> panzer_stk_classic::CubeTetMeshFactory::procTuple_
mutableprotected

Definition at line 114 of file Panzer_STK_CubeTetMeshFactory.hpp.


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