Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
panzer::BlockedDOFManagerFactory< LO, GO > Class Template Reference

#include <Panzer_BlockedDOFManagerFactory_decl.hpp>

Inheritance diagram for panzer::BlockedDOFManagerFactory< LO, GO >:
Inheritance graph
[legend]

Public Member Functions

 BlockedDOFManagerFactory ()
 
virtual ~BlockedDOFManagerFactory ()
 
virtual Teuchos::RCP
< panzer::UniqueGlobalIndexer
< LO, std::pair< int, GO > > > 
buildUniqueGlobalIndexer (const Teuchos::RCP< const Teuchos::OpaqueWrapper< MPI_Comm > > &mpiComm, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const Teuchos::RCP< ConnManager< LO, GO > > &connMngr, const std::string &fieldOrder="") const
 
void setUseDOFManagerFEI (bool flag)
 
bool getUseDOFManagerFEI () const
 
void setUseTieBreak (bool flag)
 
bool getUseTieBreak ()
 
- Public Member Functions inherited from panzer::UniqueGlobalIndexerFactory< LO, std::pair< int, GO >, LO, GO >
virtual ~UniqueGlobalIndexerFactory ()
 

Static Public Member Functions

static bool requiresBlocking (const std::string &fieldorder)
 
static void buildBlocking (const std::string &fieldorder, std::vector< std::vector< std::string > > &blocks)
 

Private Attributes

bool useDOFManagerFEI_
 
bool useTieBreak_
 

Detailed Description

template<typename LO, typename GO>
class panzer::BlockedDOFManagerFactory< LO, GO >

Definition at line 51 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

Constructor & Destructor Documentation

template<typename LO, typename GO>
panzer::BlockedDOFManagerFactory< LO, GO >::BlockedDOFManagerFactory ( )
inline

Definition at line 53 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

template<typename LO, typename GO>
virtual panzer::BlockedDOFManagerFactory< LO, GO >::~BlockedDOFManagerFactory ( )
inlinevirtual

Definition at line 54 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

Member Function Documentation

template<typename LO , typename GO >
bool panzer::BlockedDOFManagerFactory< LO, GO >::requiresBlocking ( const std::string &  fieldorder)
static

Does a fieldOrder string require blocking? A field order is basically stetup like this blocked: <field 0> <field 1> where two blocks will be created. To merge fields between blocks use a hyphen, i.e. blocked: <field 0> <field 1> - <field 2> - <field 3> This will create 2 blocks, the first contains only <field 0> and the second combines <field 1>, <field 2> and <field 3>. Note the spaces before and after the hyphen, these are important!

Definition at line 56 of file Panzer_BlockedDOFManagerFactory_impl.hpp.

template<typename LO , typename GO >
void panzer::BlockedDOFManagerFactory< LO, GO >::buildBlocking ( const std::string &  fieldorder,
std::vector< std::vector< std::string > > &  blocks 
)
static

Does a fieldOrder string require blocking? A field order is basically stetup like this blocked: <field 0> <field 1> where two blocks will be created. To merge fields between blocks use a hyphen, i.e. blocked: <field 0> <field 1> - <field 2> - <field 3> This will create 2 blocks, the first contains only <field 0> and the second combines <field 1>, <field 2> and <field 3>. Note the spaces before and after the hyphen, these are important!

Definition at line 91 of file Panzer_BlockedDOFManagerFactory_impl.hpp.

template<typename LO , typename GO >
Teuchos::RCP< panzer::UniqueGlobalIndexer< LO, std::pair< int, GO > > > panzer::BlockedDOFManagerFactory< LO, GO >::buildUniqueGlobalIndexer ( const Teuchos::RCP< const Teuchos::OpaqueWrapper< MPI_Comm > > &  mpiComm,
const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &  physicsBlocks,
const Teuchos::RCP< ConnManager< LO, GO > > &  connMngr,
const std::string &  fieldOrder = "" 
) const
virtual

Use the physics block to construct a unique global indexer object.

Parameters
[in]mpiCommMPI communicator to use in the construction
[in]physicsBlocksA vector of physics block objects that contain unknown field information.
[in]connMngrConnection manager that contains the mesh topology
[in]fieldOrderSpecifies the local ordering of the degrees of freedom. This is relevant when degrees of freedom are shared on the same geometric entity. The default is an alphabetical ordering.
[in]buildGlobalUnknownsBuild the global unknowns before returning. The default value gives backwards-compatible behavior. Set this to false if the caller will initialize the DOF manager in additional ways before issuing the call to build the global unknowns itself.
Returns
A UniqueGlobalIndexer object. If buildGlobalUnknowns is true, the object is fully constructed. If it is false, the caller must finalize it.

Implements panzer::UniqueGlobalIndexerFactory< LO, std::pair< int, GO >, LO, GO >.

Definition at line 122 of file Panzer_BlockedDOFManagerFactory_impl.hpp.

template<typename LO, typename GO>
void panzer::BlockedDOFManagerFactory< LO, GO >::setUseDOFManagerFEI ( bool  flag)
inline

Definition at line 106 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

template<typename LO, typename GO>
bool panzer::BlockedDOFManagerFactory< LO, GO >::getUseDOFManagerFEI ( ) const
inline

Definition at line 109 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

template<typename LO, typename GO>
void panzer::BlockedDOFManagerFactory< LO, GO >::setUseTieBreak ( bool  flag)
inline

Definition at line 112 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

template<typename LO, typename GO>
bool panzer::BlockedDOFManagerFactory< LO, GO >::getUseTieBreak ( )
inline

Definition at line 115 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

Member Data Documentation

template<typename LO, typename GO>
bool panzer::BlockedDOFManagerFactory< LO, GO >::useDOFManagerFEI_
private

Definition at line 119 of file Panzer_BlockedDOFManagerFactory_decl.hpp.

template<typename LO, typename GO>
bool panzer::BlockedDOFManagerFactory< LO, GO >::useTieBreak_
private

Definition at line 120 of file Panzer_BlockedDOFManagerFactory_decl.hpp.


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