Note:this routine usesoptional parametersto define choices in the problem specification. If you wish to use default settings for all of the optional parameters, then the option setting routine f12fdf need not be called.
If, however, you wish to reset some or all of the settings please refer to Section 11 in f12fdf for a detailed description of the specification of the optional parameters.
f12fef can be used to return additional monitoring information during computation. It is in a suite of routines which includes f12faf,f12fbf,f12fcfandf12fdf.
The routine may be called by the names f12fef or nagf_sparseig_real_symm_monit.
3Description
The suite of routines is designed to calculate some of the eigenvalues, , (and optionally the corresponding eigenvectors, ) of a standard eigenvalue problem , or of a generalized eigenvalue problem of order , where is large and the coefficient matrices and are sparse, real and symmetric. The suite can also be used to find selected eigenvalues/eigenvectors of smaller scale dense, real and symmetric problems.
On an intermediate exit from f12fbf with , f12fef may be called to return monitoring information on the progress of the Arnoldi iterative process. The information returned by f12fef is:
–the number of the current Arnoldi iteration;
–the number of converged eigenvalues at this point;
–the real and imaginary parts of the converged eigenvalues;
–the error bounds on the converged eigenvalues.
f12fef does not have an equivalent routine from the ARPACK package which prints various levels of detail of monitoring information through an output channel controlled via an argument value (see Lehoucq et al. (1998) for details of ARPACK routines). f12fef should not be called at any time other than immediately following an return from f12fbf.
4References
Lehoucq R B (2001) Implicitly restarted Arnoldi methods and subspace iteration SIAM Journal on Matrix Analysis and Applications23 551–562
Lehoucq R B and Scott J A (1996) An evaluation of software for computing eigenvalues of sparse nonsymmetric matrices Preprint MCS-P547-1195 Argonne National Laboratory
Lehoucq R B and Sorensen D C (1996) Deflation techniques for an implicitly restarted Arnoldi iteration SIAM Journal on Matrix Analysis and Applications17 789–821
Lehoucq R B, Sorensen D C and Yang C (1998) ARPACK Users' Guide: Solution of Large-scale Eigenvalue Problems with Implicitly Restarted Arnoldi Methods SIAM, Philadelphia
5Arguments
1: – IntegerOutput
On exit: the number of the current Arnoldi iteration.
2: – IntegerOutput
On exit: the number of converged eigenvalues so far.
3: – Real (Kind=nag_wp) arrayOutput
Note: the dimension of the array ritz
must be at least
(see f12faf).
On exit: the first nconv locations of the array ritz contain the real converged approximate eigenvalues.
4: – Real (Kind=nag_wp) arrayOutput
Note: the dimension of the array rzest
must be at least
(see f12faf).
On exit: the first nconv locations of the array rzest contain the Ritz estimates (error bounds) on the real nconv converged approximate eigenvalues.
5: – Integer arrayCommunication Array
Note: the dimension of the array icomm
must be at least
, where
licomm
is passed to the setup routine
(see f12faf).
On entry: the array icomm output by the preceding call to f12fbf.
6: – Real (Kind=nag_wp) arrayCommunication Array
Note: the dimension of the array comm
must be at least
, where
lcomm
is passed to the setup routine
(see f12faf).
On entry: the array comm output by the preceding call to f12fbf.
6Error Indicators and Warnings
None.
7Accuracy
A Ritz value, , is deemed to have converged if its Ritz estimate . The default Tolerance used is the machine precision given by x02ajf.
8Parallelism and Performance
Background information to multithreading can be found in the Multithreading documentation.
f12fef is not threaded in any implementation.
9Further Comments
None.
10Example
This example solves using the Buckling option (see f12fdf, where and are obtained by the finite element method applied to the one-dimensional discrete Laplacian operator
on , with zero Dirichlet boundary conditions using piecewise linear elements. The shift, , is a real number, and the operator used in the Buckling iterative process is and .