DOLFIN-X
DOLFIN-X C++ interface
parmetis.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 
13 namespace dolfinx::graph::parmetis
14 {
15 #ifdef HAS_PARMETIS
16 
21 std::function<graph::AdjacencyList<std::int32_t>(
22  MPI_Comm, int, const graph::AdjacencyList<std::int64_t>&, std::int32_t,
23  bool)>
24 partitioner(std::array<int, 3> options = {0, 0, 0});
25 
26 #endif
27 } // namespace dolfinx::graph::parmetis
graph::partition_fn partitioner(scotch::strategy strategy=strategy::none, double imbalance=0.025, int seed=0)
Create a graph partitioning function that uses SCOTCH.
Definition: scotch.cpp:122