DOLFINx 0.12.0.0
DOLFINx C++
Loading...
Searching...
No Matches
ordering.h
1// Copyright (C) 2021 Chris Richardson
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 "AdjacencyList.h"
10#include <cstddef>
11#include <cstdint>
12#include <vector>
13
14namespace dolfinx::graph
15{
62std::vector<std::int32_t>
63reorder_gps(const graph::AdjacencyList<std::int32_t>& graph,
64 std::size_t max_candidates, std::size_t num_threads);
65
91std::vector<std::int32_t>
92reorder_rcm(const graph::AdjacencyList<std::int32_t>& graph);
93
94} // namespace dolfinx::graph
Graph data structures and algorithms.
Definition AdjacencyList.h:23
std::vector< std::int32_t > reorder_rcm(const graph::AdjacencyList< std::int32_t > &graph)
Re-order a graph using the Reverse Cuthill-McKee algorithm.
Definition ordering.cpp:527
std::vector< std::int32_t > reorder_gps(const graph::AdjacencyList< std::int32_t > &graph, std::size_t max_candidates, std::size_t num_threads)
Re-order a graph using the Gibbs-Poole-Stockmeyer algorithm.
Definition ordering.cpp:502