The Generalized Product Bi-Conjugate Gradient (GPBiCG) solver is an alternative version of the Bi-Conjugate Gradient stabilized (CG) solver. Unlike the CG solver the GPBiCG solver can be used on non-symmetric matrices. Note that much of the success of the solver depends on the selection of the proper preconditioner.
The GPBiCG algorithm was taken from: GPBiCG(m,l): A hybrid of BiCGSTAB and GPBiCG methods with efficiency and robustness S. Fujino Applied Numerical Mathematics, Volume 41, 2002, pp 107 - 117
The example code below provides an indication of the possible use of the solver.
Matrix<T>
matrixThe coefficient matrix, A
.
Vector<T>
inputThe solution vector, b
Vector<T>
resultThe result vector, x
Iterator<T>
iteratorThe iterator to use to control when to stop iterating.
IPreconditioner<T>
preconditionerThe preconditioner to use for approximations.
BiCgStab
algorithm
before switching over to the GPBiCG
algorithm.
GPBiCG
algorithm
before switching over to the BiCgStab
algorithm.