MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu_OnePtAggregationAlgorithm_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/*
11 * MueLu_OnePtAggregationAlgorithm_decl.hpp
12 *
13 * Created on: Sep 18, 2012
14 * Author: Tobias Wiesner
15 */
16
17#ifndef MUELU_ONEPTAGGREGATIONALGORITHM_DECL_HPP_
18#define MUELU_ONEPTAGGREGATIONALGORITHM_DECL_HPP_
19
20#include "MueLu_ConfigDefs.hpp"
23
26
27#include "MueLu_LWGraph.hpp"
28
29namespace MueLu {
48template <class LocalOrdinal = DefaultLocalOrdinal,
50 class Node = DefaultNode>
51class OnePtAggregationAlgorithm : public MueLu::AggregationAlgorithmBase<LocalOrdinal, GlobalOrdinal, Node> {
52#undef MUELU_ONEPTAGGREGATIONALGORITHM_SHORT
54
55 public:
57
58
60 OnePtAggregationAlgorithm(RCP<const FactoryBase> const& graphFact = Teuchos::null);
61
64
66
68
69
72 void BuildAggregatesNonKokkos(Teuchos::ParameterList const& params, LWGraph const& graph, Aggregates& aggregates, typename AggregationAlgorithmBase<LocalOrdinal, GlobalOrdinal, Node>::AggStatHostType& aggStat, LO& numNonAggregatedNodes) const;
73
74 void BuildAggregates(Teuchos::ParameterList const& params,
75 LWGraph_kokkos const& graph,
76 Aggregates& aggregates,
78 LO& numNonAggregatedNodes) const;
80
81}; // class OnePtAggregationAlgorithm
82
83} // namespace MueLu
84
85#define MUELU_ONEPTAGGREGATIONALGORITHM_SHORT
86#endif /* MUELU_ONEPTAGGREGATIONALGORITHM_DECL_HPP_ */
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultGlobalOrdinal GlobalOrdinal
MueLu::DefaultNode Node
Container class for aggregation information.
Pure virtual base class for all MueLu aggregation algorithms.
Kokkos::View< unsigned *, typename LWGraphHostType::device_type > AggStatHostType
Kokkos::View< unsigned *, typename LWGraphType::device_type > AggStatType
Lightweight MueLu representation of a compressed row storage graph.
Lightweight MueLu representation of a compressed row storage graph.
Algorithm for coarsening a graph with uncoupled aggregation. keep special marked nodes as singleton n...
void BuildAggregatesNonKokkos(Teuchos::ParameterList const &params, LWGraph const &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatHostType &aggStat, LO &numNonAggregatedNodes) const
Local aggregation.
void BuildAggregates(Teuchos::ParameterList const &params, LWGraph_kokkos const &graph, Aggregates &aggregates, typename AggregationAlgorithmBase< LocalOrdinal, GlobalOrdinal, Node >::AggStatType &aggStat, LO &numNonAggregatedNodes) const
Namespace for MueLu classes and methods.
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode