Advanced Multi-Physics (AMP)
On-Line Documentation
Aggregation.h
Go to the documentation of this file.
1#ifndef included_AMP_AMG_Aggregation
2#define included_AMP_AMG_Aggregation
3
4#include "AMP/matrices/CSRMatrix.h"
5#include "AMP/operators/LinearOperator.h"
6#include "AMP/operators/Operator.h"
7#include "AMP/solvers/amg/AggregationSettings.h"
8#include "AMP/solvers/amg/Aggregator.h"
9
11
12using coarse_ops_type = std::tuple<std::shared_ptr<AMP::Operator::Operator>,
13 std::shared_ptr<AMP::Operator::LinearOperator>,
14 std::shared_ptr<AMP::Operator::Operator>>;
15
16coarse_ops_type pairwise_coarsen( std::shared_ptr<AMP::Operator::Operator> fine,
17 const PairwiseCoarsenSettings &settings );
18
19coarse_ops_type aggregator_coarsen( std::shared_ptr<AMP::Operator::Operator> fine,
20 Aggregator &aggregator );
21
24 : Aggregator( settings ), d_settings( settings )
25 {
26 }
27
28 int assignLocalAggregates( std::shared_ptr<LinearAlgebra::Matrix> A, int *agg_ids ) override;
29 template<class Config>
30 int assignLocalAggregates( std::shared_ptr<LinearAlgebra::CSRMatrix<Config>> A, int *agg_ids );
31
32private:
34};
35
36} // namespace AMP::Solver::AMG
37#endif
An concrete class for dealing with dense serial matrices.
Definition CSRMatrix.h:26
coarse_ops_type pairwise_coarsen(std::shared_ptr< AMP::Operator::Operator > fine, const PairwiseCoarsenSettings &settings)
coarse_ops_type aggregator_coarsen(std::shared_ptr< AMP::Operator::Operator > fine, Aggregator &aggregator)
std::tuple< std::shared_ptr< AMP::Operator::Operator >, std::shared_ptr< AMP::Operator::LinearOperator >, std::shared_ptr< AMP::Operator::Operator > > coarse_ops_type
Definition Aggregation.h:14
PairwiseAggregator(const PairwiseCoarsenSettings &settings)
Definition Aggregation.h:23
int assignLocalAggregates(std::shared_ptr< LinearAlgebra::Matrix > A, int *agg_ids) override
int assignLocalAggregates(std::shared_ptr< LinearAlgebra::CSRMatrix< Config > > A, int *agg_ids)
PairwiseCoarsenSettings d_settings
Definition Aggregation.h:33



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page