Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BiCGStab(ℓ) #134

merged 10 commits into from Jul 14, 2017

BiCGStab(ℓ) #134

merged 10 commits into from Jul 14, 2017


Copy link

haampie commented Jul 6, 2017

This is still a work in progress version of BiCGStab(ℓ). It is based on the original article, uses BLAS and includes left preconditioning.


  • Incorporate the convergence history stuff.
  • Improvement of [1]
  • Improvement of [2]

[1] Sleijpen, Gerard LG, and Henk A. Vorst. "Maintaining convergence properties of BiCGstab methods in finite precision arithmetic." Numerical Algorithms 10.2 (1995): 203-223.
[2] Sleijpen, G. LG, and Henk A. van der Vorst. "Reliable updated residuals in hybrid Bi-CG methods." Computing 56.2 (1996): 141-163.

Copy link

codecov-io commented Jul 6, 2017

Codecov Report

Merging #134 into master will increase coverage by 0.21%.
The diff coverage is 89.47%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #134      +/-   ##
+ Coverage   84.97%   85.19%   +0.21%     
  Files          19       20       +1     
  Lines        1478     1554      +76     
+ Hits         1256     1324      +68     
- Misses        222      230       +8
Impacted Files Coverage Δ
src/bicgstabl.jl 89.47% <89.47%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9e435ba...5fe54d9. Read the comment docs.

@haampie haampie force-pushed the haampie:feature-bicgstab-l branch from 8dc03bf to fea2d6e Jul 6, 2017
Copy link
Collaborator Author

haampie commented Jul 11, 2017

At the moment I don't think it is completely necessary to implement the improvements from the papers. The thing is there is no standard implementation of BiCGStab(ℓ) and there's a lot of freedom.

The current implementation works fine for moderate values of . if someone wants to use large and still have enough precision, then it's a good idea to switch to a fancy implementation that solves the polynomial part using Gram-Schmidt rather than normal equations and once in a while recomputes the exact residual.

@haampie haampie force-pushed the haampie:feature-bicgstab-l branch from 3e2e62c to 5fe54d9 Jul 11, 2017
@haampie haampie force-pushed the haampie:feature-bicgstab-l branch from 5fe54d9 to 503411b Jul 11, 2017
@haampie haampie mentioned this pull request Jul 11, 2017
@haampie haampie changed the title WIP BiCGStab(ℓ) BiCGStab(ℓ) Jul 14, 2017
@andreasnoack andreasnoack merged commit eacea1a into JuliaMath:master Jul 14, 2017
2 checks passed
2 checks passed
continuous-integration/travis-ci/pr The Travis CI build passed
coverage/coveralls Coverage increased (+0.2%) to 85.199%
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.