DLACN2(3f)

NAME
DLACN2 - the 1-norm of a square, real matrix A

SYNOPSIS

SUBROUTINE DLACN2(
    N, V, X, ISGN, EST, KASE, ISAVE )

INTEGER
    KASE, N

DOUBLE
    PRECISION EST

INTEGER
    ISGN( * ), ISAVE( 3 )

DOUBLE
    PRECISION V( * ), X( * )

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

ARGUMENTS

N      (input) INTEGER
    The order of the matrix. N >= 1.

V      (workspace) DOUBLE PRECISION array, dimension (N)
    On the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned).

X      (input/output) DOUBLE PRECISION array, dimension (N)
    On an intermediate return, X should be overwritten by A * X, if KASE=1, A' * X, if KASE=2, and DLACN2 must be re-called with all the other parameters unchanged.

ISGN   (workspace) INTEGER array, dimension (N)

EST    (input/output) DOUBLE PRECISION
    On entry with KASE = 1 or 2 and ISAVE(1) = 3, EST should be unchanged from the previous call to DLACN2. On exit, EST is an estimate (a lower bound) for norm(A).

KASE   (input/output) INTEGER
    On the initial call to DLACN2, 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 DLACN2, KASE will again be 0.

ISAVE  (input/output) INTEGER array, dimension (3)
    ISAVE is used to save variables between calls to DLACN2

FURTHER DETAILS
Contributed by Nick Higham, University of Manchester.
Originally named SONEST, 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. This is a thread safe version of DLACON, which uses the array ISAVE in place of a SAVE statement, as follows:
   DLACON DLACN2
    JUMP ISAVE(1)
    J ISAVE(2)
    ITER ISAVE(3)