Alien  1.3.0
User documentation
Loading...
Searching...
No Matches
Alien::ChebyshevPreconditioner< AlgebraT, saad > Class Template Reference

Public Types

typedef AlgebraT AlgebraType
typedef AlgebraType::Matrix MatrixType
typedef AlgebraType::Vector VectorType
typedef MatrixType::ValueType ValueType

Public Member Functions

 ChebyshevPreconditioner (AlgebraType &algebra, MatrixType const &matrix, ValueType factor, int polynome_order, int factor_max_iter, ITraceMng *trace_mng=nullptr)
void setOutputLevel (int level)
void init ()
void computeBeta ()
void computeAlpha ()
void solve1 (const VectorType &x, VectorType &y) const
void solve2 (VectorType const &x, VectorType &y) const
void solve (const VectorType &x, VectorType &y) const
void _algo1 (AlgebraType &algebra, VectorType const &x, VectorType &y) const
void _algo2 (AlgebraType &algebra, VectorType const &x, VectorType &y) const
void solve (AlgebraType &algebra, VectorType const &x, VectorType &y) const

Static Public Attributes

static const bool m_use_saad_algo = saad

Detailed Description

template<typename AlgebraT, bool saad = false>
class Alien::ChebyshevPreconditioner< AlgebraT, saad >

Definition at line 32 of file ChebyshevPreconditioner.h.

Member Typedef Documentation

◆ AlgebraType

template<typename AlgebraT, bool saad = false>
typedef AlgebraT Alien::ChebyshevPreconditioner< AlgebraT, saad >::AlgebraType

Definition at line 37 of file ChebyshevPreconditioner.h.

◆ MatrixType

template<typename AlgebraT, bool saad = false>
typedef AlgebraType::Matrix Alien::ChebyshevPreconditioner< AlgebraT, saad >::MatrixType

Definition at line 38 of file ChebyshevPreconditioner.h.

◆ ValueType

template<typename AlgebraT, bool saad = false>
typedef MatrixType::ValueType Alien::ChebyshevPreconditioner< AlgebraT, saad >::ValueType

Definition at line 40 of file ChebyshevPreconditioner.h.

◆ VectorType

template<typename AlgebraT, bool saad = false>
typedef AlgebraType::Vector Alien::ChebyshevPreconditioner< AlgebraT, saad >::VectorType

Definition at line 39 of file ChebyshevPreconditioner.h.

Constructor & Destructor Documentation

◆ ChebyshevPreconditioner()

template<typename AlgebraT, bool saad = false>
Alien::ChebyshevPreconditioner< AlgebraT, saad >::ChebyshevPreconditioner ( AlgebraType & algebra,
MatrixType const & matrix,
ValueType factor,
int polynome_order,
int factor_max_iter,
ITraceMng * trace_mng = nullptr )
inline

Definition at line 43 of file ChebyshevPreconditioner.h.

◆ ~ChebyshevPreconditioner()

template<typename AlgebraT, bool saad = false>
virtual Alien::ChebyshevPreconditioner< AlgebraT, saad >::~ChebyshevPreconditioner ( )
inlinevirtual

Definition at line 57 of file ChebyshevPreconditioner.h.

Member Function Documentation

◆ _algo1()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::_algo1 ( AlgebraType & algebra,
VectorType const & x,
VectorType & y ) const
inline

Definition at line 318 of file ChebyshevPreconditioner.h.

◆ _algo2()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::_algo2 ( AlgebraType & algebra,
VectorType const & x,
VectorType & y ) const
inline

Definition at line 392 of file ChebyshevPreconditioner.h.

◆ computeAlpha()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::computeAlpha ( )
inline

Definition at line 158 of file ChebyshevPreconditioner.h.

◆ computeBeta()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::computeBeta ( )
inline

Definition at line 118 of file ChebyshevPreconditioner.h.

◆ init()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::init ( )
inline

Definition at line 73 of file ChebyshevPreconditioner.h.

◆ setOutputLevel()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::setOutputLevel ( int level)
inline

Definition at line 68 of file ChebyshevPreconditioner.h.

◆ solve() [1/2]

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::solve ( AlgebraType & algebra,
VectorType const & x,
VectorType & y ) const
inline

Definition at line 436 of file ChebyshevPreconditioner.h.

◆ solve() [2/2]

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::solve ( const VectorType & x,
VectorType & y ) const
inline
Parameters
yinput output

Definition at line 308 of file ChebyshevPreconditioner.h.

References solve1(), and solve2().

◆ solve1()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::solve1 ( const VectorType & x,
VectorType & y ) const
inline
Parameters
yinput output

Definition at line 204 of file ChebyshevPreconditioner.h.

Referenced by solve().

◆ solve2()

template<typename AlgebraT, bool saad = false>
void Alien::ChebyshevPreconditioner< AlgebraT, saad >::solve2 ( VectorType const & x,
VectorType & y ) const
inline
Parameters
yinput output

Definition at line 253 of file ChebyshevPreconditioner.h.

Referenced by solve().

Member Data Documentation

◆ m_use_saad_algo

template<typename AlgebraT, bool saad = false>
const bool Alien::ChebyshevPreconditioner< AlgebraT, saad >::m_use_saad_algo = saad
static

Definition at line 36 of file ChebyshevPreconditioner.h.


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