CLACN2(3) estimates the 1-norm of a square, complex matrix A

SYNOPSIS

SUBROUTINE CLACN2(
N, V, X, EST, KASE, ISAVE )

    
INTEGER KASE, N

    
REAL EST

    
INTEGER ISAVE( 3 )

    
COMPLEX V( * ), X( * )

PURPOSE

CLACN2 estimates the 1-norm of a square, complex matrix A. Reverse communication is used for evaluating matrix-vector products.

ARGUMENTS

N (input) INTEGER
The order of the matrix. N >= 1.
V (workspace) COMPLEX array, dimension (N)
On the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned).
X (input/output) COMPLEX array, dimension (N)
On an intermediate return, X should be overwritten by A * X, if KASE=1, A' * X, if KASE=2, where A' is the conjugate transpose of A, and CLACN2 must be re-called with all the other parameters unchanged.
EST (input/output) REAL
On entry with KASE = 1 or 2 and ISAVE(1) = 3, EST should be unchanged from the previous call to CLACN2. On exit, EST is an estimate (a lower bound) for norm(A).
KASE (input/output) INTEGER
On the initial call to CLACN2, KASE should be 0. On an intermediate return, KASE will be 1 or 2, indicating whether X should be overwritten by A * X or A' * X. On the final return from CLACN2, KASE will again be 0.
ISAVE (input/output) INTEGER array, dimension (3)
ISAVE is used to save variables between calls to SLACN2

FURTHER DETAILS

Contributed by Nick Higham, University of Manchester.
Originally named CONEST, dated March 16, 1988.
Reference: N.J. Higham, "FORTRAN codes for estimating the one-norm of a real or complex matrix, with applications to condition estimation", ACM Trans. Math. Soft., vol. 14, no. 4, pp. 381-396, December 1988. Last modified: April, 1999
This is a thread safe version of CLACON, which uses the array ISAVE in place of a SAVE statement, as follows:

   CLACON     CLACN2

    JUMP     ISAVE(1)

    J        ISAVE(2)

    ITER     ISAVE(3)