DOLFIN-X
DOLFIN-X C++ interface
Partitioning.h
1 // Copyright (C) 2020 Garth N. Wells
2 //
3 // This file is part of DOLFINX (https://www.fenicsproject.org)
4 //
5 // SPDX-License-Identifier: LGPL-3.0-or-later
6 
7 #pragma once
8 
9 #include <cstdint>
10 #include <dolfinx/common/MPI.h>
11 #include <dolfinx/graph/AdjacencyList.h>
12 #include <vector>
13 
14 namespace dolfinx::mesh
15 {
16 
17 enum class CellType;
18 class Topology;
19 enum class GhostMode : int;
20 
22 namespace Partitioning
23 {
41 partition_cells(MPI_Comm comm, int n, const mesh::CellType cell_type,
43  mesh::GhostMode ghost_mode);
44 
45 } // namespace Partitioning
46 } // namespace dolfinx::mesh
dolfinx::mesh
Mesh data structures.
Definition: DirichletBC.h:27
dolfinx::mesh::CellType
CellType
Cell type identifier.
Definition: cell_types.h:21
dolfinx::graph::AdjacencyList
This class provides a static adjacency list data structure. It is commonly used to store directed gra...
Definition: AdjacencyList.h:28
dolfinx::mesh::GhostMode
GhostMode
Enum for different partitioning ghost modes.
Definition: Mesh.h:37
dolfinx::mesh::Partitioning::partition_cells
graph::AdjacencyList< std::int32_t > partition_cells(MPI_Comm comm, int n, const mesh::CellType cell_type, const graph::AdjacencyList< std::int64_t > &cells, mesh::GhostMode ghost_mode)
Compute destination rank for mesh cells in this rank using a graph partitioner.
Definition: Partitioning.cpp:22