46#ifndef MUELU_REPARTITIONFACTORY_DECL_HPP
47#define MUELU_REPARTITIONFACTORY_DECL_HPP
54#include <Xpetra_Map_fwd.hpp>
55#include <Xpetra_MapFactory_fwd.hpp>
56#include <Xpetra_Import_fwd.hpp>
57#include <Xpetra_ImportFactory_fwd.hpp>
58#include <Xpetra_Export_fwd.hpp>
59#include <Xpetra_ExportFactory_fwd.hpp>
60#include <Xpetra_Vector_fwd.hpp>
61#include <Xpetra_Matrix_fwd.hpp>
62#include <Xpetra_MatrixFactory_fwd.hpp>
117#undef MUELU_REPARTITIONFACTORY_SHORT
165 void DeterminePartitionPlacement(
const Matrix& A, GOVector& decomposition, GO numPartitions,
bool willAcceptPartition=
true,
bool allSubdomainsAcceptPartitions=
true)
const;
171#define MUELU_REPARTITIONFACTORY_SHORT
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Class that holds all level-specific information.
Factory for building permutation matrix that can be be used to shuffle data (matrices,...
void Build(Level ¤tLevel) const
Build an object with this factory.
void DeterminePartitionPlacement(const Matrix &A, GOVector &decomposition, GO numPartitions, bool willAcceptPartition=true, bool allSubdomainsAcceptPartitions=true) const
Determine which process should own each partition.
virtual ~RepartitionFactory()
Destructor.
void DeclareInput(Level ¤tLevel) const
Determines the data that RepartitionFactory needs, and the factories that generate that data.
RepartitionFactory()
Constructor.
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
Base class for factories that use one level (currentLevel).
Namespace for MueLu classes and methods.
KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar