next up previous
Next: Input arguments Up: JDQZ Previous: Preconditioning in

Subsections


Way of using a preconditioner

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

Options.Type$\underline{~}$Precond      (default 'left')

The preconditioner can be used as explicit left preconditioner ('left'), as explicit right preconditioner ('right'), or implicitly ('impl').


In this subsection,

$\bullet$ an MV (matrix vector multiplication) is an operation by A together with an operation by B,

$\bullet$ a PS (preconditioner solve) is a solution of the system $Mt=v$, where $M$ is the preconditioner (i.e., the computation of M$\backslash$v),

Explicit versus implicit.

If explicit preconditioning is used, then there is an additional PS needed each time the correction equation is solved. The total number of PSs that jdqz will take is equal to the total number of MVs plus the number of Jacobi-Davidson steps (the number of outer iterations).

With implicit preconditioning the number of PSs reduces to the number of MVs plus the number of detected eigenvalues. However, implicit preconditioning requires more memory. For BiCGstab(ell), 2$\ast$ell additional n-vectors have to be stored. If GMRES is requested as linear solver, then FGMRES is used, requiring storage of an additional $m$ n-vectors. Here $m$ is the maximum number of steps that GMRES needs to achieve the required residual reduction.

By storing the preconditioned vectors of the search subspace the number of PSs can be reduced even further. Then the number of PSs will be equal to the number of MVs. However, this strategy has not been implemented in jdqz.

There may be a slight deviation in the count of PSs and MVs if jdqz detects more than one eigenpair at the same iteration step.

Right versus left.

If explicit right preconditioning is used, then the size of the residual is available in the inner loop, that is, the size of the residual of the iterative solver for the correction equation. With explicit left preconditioning, only `preconditioned' residuals are available. However, right preconditioning, as well as implicit preconditioning, requires slightly more projections.


next up previous
Next: Input arguments Up: JDQZ Previous: Preconditioning in

Gerard L.G. Sleijpen 2002-05-02