next up previous
Next: Way of Up: JDQZ Previous: JDQZ


Preconditioning in jdqz

The action `M inverse' of the preconditioner M (an approximation of A-lambda$\ast$B) on an n-vector v can be defined in the Options

  Options.Precond
Options.L$\underline{~}$Precond       (same as Options.Precond)
Options.U$\underline{~}$Precond
Options.P$\underline{~}$Precond


If no preconditioner has been specified (or is [ ]), then M$\backslash$v = v (M is the identity).

If Precond is an n by n matrix, say, K, then

      M$\backslash$v = K$\backslash$v.

If Precond is an N by 2$\ast$N matrix, say, K, then

      M$\backslash$v = U$\backslash$L$\backslash$v, where K = [L,U], and L and U are n by n matrices.

If Precond is a string, say, 'Mi', then

  if Mi(v,'L') and Mi(v,'U') return n-vectors
        M$\backslash$v = Mi(Mi(v,'L'),'U')
  otherwise
        M$\backslash$v = Mi(v) or M$\backslash$v = Mi(v,'preconditioner').

Note that Precond and A can be the same string.

If L$\underline{~}$Precond and U$\underline{~}$Precond are strings, say, 'Li' and 'Ui', respectively, then

      M$\backslash$v = Ui(Li(v)).

If (P$\underline{~}$precond,) L$\underline{~}$Precond, and U$\underline{~}$precond are n by n matrices, say, (P,) L, and U, respectively, then

      M$\backslash$v = U$\backslash$L$\backslash$(P$\ast$v)       (i.e., P$\ast$M = L$\ast$U).


The way the preconditioner is used can be specified in the Options.


next up previous
Next: Way of Up: JDQZ Previous: JDQZ

Gerard L.G. Sleijpen 2002-05-02