:orphan: # KSPFBCGSR Implements a mathematically equivalent variant of flexible bi-CG-stab, `KSPFBCGS`. [](sec_flexibleksp) ## Notes This implementation requires fewer `MPI_Allreduce()` calls than `KSPFBCGS` and may converge faster See `KSPPIPEBCGS` for a pipelined version of the algorithm Flexible BiCGStab, unlike most Krylov methods, allows the preconditioner to be nonlinear, that is the action of the preconditioner to a vector need not be linear in the vector entries. Only supports right preconditioning ## See Also [](ch_ksp), [](sec_flexibleksp), `KSPFBCGSR`, `KSPPIPEBCGS`, `KSPBCGSL`, `KSPBCGS`, `KSPCreate()`, `KSPSetType()`, `KSPType`, `KSP`, `KSPBICG`, `KSPFBCGS`, `KSPSetPCSide()` ## Level beginner ## Location src/ksp/ksp/impls/bcgs/fbcgsr/fbcgsr.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/ksp/impls/bcgs/fbcgsr/fbcgsr.c) [Index of all KSP routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)