Ifpack2 Templated Preconditioning Package Version 1.0
Loading...
Searching...
No Matches
Ifpack2_Details_UserPartitioner_decl.hpp
Go to the documentation of this file.
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_USER_PARTITIONER_DECL_HPP
11#define IFPACK2_USER_PARTITIONER_DECL_HPP
12
21
22#include "Ifpack2_ConfigDefs.hpp"
23#include "Ifpack2_OverlappingPartitioner_decl.hpp"
24
25namespace Ifpack2 {
26namespace Details {
27
35template<class GraphType>
36class UserPartitioner : public OverlappingPartitioner<GraphType> {
37public:
38 typedef typename GraphType::local_ordinal_type local_ordinal_type;
39 typedef typename GraphType::global_ordinal_type global_ordinal_type;
40 typedef typename GraphType::node_type node_type;
41 typedef Tpetra::RowGraph<local_ordinal_type, global_ordinal_type, node_type>
42 row_graph_type;
43
45 UserPartitioner (const Teuchos::RCP<const row_graph_type>& graph);
46
48 virtual ~UserPartitioner();
49
62 // OverlappingPartitioner::Parts_.
65 void setPartitionParameters (Teuchos::ParameterList& List);
66
68 void computePartitions ();
69
70private:
71 Teuchos::ArrayRCP<local_ordinal_type> map_;
73 bool userProvidedParts_;
75 bool userProvidedMap_;
76};
77
78}// namespace Details
79}// namespace Ifpack2
80
81#endif // IFPACK2_USER_PARTITIONER_DECL_HPP
virtual ~UserPartitioner()
Destructor.
Definition Ifpack2_Details_UserPartitioner_def.hpp:29
void computePartitions()
Compute the partitions.
Definition Ifpack2_Details_UserPartitioner_def.hpp:92
void setPartitionParameters(Teuchos::ParameterList &List)
Sets all the parameters for the partitioner. The only valid parameters are:
Definition Ifpack2_Details_UserPartitioner_def.hpp:34
UserPartitioner(const Teuchos::RCP< const row_graph_type > &graph)
Constructor.
Definition Ifpack2_Details_UserPartitioner_def.hpp:22
OverlappingPartitioner(const Teuchos::RCP< const row_graph_type > &graph)
Constructor.
Definition Ifpack2_OverlappingPartitioner_def.hpp:24
Preconditioners and smoothers for Tpetra sparse matrices.
Definition Ifpack2_AdditiveSchwarz_decl.hpp:41