Ifpack2 Templated Preconditioning Package
Version 1.0
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Ifpack2_Zoltan2Partitioner_decl.hpp
1
// @HEADER
2
// *****************************************************************************
3
// Ifpack2: Templated Object-Oriented Algebraic Preconditioner Package
4
//
5
// Copyright 2009 NTESS and the Ifpack2 contributors.
6
// SPDX-License-Identifier: BSD-3-Clause
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef IFPACK2_ZOLTAN2PARTITIONER_DECL_HPP
11
#define IFPACK2_ZOLTAN2PARTITIONER_DECL_HPP
12
13
#if defined(HAVE_IFPACK2_ZOLTAN2)
14
#include "Ifpack2_ConfigDefs.hpp"
15
#include "Ifpack2_OverlappingPartitioner_decl.hpp"
16
17
#include "Zoltan2_PartitioningProblem.hpp"
18
#include "Zoltan2_TpetraRowGraphAdapter.hpp"
19
20
namespace
Ifpack2
{
21
23
30
template
<
class
GraphType>
31
class
Zoltan2Partitioner :
public
OverlappingPartitioner
<GraphType> {
32
public
:
33
typedef
typename
GraphType::local_ordinal_type local_ordinal_type;
34
typedef
typename
GraphType::global_ordinal_type global_ordinal_type;
35
typedef
typename
GraphType::node_type node_type;
36
typedef
Tpetra::RowGraph<local_ordinal_type, global_ordinal_type, node_type>
37
row_graph_type;
38
typedef
Zoltan2::TpetraRowGraphAdapter<row_graph_type>
39
Zoltan2GraphAdapterType;
40
42
Zoltan2Partitioner(
const
Teuchos::RCP<const row_graph_type>& graph);
43
45
virtual
~Zoltan2Partitioner();
46
48
void
setPartitionParameters(Teuchos::ParameterList& List);
49
51
void
computePartitions();
52
53
private
:
54
std::string zoltan2AlgoName_;
55
};
56
57
}
// namespace Ifpack2
58
59
#endif
// HAVE_IFPACK2_ZOLTAN2
60
#endif
// IFPACK2_ZOLTAN2PARTITIONER_DECL_HPP
Ifpack2::OverlappingPartitioner
Create overlapping partitions of a local graph.
Definition
Ifpack2_OverlappingPartitioner_decl.hpp:45
Ifpack2
Preconditioners and smoothers for Tpetra sparse matrices.
Definition
Ifpack2_AdditiveSchwarz_decl.hpp:40
Generated by
1.17.0