OpenFCST: The open-source Fuel Cell Simulation Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
LinearSolvers::GMRESSolver Class Reference

This class implements GMRES solver. More...

#include <linear_solvers.h>

Public Member Functions

Constructors, destructor, and initialization
 GMRESSolver ()
 Constructor. More...
 
 ~GMRESSolver ()
 Destructor. More...
 
Solve function
template<typename MATRIX , typename VECTOR , typename PRECONDITIONER >
void solve (const MATRIX &matrix, VECTOR &solution, const VECTOR &right_hand_side, const unsigned int &n_iter, const double &tolerance, const PRECONDITIONER &preconditioner) const
 This function solves the linear system Ax = b where. More...
 
template<typename MATRIX , typename VECTOR , typename PRECONDITIONER >
void solve (SolverControl &solver_control, const MATRIX &matrix, VECTOR &solution, const VECTOR &right_hand_side, const PRECONDITIONER &preconditioner) const
 This routine is used when solver_control is an object already initialized. More...
 

Detailed Description

This class implements GMRES solver.

Author
Valentin N. Zingan, 2013
Marc Secanell Gallart, 2013

Constructor & Destructor Documentation

LinearSolvers::GMRESSolver::GMRESSolver ( )
inline

Constructor.

References FcstUtilities::log.

LinearSolvers::GMRESSolver::~GMRESSolver ( )
inline

Destructor.

Member Function Documentation

template<typename MATRIX , typename VECTOR , typename PRECONDITIONER >
void LinearSolvers::GMRESSolver::solve ( const MATRIX &  matrix,
VECTOR &  solution,
const VECTOR &  right_hand_side,
const unsigned int &  n_iter,
const double &  tolerance,
const PRECONDITIONER &  preconditioner 
) const
inline

This function solves the linear system Ax = b where.

  • A = matrix,
  • x = solution,
  • b = right_hand_side.

Other data includes

  • n_iter is the max number of GMRES iterations,
  • tolerance is the tolerance of GMRES solver,
  • preconditioner is the preconditioner used.
template<typename MATRIX , typename VECTOR , typename PRECONDITIONER >
void LinearSolvers::GMRESSolver::solve ( SolverControl &  solver_control,
const MATRIX &  matrix,
VECTOR &  solution,
const VECTOR &  right_hand_side,
const PRECONDITIONER &  preconditioner 
) const
inline

This routine is used when solver_control is an object already initialized.

This function solves the linear system Ax = b where

  • A = matrix,
  • x = solution,
  • b = right_hand_side.
  • solver_control

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