MueLu
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
MueLu_RebalanceBlockRestrictionFactory_decl.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_REBALANCEBLOCKRESTRICTIONFACTORY_DECL_HPP_
11
#define MUELU_REBALANCEBLOCKRESTRICTIONFACTORY_DECL_HPP_
12
13
#include <Xpetra_Matrix_fwd.hpp>
14
#include <Xpetra_MatrixFactory_fwd.hpp>
15
#include <Xpetra_MapExtractor_fwd.hpp>
16
#include <Xpetra_MapExtractorFactory_fwd.hpp>
17
#include "Xpetra_MultiVector_fwd.hpp"
18
#include "Xpetra_MultiVectorFactory_fwd.hpp"
19
#include "Xpetra_Vector_fwd.hpp"
20
#include "Xpetra_VectorFactory_fwd.hpp"
21
#include "Xpetra_Import_fwd.hpp"
22
23
#include "
MueLu_ConfigDefs.hpp
"
24
25
#include "
MueLu_PerfUtils_fwd.hpp
"
26
#include "
MueLu_RebalanceBlockRestrictionFactory_fwd.hpp
"
27
#include "
MueLu_TwoLevelFactoryBase.hpp
"
28
#include "
MueLu_Types.hpp
"
29
30
namespace
MueLu
{
31
37
template
<
class
Scalar
=
DefaultScalar
,
38
class
LocalOrdinal
=
DefaultLocalOrdinal
,
39
class
GlobalOrdinal
=
DefaultGlobalOrdinal
,
40
class
Node
=
DefaultNode
>
41
class
RebalanceBlockRestrictionFactory
:
public
TwoLevelFactoryBase
{
42
#undef MUELU_REBALANCEBLOCKRESTRICTIONFACTORY_SHORT
43
#include "
MueLu_UseShortNames.hpp
"
44
45
public
:
47
48
50
RebalanceBlockRestrictionFactory
()
51
:
UseSingleSourceImporters_
(false) {}
52
54
virtual
~RebalanceBlockRestrictionFactory
() {}
55
56
RCP<const ParameterList>
GetValidParameterList
()
const
;
57
59
61
62
68
void
DeclareInput
(
Level
&fineLevel,
Level
&coarseLevel)
const
;
69
71
void
AddFactoryManager
(RCP<const FactoryManagerBase> FactManager);
72
74
void
SetSingleSourceImporters
(
bool
value) {
UseSingleSourceImporters_
= value; }
75
77
79
80
82
void
Build
(
Level
&fineLevel,
Level
&coarseLevel)
const
;
83
85
86
private
:
88
std::vector<Teuchos::RCP<const FactoryManagerBase> >
FactManager_
;
89
90
bool
UseSingleSourceImporters_
;
91
92
};
// class RebalanceBlockTransferFactory
93
94
}
// namespace MueLu
95
96
#define MUELU_REBALANCEBLOCKRESTRICTIONFACTORY_SHORT
97
#endif
/* MUELU_REBALANCEBLOCKRESTRICTIONFACTORY_DECL_HPP_ */
MueLu_ConfigDefs.hpp
MueLu_PerfUtils_fwd.hpp
MueLu_RebalanceBlockRestrictionFactory_fwd.hpp
MueLu_TwoLevelFactoryBase.hpp
MueLu_Types.hpp
LocalOrdinal
MueLu::DefaultLocalOrdinal LocalOrdinal
Definition
MueLu_UseDefaultTypes.hpp:13
Scalar
MueLu::DefaultScalar Scalar
Definition
MueLu_UseDefaultTypes.hpp:12
GlobalOrdinal
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Definition
MueLu_UseDefaultTypes.hpp:14
Node
MueLu::DefaultNode Node
Definition
MueLu_UseDefaultTypes.hpp:15
MueLu_UseShortNames.hpp
MueLu::Level
Class that holds all level-specific information.
Definition
MueLu_Level.hpp:63
MueLu::RebalanceBlockRestrictionFactory::~RebalanceBlockRestrictionFactory
virtual ~RebalanceBlockRestrictionFactory()
Destructor.
Definition
MueLu_RebalanceBlockRestrictionFactory_decl.hpp:54
MueLu::RebalanceBlockRestrictionFactory::DeclareInput
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Specifies the data that this class needs, and the factories that generate that data.
Definition
MueLu_RebalanceBlockRestrictionFactory_def.hpp:63
MueLu::RebalanceBlockRestrictionFactory::GetValidParameterList
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
Definition
MueLu_RebalanceBlockRestrictionFactory_def.hpp:40
MueLu::RebalanceBlockRestrictionFactory::SetSingleSourceImporters
void SetSingleSourceImporters(bool value)
Get the importers from a single source.
Definition
MueLu_RebalanceBlockRestrictionFactory_decl.hpp:74
MueLu::RebalanceBlockRestrictionFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::UseSingleSourceImporters_
bool UseSingleSourceImporters_
Definition
MueLu_RebalanceBlockRestrictionFactory_decl.hpp:90
MueLu::RebalanceBlockRestrictionFactory::AddFactoryManager
void AddFactoryManager(RCP< const FactoryManagerBase > FactManager)
Add a factory manager.
Definition
MueLu_RebalanceBlockRestrictionFactory_def.hpp:58
MueLu::RebalanceBlockRestrictionFactory::RebalanceBlockRestrictionFactory
RebalanceBlockRestrictionFactory()
Constructor.
Definition
MueLu_RebalanceBlockRestrictionFactory_decl.hpp:50
MueLu::RebalanceBlockRestrictionFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::FactManager_
std::vector< Teuchos::RCP< const FactoryManagerBase > > FactManager_
Definition
MueLu_RebalanceBlockRestrictionFactory_decl.hpp:88
MueLu::RebalanceBlockRestrictionFactory::Build
void Build(Level &fineLevel, Level &coarseLevel) const
Build an object with this factory.
Definition
MueLu_RebalanceBlockRestrictionFactory_def.hpp:82
MueLu::TwoLevelFactoryBase::TwoLevelFactoryBase
TwoLevelFactoryBase()
Constructor.
MueLu
Namespace for MueLu classes and methods.
Definition
MueLu_BrickAggregationFactory_decl.hpp:42
MueLu::DefaultNode
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
Definition
MueLu_Details_DefaultTypes.hpp:32
MueLu::DefaultGlobalOrdinal
int DefaultGlobalOrdinal
Definition
MueLu_Details_DefaultTypes.hpp:29
MueLu::DefaultLocalOrdinal
int DefaultLocalOrdinal
Definition
MueLu_Details_DefaultTypes.hpp:22
MueLu::DefaultScalar
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar
Definition
MueLu_Details_DefaultTypes.hpp:20
src
Rebalancing
MueLu_RebalanceBlockRestrictionFactory_decl.hpp
Generated by
1.17.0