marian::TridiagonalSolver Class Referenceabstract

Interface of tridiagonal system solvers. More...

#include <tridiagonalSolver.hpp>

Inheritance diagram for marian::TridiagonalSolver:
marian::DCTridiagonalSolver< LUSolver > marian::DCTridiagonalSolver< T > marian::LUSolver

Public Member Functions

 TridiagonalSolver ()
 Constructor.
 
virtual std::vector< double > solve (const TridiagonalOperator &A, const std::vector< double > &w) const =0
 Method solves tridiagonal system using algorithm implemented in derived classes. More...
 
virtual TridiagonalSolverclone () const =0
 Virtual copy constructor.
 
virtual ~TridiagonalSolver ()
 Destructor.
 

Detailed Description

Method solves below system

\[w = A \times v\]

where $w$ is real number vector, and $A$ is tridiagonal operator. This class is used to perform implicit step in FDM algorithm

Todo:
Implement Successive over-relaxation method [1]

Member Function Documentation

virtual std::vector<double> marian::TridiagonalSolver::solve ( const TridiagonalOperator A,
const std::vector< double > &  w 
) const
pure virtual

Method solves below system

\[w = A \times v\]

Parameters
ATridiagonal matrix defining tridiagonal system
wVector of real numbers
Returns
Vector of real numbers being solution of system: $w = A \times v$

Implemented in marian::LUSolver.


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