Jump to content

Biconjugate gradient method

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Mange01 (talk | contribs) at 12:08, 17 October 2006. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In mathematics, more specifically in numerical analysis, the biconjugate gradient method is an algorithm to solve systems of linear equations

Unlike the conjugate gradient method, this algorithm does not require the matrix to be self-adjoint, but instead one needs to perform multiplications by the conjugate transpose .

The algorithm

  1. Choose , , a regular preconditioner (frequently is used) and ;
  2. ;
  3. ;
  4. for do
  5. ;
  6. ;
  7. , ( and are the residuums);
  8. ;
  9. , .


Discussion

The bicg method is numerically unstable, but very important from theoretical point of view: Define the iteration steps by and () using the related projection

,

where and . These related projections may be iterated themselves, as

.

The new directions and then are orthogonal to the residuums: and , which themselves satisfy and ().

The biconjugate gradient method now makes a special choice and uses the setting

and .

This special choice allows to avoid direct evaluations of and , and subsequently leads to the algorithm as stated above.

Properties

  • If is self-adjoint, and , then , , and the conjugate gradient method produces the same sequence .
  • In finite dimensions , at the latest when : The biconjugate gradient method returns the exact solution after iterating the full space and thus is a direct method.
  • The sequences produced by the algorithm are biorthogonal: and for .
  • if is a polynomial with , then . The algorithm thus produces projections onto the Krylov subspace;
  • if is a polynomial with , then .