Panzer Version of the Day
Loading...
Searching...
No Matches
Panzer_BlockedDOFManagerFactory.hpp
Go to the documentation of this file.
1// @HEADER
2// *****************************************************************************
3// Panzer: A partial differential equation assembly
4// engine for strongly coupled complex multiphysics systems
5//
6// Copyright 2011 NTESS and the Panzer contributors.
7// SPDX-License-Identifier: BSD-3-Clause
8// *****************************************************************************
9// @HEADER
10
11#ifndef __Panzer_BlockedDOFManagerFactory_decl_hpp__
12#define __Panzer_BlockedDOFManagerFactory_decl_hpp__
13
15
16namespace panzer {
17
19public:
22
33 static bool requiresBlocking(const std::string & fieldorder);
34
45 static void buildBlocking(const std::string & fieldorder,std::vector<std::vector<std::string> > & blocks);
46
67 virtual Teuchos::RCP<panzer::GlobalIndexer>
68 buildGlobalIndexer(const Teuchos::RCP<const Teuchos::OpaqueWrapper<MPI_Comm> > & mpiComm,
69 const std::vector<Teuchos::RCP<panzer::PhysicsBlock> > & physicsBlocks,
70 const Teuchos::RCP<ConnManager> & connMngr,
71 const std::string & fieldOrder="") const;
72
73 void setUseDOFManagerFEI(bool flag)
74 { useDOFManagerFEI_ = flag; }
75
77 { return useDOFManagerFEI_; }
78
79 void setUseTieBreak(bool flag)
80 { useTieBreak_ = flag; }
81
83 { return useTieBreak_; }
84
85private:
88};
89
90}
91
92#endif
static bool requiresBlocking(const std::string &fieldorder)
virtual Teuchos::RCP< panzer::GlobalIndexer > buildGlobalIndexer(const Teuchos::RCP< const Teuchos::OpaqueWrapper< MPI_Comm > > &mpiComm, const std::vector< Teuchos::RCP< panzer::PhysicsBlock > > &physicsBlocks, const Teuchos::RCP< ConnManager > &connMngr, const std::string &fieldOrder="") const
static void buildBlocking(const std::string &fieldorder, std::vector< std::vector< std::string > > &blocks)