MueLu
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
MueLu_RebalanceBlockAcFactory_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_REBALANCEBLOCKACFACTORY_DECL_HPP_
11
#define MUELU_REBALANCEBLOCKACFACTORY_DECL_HPP_
12
13
#include <Xpetra_Matrix_fwd.hpp>
14
#include <Xpetra_CrsMatrix_fwd.hpp>
15
#include <Xpetra_CrsMatrixWrap_fwd.hpp>
16
#include <Xpetra_MatrixFactory_fwd.hpp>
17
#include <Xpetra_Vector_fwd.hpp>
18
#include <Xpetra_MapExtractor_fwd.hpp>
19
#include <Xpetra_MapExtractorFactory_fwd.hpp>
20
21
#include "
MueLu_ConfigDefs.hpp
"
22
#include "
MueLu_RebalanceBlockAcFactory_fwd.hpp
"
23
24
#include "
MueLu_FactoryBase_fwd.hpp
"
25
#include "
MueLu_FactoryManager_fwd.hpp
"
26
#include "
MueLu_Level_fwd.hpp
"
27
#include "
MueLu_PerfUtils_fwd.hpp
"
28
#include "
MueLu_TwoLevelFactoryBase.hpp
"
29
#include "
MueLu_Types.hpp
"
30
31
namespace
MueLu
{
60
template
<
class
Scalar
=
DefaultScalar
,
61
class
LocalOrdinal
=
DefaultLocalOrdinal
,
62
class
GlobalOrdinal
=
DefaultGlobalOrdinal
,
63
class
Node
=
DefaultNode
>
64
class
RebalanceBlockAcFactory
:
public
TwoLevelFactoryBase
{
65
#undef MUELU_REBALANCEBLOCKACFACTORY_SHORT
66
#include "
MueLu_UseShortNames.hpp
"
67
public
:
69
70
71
RCP<const ParameterList>
GetValidParameterList
()
const
;
72
73
void
DeclareInput
(
Level
&fineLevel,
Level
&coarseLevel)
const
;
74
76
void
AddFactoryManager
(RCP<const FactoryManagerBase> FactManager);
78
80
81
void
Build
(
Level
&fineLevel,
Level
&coarseLevel)
const
;
83
85
90
void
AddRebalanceFactory
(
const
RCP<const FactoryBase> &factory);
91
93
size_t
NumRebalanceFactories
()
const
{
return
rebalanceFacts_
.size(); }
94
96
97
private
:
99
std::vector<RCP<const FactoryBase> >
rebalanceFacts_
;
100
102
std::vector<Teuchos::RCP<const FactoryManagerBase> >
FactManager_
;
103
104
};
// class RebalanceAcFactory
105
106
}
// namespace MueLu
107
108
#define MUELU_REBALANCEBLOCKACFACTORY_SHORT
109
110
#endif
/* MUELU_REBALANCEBLOCKACFACTORY_DECL_HPP_ */
MueLu_ConfigDefs.hpp
MueLu_FactoryBase_fwd.hpp
MueLu_FactoryManager_fwd.hpp
MueLu_Level_fwd.hpp
MueLu_PerfUtils_fwd.hpp
MueLu_RebalanceBlockAcFactory_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::RebalanceBlockAcFactory
Definition
MueLu_RebalanceBlockAcFactory_decl.hpp:64
MueLu::RebalanceBlockAcFactory::AddFactoryManager
void AddFactoryManager(RCP< const FactoryManagerBase > FactManager)
Add a factory manager.
Definition
MueLu_RebalanceBlockAcFactory_def.hpp:51
MueLu::RebalanceBlockAcFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::rebalanceFacts_
std::vector< RCP< const FactoryBase > > rebalanceFacts_
Definition
MueLu_RebalanceBlockAcFactory_decl.hpp:99
MueLu::RebalanceBlockAcFactory::GetValidParameterList
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
Definition
MueLu_RebalanceBlockAcFactory_def.hpp:36
MueLu::RebalanceBlockAcFactory::DeclareInput
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Input.
Definition
MueLu_RebalanceBlockAcFactory_def.hpp:56
MueLu::RebalanceBlockAcFactory::Build
void Build(Level &fineLevel, Level &coarseLevel) const
Build an object with this factory.
Definition
MueLu_RebalanceBlockAcFactory_def.hpp:74
MueLu::RebalanceBlockAcFactory::NumRebalanceFactories
size_t NumRebalanceFactories() const
Returns number of transfer factories.
Definition
MueLu_RebalanceBlockAcFactory_decl.hpp:93
MueLu::RebalanceBlockAcFactory::AddRebalanceFactory
void AddRebalanceFactory(const RCP< const FactoryBase > &factory)
Add rebalancing factory in the end of list of rebalancing factories in RebalanceAcFactory.
Definition
MueLu_RebalanceBlockAcFactory_def.hpp:381
MueLu::RebalanceBlockAcFactory< Scalar, LocalOrdinal, GlobalOrdinal, Node >::FactManager_
std::vector< Teuchos::RCP< const FactoryManagerBase > > FactManager_
Definition
MueLu_RebalanceBlockAcFactory_decl.hpp:102
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_RebalanceBlockAcFactory_decl.hpp
Generated by
1.17.0