Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Alina::DistributedBlockPreconditioner< Precond > Class Template Reference

Distributed block preconditioner. More...

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

Collaboration diagram for Arcane::Alina::DistributedBlockPreconditioner< Precond >:

Public Types

typedef Precond::params params
typedef Precond::backend_type backend_type
using BackendType = backend_type
typedef backend_type::params backend_params
typedef backend_type::value_type value_type
typedef backend_type::matrix bmatrix
typedef DistributedMatrix< backend_type > matrix

Public Member Functions

template<class Matrix>
 DistributedBlockPreconditioner (mpi_communicator comm, const Matrix &Astrip, const params &prm=params(), const backend_params &bprm=backend_params())
 DistributedBlockPreconditioner (mpi_communicator, std::shared_ptr< matrix > A, const params &prm=params(), const backend_params &bprm=backend_params())
std::shared_ptr< matrix > system_matrix_ptr () const
const matrix & system_matrix () const
template<class Vec1, class Vec2>
void apply (const Vec1 &rhs, Vec2 &&x) const

Private Attributes

std::shared_ptr< matrix > A
std::shared_ptr< Precond > P

Detailed Description

template<class Precond>
class Arcane::Alina::DistributedBlockPreconditioner< Precond >

Distributed block preconditioner.

Definition at line 243 of file DistributedPreconditioner.h.

Member Typedef Documentation

◆ backend_params

template<class Precond>
typedef backend_type::params Arcane::Alina::DistributedBlockPreconditioner< Precond >::backend_params

Definition at line 250 of file DistributedPreconditioner.h.

◆ backend_type

template<class Precond>
typedef Precond::backend_type Arcane::Alina::DistributedBlockPreconditioner< Precond >::backend_type

Definition at line 248 of file DistributedPreconditioner.h.

◆ BackendType

template<class Precond>
using Arcane::Alina::DistributedBlockPreconditioner< Precond >::BackendType = backend_type

Definition at line 249 of file DistributedPreconditioner.h.

◆ bmatrix

template<class Precond>
typedef backend_type::matrix Arcane::Alina::DistributedBlockPreconditioner< Precond >::bmatrix

Definition at line 253 of file DistributedPreconditioner.h.

◆ matrix

template<class Precond>
typedef DistributedMatrix<backend_type> Arcane::Alina::DistributedBlockPreconditioner< Precond >::matrix

Definition at line 254 of file DistributedPreconditioner.h.

◆ params

template<class Precond>
typedef Precond::params Arcane::Alina::DistributedBlockPreconditioner< Precond >::params

Definition at line 247 of file DistributedPreconditioner.h.

◆ value_type

template<class Precond>
typedef backend_type::value_type Arcane::Alina::DistributedBlockPreconditioner< Precond >::value_type

Definition at line 252 of file DistributedPreconditioner.h.

Constructor & Destructor Documentation

◆ DistributedBlockPreconditioner() [1/2]

template<class Precond>
template<class Matrix>
Arcane::Alina::DistributedBlockPreconditioner< Precond >::DistributedBlockPreconditioner ( mpi_communicator comm,
const Matrix & Astrip,
const params & prm = params(),
const backend_params & bprm = backend_params() )
inline

Definition at line 257 of file DistributedPreconditioner.h.

◆ DistributedBlockPreconditioner() [2/2]

template<class Precond>
Arcane::Alina::DistributedBlockPreconditioner< Precond >::DistributedBlockPreconditioner ( mpi_communicator ,
std::shared_ptr< matrix > A,
const params & prm = params(),
const backend_params & bprm = backend_params() )
inline

Definition at line 268 of file DistributedPreconditioner.h.

Member Function Documentation

◆ apply()

template<class Precond>
template<class Vec1, class Vec2>
void Arcane::Alina::DistributedBlockPreconditioner< Precond >::apply ( const Vec1 & rhs,
Vec2 && x ) const
inline

Definition at line 290 of file DistributedPreconditioner.h.

◆ system_matrix()

template<class Precond>
const matrix & Arcane::Alina::DistributedBlockPreconditioner< Precond >::system_matrix ( ) const
inline

Definition at line 284 of file DistributedPreconditioner.h.

◆ system_matrix_ptr()

template<class Precond>
std::shared_ptr< matrix > Arcane::Alina::DistributedBlockPreconditioner< Precond >::system_matrix_ptr ( ) const
inline

Definition at line 279 of file DistributedPreconditioner.h.

Member Data Documentation

◆ A

template<class Precond>
std::shared_ptr<matrix> Arcane::Alina::DistributedBlockPreconditioner< Precond >::A
private

Definition at line 297 of file DistributedPreconditioner.h.

◆ P

template<class Precond>
std::shared_ptr<Precond> Arcane::Alina::DistributedBlockPreconditioner< Precond >::P
private

Definition at line 298 of file DistributedPreconditioner.h.


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