Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Alina::RugeStubenCoarsening< Backend > Struct Template Reference

Classic Ruge-Stuben coarsening with direct interpolation. More...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/alina/arccore/alina/Coarsening.h>

Collaboration diagram for Arcane::Alina::RugeStubenCoarsening< Backend >:

Classes

struct  params
 Coarsening parameters. More...

Public Member Functions

 RugeStubenCoarsening (const params &prm=params())
template<class Matrix>
std::tuple< std::shared_ptr< Matrix >, std::shared_ptr< Matrix > > transfer_operators (const Matrix &A) const
template<class Matrix>
std::shared_ptr< Matrixcoarse_operator (const Matrix &A, const Matrix &P, const Matrix &R) const

Public Attributes

struct Arcane::Alina::RugeStubenCoarsening::params prm

Static Private Member Functions

template<typename Val, typename Col, typename Ptr>
static void connect (CSRMatrix< Val, Col, Ptr > const &A, float eps_strong, CSRMatrix< char, Col, Ptr > &S, std::vector< char > &cf)
template<typename Val, typename Col, typename Ptr>
static void cfsplit (CSRMatrix< Val, Col, Ptr > const &A, CSRMatrix< char, Col, Ptr > const &S, std::vector< char > &cf)

Detailed Description

template<class Backend>
struct Arcane::Alina::RugeStubenCoarsening< Backend >

Classic Ruge-Stuben coarsening with direct interpolation.

See also
[Stuben1999]

Definition at line 909 of file Coarsening.h.

Constructor & Destructor Documentation

◆ RugeStubenCoarsening()

template<class Backend>
Arcane::Alina::RugeStubenCoarsening< Backend >::RugeStubenCoarsening ( const params & prm = params())
inlineexplicit

Definition at line 959 of file Coarsening.h.

Member Function Documentation

◆ cfsplit()

template<class Backend>
template<typename Val, typename Col, typename Ptr>
void Arcane::Alina::RugeStubenCoarsening< Backend >::cfsplit ( CSRMatrix< Val, Col, Ptr > const & A,
CSRMatrix< char, Col, Ptr > const & S,
std::vector< char > & cf )
inlinestaticprivate

Definition at line 1199 of file Coarsening.h.

◆ coarse_operator()

template<class Backend>
template<class Matrix>
std::shared_ptr< Matrix > Arcane::Alina::RugeStubenCoarsening< Backend >::coarse_operator ( const Matrix & A,
const Matrix & P,
const Matrix & R ) const
inline

Definition at line 1126 of file Coarsening.h.

◆ connect()

template<class Backend>
template<typename Val, typename Col, typename Ptr>
void Arcane::Alina::RugeStubenCoarsening< Backend >::connect ( CSRMatrix< Val, Col, Ptr > const & A,
float eps_strong,
CSRMatrix< char, Col, Ptr > & S,
std::vector< char > & cf )
inlinestaticprivate

Definition at line 1141 of file Coarsening.h.

◆ transfer_operators()

template<class Backend>
template<class Matrix>
std::tuple< std::shared_ptr< Matrix >, std::shared_ptr< Matrix > > Arcane::Alina::RugeStubenCoarsening< Backend >::transfer_operators ( const Matrix & A) const
inline

Definition at line 965 of file Coarsening.h.


The documentation for this struct was generated from the following file: