NAG Library Routine Document

f12asf  (complex_monit)

Note: this routine uses optional parameters to define choices in the problem specification. If you wish to use default settings for all of the optional parameters, then the option setting routine f12arf need not be called. If, however, you wish to reset some or all of the settings please refer to Section 11 in f12arf for a detailed description of the specification of the optional parameters.

 Contents

    1  Purpose
    7  Accuracy

1
Purpose

f12asf can be used to return additional monitoring information during computation. It is in a suite of routines consisting of f12anf, f12apf, f12aqf, f12arf and f12asf.

2
Specification

Fortran Interface
Subroutine f12asf ( niter, nconv, ritz, rzest, icomm, comm)
Integer, Intent (In):: icomm(*)
Integer, Intent (Out):: niter, nconv
Complex (Kind=nag_wp), Intent (In):: comm(*)
Complex (Kind=nag_wp), Intent (Inout):: ritz(*), rzest(*)
C Header Interface
#include nagmk26.h
void  f12asf_ ( Integer *niter, Integer *nconv, Complex ritz[], Complex rzest[], const Integer icomm[], const Complex comm[])

3
Description

The suite of routines is designed to calculate some of the eigenvalues, λ , (and optionally the corresponding eigenvectors, x ) of a standard complex eigenvalue problem Ax = λx , or of a generalized complex eigenvalue problem Ax = λBx  of order n , where n  is large and the coefficient matrices A  and B  are sparse and complex. The suite can also be used to find selected eigenvalues/eigenvectors of smaller scale dense complex problems.
On an intermediate exit from f12apf with irevcm = 4 , f12asf may be called to return monitoring information on the progress of the Arnoldi iterative process. The information returned by f12asf is:
the number of the current Arnoldi iteration;
the number of converged eigenvalues at this point;
the converged eigenvalues;
the error bounds on the converged eigenvalues.
f12asf 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). f12asf should not be called at any time other than immediately following an irevcm = 4  return from f12apf.

4
References

Lehoucq R B (2001) Implicitly restarted Arnoldi methods and subspace iteration SIAM Journal on Matrix Analysis and Applications 23 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 Applications 17 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, Philidelphia

5
Arguments

1:     niter – IntegerOutput
On exit: the number of the current Arnoldi iteration.
2:     nconv – IntegerOutput
On exit: the number of converged eigenvalues so far.
3:     ritz* – Complex (Kind=nag_wp) arrayOutput
Note: the dimension of the array ritz must be at least ncv (see f12anf).
On exit: the first nconv locations of the array ritz contain the converged approximate eigenvalues.
4:     rzest* – Complex (Kind=nag_wp) arrayOutput
Note: the dimension of the array rzest must be at least ncv (see f12anf).
On exit: the first nconv locations of the array rzest contain the complex Ritz estimates on the converged approximate eigenvalues.
5:     icomm* – Integer arrayCommunication Array
Note: the dimension of the array icomm must be at least max1,licomm, where licomm is passed to the setup routine  (see f12anf).
On entry: the array icomm output by the preceding call to f12apf.
6:     comm* – Complex (Kind=nag_wp) arrayCommunication Array
Note: the dimension of the array comm must be at least max1,lcomm, where lcomm is passed to the setup routine  (see f12anf).
On entry: the array comm output by the preceding call to f12apf.

6
Error Indicators and Warnings

None.

7
Accuracy

A Ritz value, λ , is deemed to have converged if the magnitude of its Ritz estimate Tolerance × λ . The default Tolerance used is the machine precision given by x02ajf.

8
Parallelism and Performance

f12asf is not threaded in any implementation.

9
Further Comments

None.

10
Example

This example solves Ax = λBx  in shifted-inverse mode, where A  and B  are obtained from the standard central difference discretization of the one-dimensional convection-diffusion operator d2u dx2 + ρ du dx  on 0,1 , with zero Dirichlet boundary conditions. The shift, σ , is a complex number, and the operator used in the shifted-inverse iterative process is OP = invA - σB × B .

10.1
Program Text

Program Text (f12asfe.f90)

10.2
Program Data

Program Data (f12asfe.d)

10.3
Program Results

Program Results (f12asfe.r)

© The Numerical Algorithms Group Ltd, Oxford, UK. 2017