Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Panzer_LocalPartitioningUtilities.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_LOCAL_PARTITIONING_UTILITIES_HPP
12 #define PANZER_LOCAL_PARTITIONING_UTILITIES_HPP
13 
14 #include "Panzer_LocalMeshInfo.hpp"
15 
16 #include <vector>
17 
18 namespace panzer
19 {
20 
21 class ConnManager;
22 class WorksetDescriptor;
23 
40 void
42  panzer::ConnManager & conn,
43  PHX::View<panzer::GlobalOrdinal*> & owned_cells,
44  PHX::View<panzer::GlobalOrdinal*> & ghost_cells,
45  PHX::View<panzer::GlobalOrdinal*> & virtual_cells);
46 
61 void
63  const panzer::WorksetDescriptor & description,
64  std::vector<panzer::LocalMeshPartition> & partitions);
65 
66 namespace partitioning_utilities
67 {
68 
76 void
78  const std::vector<panzer::LocalOrdinal> & owned_parent_cells,
79  panzer::LocalMeshInfoBase & child_info);
80 }
81 
82 }
83 
84 #endif
void fillLocalCellIDs(const Teuchos::RCP< const Teuchos::Comm< int >> &comm, panzer::ConnManager &conn, PHX::View< panzer::GlobalOrdinal * > &owned_cells, PHX::View< panzer::GlobalOrdinal * > &ghost_cells, PHX::View< panzer::GlobalOrdinal * > &virtual_cells)
Get the owned, ghost and virtual global cell ids for this process.
void generateLocalMeshPartitions(const panzer::LocalMeshInfo &mesh_info, const panzer::WorksetDescriptor &description, std::vector< panzer::LocalMeshPartition > &partitions)
Pure virtual base class for supplying mesh connectivity information to the DOF Manager.
void setupSubLocalMeshInfo(const panzer::LocalMeshInfoBase &parent_info, const std::vector< panzer::LocalOrdinal > &owned_parent_cells, panzer::LocalMeshInfoBase &sub_info)