MueLu
Version of the Day
Loading...
Searching...
No Matches
MueLu_Types.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// MueLu: A package for multigrid based preconditioning
4
//
5
// Copyright 2012 NTESS and the MueLu contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef MUELU_TYPES_HPP
11
#define MUELU_TYPES_HPP
12
13
#include "
MueLu_ConfigDefs.hpp
"
14
15
namespace
MueLu
{
16
enum
CycleType
{
17
VCYCLE
,
18
WCYCLE
19
};
20
21
enum
PreOrPost
{
22
PRE
= 0x1,
23
POST
= 0x2,
24
BOTH
= 0x3
25
};
26
27
// In the algorithm, aggStat[] = READY/NOTSEL/SELECTED indicates whether a node has been aggregated
28
enum
NodeState
{
29
READY
= 1,
// indicates that a node is available to be
30
// selected as a root node of an aggregate
31
32
NOTSEL
= 2,
// indicates that a node has been rejected as a root node.
33
// This could perhaps be because if this node had been
34
// selected a small aggregate would have resulted
35
// This is Phase 1 specific
36
37
AGGREGATED
= 3,
// indicates that a node has been assigned
38
// to an aggregate
39
40
ONEPT
= 4,
// indicates that a node shall be preserved over
41
// all multigrid levels as 1 point aggregate
42
43
IGNORED
= 5,
// indicates that the node is removed from consideration,
44
// and is not aggregated
45
46
BOUNDARY
= 6,
// node is a Dirichlet node
47
// During aggregation, it is transformed either to AGGREGATED
48
// or to IGNORED
49
INTERFACE
= 7
// node is chosen as root node on an interface where coordinated
50
// coarsening across the interface is required.
51
};
52
53
// This is use by the structured aggregation index manager to keep track of the underlying mesh
54
// layout.
55
enum
IndexingType
{
56
UNCOUPLED
= 1,
// indicates that the underlying mesh is treated independently from rank to rank
57
58
LOCALLEXI
= 2,
// local lexicographic indexing of the mesh, this is similar to uncoupled but
59
// extra data is used to compute indices accross ranks
60
61
GLOBALLEXI
= 3
// global lexicographic indexing of the mesh means that the mesh is ordered
62
// lexicographically accorss and subsequently split among ranks.
63
};
64
65
}
// namespace MueLu
66
67
#endif
// ifndef MUELU_TYPES_HPP
MueLu_ConfigDefs.hpp
MueLu
Namespace for MueLu classes and methods.
Definition
MueLu_BrickAggregationFactory_decl.hpp:42
MueLu::IndexingType
IndexingType
Definition
MueLu_Types.hpp:55
MueLu::GLOBALLEXI
@ GLOBALLEXI
Definition
MueLu_Types.hpp:61
MueLu::UNCOUPLED
@ UNCOUPLED
Definition
MueLu_Types.hpp:56
MueLu::LOCALLEXI
@ LOCALLEXI
Definition
MueLu_Types.hpp:58
MueLu::NodeState
NodeState
Definition
MueLu_Types.hpp:28
MueLu::NOTSEL
@ NOTSEL
Definition
MueLu_Types.hpp:32
MueLu::READY
@ READY
Definition
MueLu_Types.hpp:29
MueLu::ONEPT
@ ONEPT
Definition
MueLu_Types.hpp:40
MueLu::BOUNDARY
@ BOUNDARY
Definition
MueLu_DroppingCommon.hpp:36
MueLu::INTERFACE
@ INTERFACE
Definition
MueLu_Types.hpp:49
MueLu::IGNORED
@ IGNORED
Definition
MueLu_Types.hpp:43
MueLu::AGGREGATED
@ AGGREGATED
Definition
MueLu_Types.hpp:37
MueLu::PreOrPost
PreOrPost
Definition
MueLu_Types.hpp:21
MueLu::POST
@ POST
Definition
MueLu_Types.hpp:23
MueLu::BOTH
@ BOTH
Definition
MueLu_Types.hpp:24
MueLu::PRE
@ PRE
Definition
MueLu_Types.hpp:22
MueLu::CycleType
CycleType
Definition
MueLu_Types.hpp:16
MueLu::WCYCLE
@ WCYCLE
Definition
MueLu_Types.hpp:18
MueLu::VCYCLE
@ VCYCLE
Definition
MueLu_Types.hpp:17
src
Headers
MueLu_Types.hpp
Generated by
1.9.8