ALP User Documentation 0.7.0
Algebraic Programming User Documentation
Namespaces | Functions
bicgstab.hpp File Reference

Implements the BiCGstab algorithm. More...

Go to the source code of this file.

Namespaces

namespace  grb
 The ALP/GraphBLAS namespace.
 
namespace  grb::algorithms
 The namespace for ALP/GraphBLAS algorithms.
 

Functions

template<Descriptor descr = descriptors::no_operation, typename IOType , typename NonzeroType , typename InputType , typename ResidualType , class Semiring = Semiring< operators::add< InputType, InputType, InputType >, operators::mul< IOType, NonzeroType, InputType >, identities::zero, identities::one >, class Minus = operators::subtract< ResidualType >, class Divide = operators::divide< ResidualType >>
RC bicgstab (grb::Vector< IOType > &x, const grb::Matrix< NonzeroType > &A, const grb::Vector< InputType > &b, const size_t max_iterations, ResidualType tol, size_t &iterations, ResidualType &residual, Vector< InputType > &r, Vector< InputType > &rhat, Vector< InputType > &p, Vector< InputType > &v, Vector< InputType > &s, Vector< InputType > &t, const Semiring &semiring=Semiring(), const Minus &minus=Minus(), const Divide &divide=Divide())
 Solves a linear system \( b = Ax \) with \( x \) unknown by using the bi-conjugate gradient (bi-CG) stabilised method; i.e., BiCGstab. More...
 

Detailed Description

Implements the BiCGstab algorithm.

Author
A. N. Yzelman
Date
15th of February, 2022
Implementation time

To be taken with a pinch of salt, as it is highly subjective: