Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::BiCGStab< AlgebraT > Class Template Reference
Collaboration diagram for Alien::BiCGStab< AlgebraT >:

Classes

class  Iteration

Public Types

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

Public Member Functions

 BiCGStab (AlgebraType &algebra, ITraceMng *trace_mng=nullptr)
void setOutputLevel (int level)
template<typename PrecondT, typename iterT>
int solve (PrecondT &precond, iterT &iter, MatrixType const &A, VectorType const &b, VectorType &x)
template<typename PrecondT, typename iterT>
int solve2 (PrecondT &precond, iterT &iter, MatrixType const &A, VectorType const &b, VectorType &x)

Private Member Functions

void _print (int iter, std::string const &msg, std::string const &label0, ValueType value0)
void _print (int iter, std::string const &msg, std::string const &label0, ValueType value0, std::string const &label1, ValueType value1)
void _print (int iter, std::string const &msg, std::string const &label0, ValueType value0, std::string const &label1, ValueType value1, std::string const &label2, ValueType value2)
void _print (int iter, std::string const &msg, std::string const &label0, ValueType value0, std::string const &label1, ValueType value1, std::string const &label2, ValueType value2, std::string const &label3, ValueType value3)

Private Attributes

AlgebraType & m_algebra
ITraceMng * m_trace_mng = nullptr
int m_output_level = 0

Detailed Description

template<typename AlgebraT>
class Alien::BiCGStab< AlgebraT >

Definition at line 17 of file BiCGStab.h.

Member Typedef Documentation

◆ AlgebraType

template<typename AlgebraT>
typedef AlgebraT Alien::BiCGStab< AlgebraT >::AlgebraType

Definition at line 21 of file BiCGStab.h.

◆ FutureType

template<typename AlgebraT>
typedef AlgebraType::FutureType Alien::BiCGStab< AlgebraT >::FutureType

Definition at line 25 of file BiCGStab.h.

◆ MatrixType

template<typename AlgebraT>
typedef AlgebraType::Matrix Alien::BiCGStab< AlgebraT >::MatrixType

Definition at line 22 of file BiCGStab.h.

◆ ValueType

template<typename AlgebraT>
typedef MatrixType::ValueType Alien::BiCGStab< AlgebraT >::ValueType

Definition at line 24 of file BiCGStab.h.

◆ VectorType

template<typename AlgebraT>
typedef AlgebraType::Vector Alien::BiCGStab< AlgebraT >::VectorType

Definition at line 23 of file BiCGStab.h.

Constructor & Destructor Documentation

◆ BiCGStab()

template<typename AlgebraT>
Alien::BiCGStab< AlgebraT >::BiCGStab ( AlgebraType & algebra,
ITraceMng * trace_mng = nullptr )
inline

Definition at line 121 of file BiCGStab.h.

◆ ~BiCGStab()

template<typename AlgebraT>
virtual Alien::BiCGStab< AlgebraT >::~BiCGStab ( )
inlinevirtual

Definition at line 126 of file BiCGStab.h.

Member Function Documentation

◆ _print() [1/4]

template<typename AlgebraT>
void Alien::BiCGStab< AlgebraT >::_print ( int iter,
std::string const & msg,
std::string const & label0,
ValueType value0 )
inlineprivate

Definition at line 444 of file BiCGStab.h.

◆ _print() [2/4]

template<typename AlgebraT>
void Alien::BiCGStab< AlgebraT >::_print ( int iter,
std::string const & msg,
std::string const & label0,
ValueType value0,
std::string const & label1,
ValueType value1 )
inlineprivate

Definition at line 455 of file BiCGStab.h.

◆ _print() [3/4]

template<typename AlgebraT>
void Alien::BiCGStab< AlgebraT >::_print ( int iter,
std::string const & msg,
std::string const & label0,
ValueType value0,
std::string const & label1,
ValueType value1,
std::string const & label2,
ValueType value2 )
inlineprivate

Definition at line 466 of file BiCGStab.h.

◆ _print() [4/4]

template<typename AlgebraT>
void Alien::BiCGStab< AlgebraT >::_print ( int iter,
std::string const & msg,
std::string const & label0,
ValueType value0,
std::string const & label1,
ValueType value1,
std::string const & label2,
ValueType value2,
std::string const & label3,
ValueType value3 )
inlineprivate

Definition at line 478 of file BiCGStab.h.

◆ setOutputLevel()

template<typename AlgebraT>
void Alien::BiCGStab< AlgebraT >::setOutputLevel ( int level)
inline

Definition at line 129 of file BiCGStab.h.

◆ solve()

template<typename AlgebraT>
template<typename PrecondT, typename iterT>
int Alien::BiCGStab< AlgebraT >::solve ( PrecondT & precond,
iterT & iter,
MatrixType const & A,
VectorType const & b,
VectorType & x )
inline

Definition at line 135 of file BiCGStab.h.

◆ solve2()

template<typename AlgebraT>
template<typename PrecondT, typename iterT>
int Alien::BiCGStab< AlgebraT >::solve2 ( PrecondT & precond,
iterT & iter,
MatrixType const & A,
VectorType const & b,
VectorType & x )
inline

Definition at line 286 of file BiCGStab.h.

Member Data Documentation

◆ m_algebra

template<typename AlgebraT>
AlgebraType& Alien::BiCGStab< AlgebraT >::m_algebra
private

Definition at line 490 of file BiCGStab.h.

◆ m_output_level

template<typename AlgebraT>
int Alien::BiCGStab< AlgebraT >::m_output_level = 0
private

Definition at line 492 of file BiCGStab.h.

◆ m_trace_mng

template<typename AlgebraT>
ITraceMng* Alien::BiCGStab< AlgebraT >::m_trace_mng = nullptr
private

Definition at line 491 of file BiCGStab.h.


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