next up previous
Next: Accuracy Up: JDQZ Previous: Input arguments


Additional Options

Options.Pairs
Options.Chord
Options.NSigma
Options.FixShift
Options.Track
Options.AvoidStag

Options.Pairs       (default 'no')

If 'yes', then jdqz searches for the complex conjugate eigenpair whenever an eigenpair has been detected. If A and B are real matrices, or the operators correspond to real matrices, then  is an eigenpair if  is one. Since the eigenpairs are not computed in full accuracy and since a generalized Schur decomposition is computed instead of eigenpairs, the conjugate of an approximate eigenpair may not have the required precision and jdqz may take additional iterations to obtain the conjugate pair in the desired accuracy.


Options.Chord       (default 'yes')

To balance the influence of  and  , the eigenvalue problem


can be formulated as


where  and  . In this formulation, the chordal distance,


is a more natural measure of distance between the eigenvalues  and  than the standard measure  . Here,  and  .

With Options.Chord = 'yes', jdqz uses the chordal distance to order the approximate eigenvalues in cases Sigma is specified as a complex or a real number, or as a pair of complex or real numbers (as target for the desired eigenvalues  or  ,  ).


Options.Scale      (default 1)

Note that, for  , the eigenvalue problems  and  are mathematically equivalent. However, the scaling parameter affects the chordal distance between (approximate) eigenvectors. Rescaling may lead to a better balance between the two operators  and  . Instead of scaling the operator  , jdqz applies the scaling to intermediate low dimensional matrices (implicit scaling), which has the same effect, but may save computational costs.


Options.NSigma       (default 'no')

If 'yes', the jdqz takes as target for the second and following eigenvalues, the best approximate eigenvalues from the current test subspace. Here `best' is taken with respect to Sigma.


Options.FixShift        (default 'no')

If Options.FixShift is scalar and Sigma(1,:) is a scalar, then jdqz takes Sigma as shift in the correction equation until the norm of the residual times Options.FixShift is less than 1. From then on, the shift is taken equal to the present approximate eigenvalue.
If Options.FixShift = 'yes' then Options.FixShift= 1.0e+3.
If Options.FixShift = 'no' is the same as Options.FixShift = 0.


Options.Track      (default '1e-4')

If the wanted eigenvalue is relatively far from the target, then the algorithm may select approximate eigenvalues that are accidentally close to the target instead of the approximate eigenvalue that is close to the wanted eigenvalue. To avoid this type of misselection, the target can be moved to an approximate eigenvalue that is close to the wanted eigenvalue. The size of the norm of the residual is used to measure the quality of the approximate eigenvalue. If norm(r)<= Options.track, then the associated approximate eigenvalue is used as target in the next iteration step.


Options.AvoidStag       (default 'no')

In some situations, the algorithm stagnates because the computed expansion vector for the search subspace belongs to the search subspace or is close to it. With 'yes', jdqz tries to remedy this type of stagnation. In the correction equation in the next iteration step, jdqz projects then on the complete search subspace rather than on the current eigenvector approximation.


next up previous
Next: Accuracy Up: JDQZ Previous: Input arguments

Gerard L.G. Sleijpen 2002-05-02