DOLFIN-X
DOLFIN-X C++ interface
dolfinx
graph
ParMETIS.h
1
// Copyright (C) 2008-2009 Niclas Jansson, Ola Skavhaug, Anders Logg,
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 <cstddef>
10
#include <cstdint>
11
#include <dolfinx/common/MPI.h>
12
#include <dolfinx/graph/AdjacencyList.h>
13
#include <vector>
14
15
// FIXME: Avoid exposing ParMETIS publicly
16
#ifdef HAS_PARMETIS
17
#include <parmetis.h>
18
#endif
19
20
namespace
dolfinx::graph
21
{
22
24
25
class
ParMETIS
26
{
27
#ifdef HAS_PARMETIS
28
public
:
29
// Standard ParMETIS partition
30
static
AdjacencyList<std::int32_t>
31
partition(MPI_Comm mpi_comm, idx_t nparts,
32
const
AdjacencyList<idx_t>
& adj_graph,
bool
ghosting);
33
34
#endif
35
};
36
}
// namespace dolfinx::graph
dolfinx::graph
Graph data structures and algorithms.
Definition:
AdjacencyList.h:17
dolfinx::graph::ParMETIS
This class provides an interface to ParMETIS.
Definition:
ParMETIS.h:25
dolfinx::graph::AdjacencyList
This class provides a static adjacency list data structure. It is commonly used to store directed gra...
Definition:
AdjacencyList.h:27
Generated by
1.8.17