FEAT
3
Finite Element Analysis Toolbox
Loading...
Searching...
No Matches
cuthill_mckee.hpp
1
// FEAT3: Finite Element Analysis Toolbox, Version 3
2
// Copyright (C) 2010 by Stefan Turek & the FEAT group
3
// FEAT3 is released under the GNU General Public License version 3,
4
// see the file 'copyright.txt' in the top level directory for details.
5
6
#pragma once
7
8
// includes, FEAT
9
#include <kernel/adjacency/permutation.hpp>
10
#include <kernel/adjacency/graph.hpp>
11
12
// includes, system
13
#include <vector>
14
15
namespace
FEAT
16
{
17
namespace
Adjacency
18
{
26
class
CuthillMcKee
27
{
28
public
:
29
35
enum class
RootType
36
{
42
standard
= 0,
43
49
minimum_degree
= 1,
50
56
maximum_degree
= 2
57
};
58
64
enum class
SortType
65
{
71
standard
= 0,
72
78
asc
= 1,
79
85
desc
= 2
86
};
87
109
static
Permutation
compute
(
110
std::vector<Index>& layers,
111
const
Graph
& graph,
112
bool
reverse =
false
,
113
CuthillMcKee::RootType
r_type =
RootType::standard
,
114
CuthillMcKee::SortType
t_type =
SortType::standard
);
115
137
static
Permutation
compute
(
138
const
Graph
& graph,
139
bool
reverse =
false
,
140
CuthillMcKee::RootType
R_type =
RootType::standard
,
141
CuthillMcKee::SortType
s_type =
SortType::standard
);
142
};
// class CuthillMcKee
143
}
// namespace Adjacency
144
}
// namespace FEAT
FEAT::Adjacency::CuthillMcKee
Cuthill McKee implementation.
Definition:
cuthill_mckee.hpp:27
FEAT::Adjacency::CuthillMcKee::RootType
RootType
Root type enumeration.
Definition:
cuthill_mckee.hpp:36
FEAT::Adjacency::CuthillMcKee::RootType::standard
@ standard
Default root.
FEAT::Adjacency::CuthillMcKee::RootType::minimum_degree
@ minimum_degree
Minimum-degree root.
FEAT::Adjacency::CuthillMcKee::RootType::maximum_degree
@ maximum_degree
Maximum-degree root.
FEAT::Adjacency::CuthillMcKee::compute
static Permutation compute(std::vector< Index > &layers, const Graph &graph, bool reverse=false, CuthillMcKee::RootType r_type=RootType::standard, CuthillMcKee::SortType t_type=SortType::standard)
Cuthill-McKee permutation computation function.
Definition:
cuthill_mckee.cpp:25
FEAT::Adjacency::CuthillMcKee::SortType
SortType
Sort type enumeration.
Definition:
cuthill_mckee.hpp:65
FEAT::Adjacency::CuthillMcKee::SortType::desc
@ desc
Descending order.
FEAT::Adjacency::CuthillMcKee::SortType::asc
@ asc
Ascending order.
FEAT::Adjacency::CuthillMcKee::SortType::standard
@ standard
Default sorting type.
FEAT::Adjacency::Graph
Adjacency Graph implementation.
Definition:
graph.hpp:34
FEAT::Adjacency::Permutation
Permutation class.
Definition:
permutation.hpp:25
FEAT
FEAT namespace.
Definition:
adjactor.hpp:12
kernel
adjacency
cuthill_mckee.hpp
Generated by
1.9.5