10#ifndef IFPACK2_LINEAR_PARTITIONER_DEF_HPP
11#define IFPACK2_LINEAR_PARTITIONER_DEF_HPP
12#include "Ifpack2_ConfigDefs.hpp"
13#include "Ifpack2_LinearPartitioner_decl.hpp"
19template <
class GraphType>
24template <
class GraphType>
27template <
class GraphType>
31template <
class GraphType>
41 const int mod = as<int>(this->
Graph_->getLocalNumRows() /
42 this->NumLocalParts_);
43 for (
size_t i = 0; i < this->
Graph_->getLocalNumRows(); ++i) {
44 this->
Partition_[i] = as<local_ordinal_type>(i / mod);
53#define IFPACK2_LINEARPARTITIONER_INSTANT(LO, GO, N) \
54 template class Ifpack2::LinearPartitioner<Tpetra::CrsGraph<LO, GO, N> >; \
55 template class Ifpack2::LinearPartitioner<Tpetra::RowGraph<LO, GO, N> >;
virtual ~LinearPartitioner()
Destructor.
Definition Ifpack2_LinearPartitioner_def.hpp:25
LinearPartitioner(const Teuchos::RCP< const row_graph_type > &graph)
Constructor.
Definition Ifpack2_LinearPartitioner_def.hpp:21
void setPartitionParameters(Teuchos::ParameterList &List)
Set the partitioner's parameters (none for linear partitioning).
Definition Ifpack2_LinearPartitioner_def.hpp:29
void computePartitions()
Compute the partitions.
Definition Ifpack2_LinearPartitioner_def.hpp:32
Teuchos::Array< local_ordinal_type > Partition_
Mapping from local row to partition number.
Definition Ifpack2_OverlappingPartitioner_decl.hpp:144
OverlappingPartitioner(const Teuchos::RCP< const row_graph_type > &graph)
Constructor.
Definition Ifpack2_OverlappingPartitioner_def.hpp:25
Teuchos::RCP< const row_graph_type > Graph_
The graph to be partitioned.
Definition Ifpack2_OverlappingPartitioner_decl.hpp:154
int NumLocalParts_
Number of local subgraphs.
Definition Ifpack2_OverlappingPartitioner_decl.hpp:137
Preconditioners and smoothers for Tpetra sparse matrices.
Definition Ifpack2_AdditiveSchwarz_decl.hpp:40