Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Alina::DistributedGaussSeidelRelaxation< Backend > Struct Template Reference
Inheritance diagram for Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >:
Collaboration diagram for Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >:

Public Types

typedef Backend backend_type
typedef GaussSeidelRelaxation< Backend > Base
typedef Backend::params backend_params
typedef Base::params params

Public Member Functions

 DistributedGaussSeidelRelaxation (const DistributedMatrix< Backend > &A, const params &prm=params(), const backend_params &bprm=backend_params())
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_pre (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &t) const
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_post (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &t) const
template<class Matrix, class VectorRHS, class VectorX>
void apply (const Matrix &A, const VectorRHS &rhs, VectorX &x) const
Public Member Functions inherited from Arcane::Alina::GaussSeidelRelaxation< Backend >
template<class Matrix>
 GaussSeidelRelaxation (const Matrix &A, const params &prm, const typename Backend::params &)
 Constructs smoother for the system matrix.
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_pre (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &) const
 Apply pre-relaxation.
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void apply_post (const Matrix &A, const VectorRHS &rhs, VectorX &x, VectorTMP &) const
 Apply post-relaxation.
template<class Matrix, class VectorRHS, class VectorX>
void apply (const Matrix &A, const VectorRHS &rhs, VectorX &x) const
size_t bytes () const
 Memory used in bytes.

Additional Inherited Members

Public Attributes inherited from Arcane::Alina::GaussSeidelRelaxation< Backend >
bool is_serial

Detailed Description

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

Definition at line 79 of file DistributedRelaxation.h.

Member Typedef Documentation

◆ backend_params

template<class Backend>
typedef Backend::params Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::backend_params

Definition at line 84 of file DistributedRelaxation.h.

◆ backend_type

template<class Backend>
typedef Backend Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::backend_type

Definition at line 82 of file DistributedRelaxation.h.

◆ Base

template<class Backend>
typedef GaussSeidelRelaxation<Backend> Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::Base

Definition at line 83 of file DistributedRelaxation.h.

◆ params

template<class Backend>
typedef Base::params Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::params

Definition at line 85 of file DistributedRelaxation.h.

Constructor & Destructor Documentation

◆ DistributedGaussSeidelRelaxation()

template<class Backend>
Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::DistributedGaussSeidelRelaxation ( const DistributedMatrix< Backend > & A,
const params & prm = params(),
const backend_params & bprm = backend_params() )
inline

Definition at line 87 of file DistributedRelaxation.h.

Member Function Documentation

◆ apply()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX>
void Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::apply ( const Matrix & A,
const VectorRHS & rhs,
VectorX & x ) const
inline

Definition at line 106 of file DistributedRelaxation.h.

◆ apply_post()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::apply_post ( const Matrix & A,
const VectorRHS & rhs,
VectorX & x,
VectorTMP & t ) const
inline

Definition at line 100 of file DistributedRelaxation.h.

◆ apply_pre()

template<class Backend>
template<class Matrix, class VectorRHS, class VectorX, class VectorTMP>
void Arcane::Alina::DistributedGaussSeidelRelaxation< Backend >::apply_pre ( const Matrix & A,
const VectorRHS & rhs,
VectorX & x,
VectorTMP & t ) const
inline

Definition at line 94 of file DistributedRelaxation.h.


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