?lacon

Estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vector products.

Syntax

call slacon( n, v, x, isgn, est, kase )

call dlacon( n, v, x, isgn, est, kase )

call clacon( n, v, x, est, kase )

call zlacon( n, v, x, est, kase )

Include Files

  • Fortran: mkl.fi
  • C: mkl.h

Description

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

warning

The ?lacon routine is not thread-safe. It is deprecated and retained for the backward compatibility only. Use the thread-safe ?lacn2 routine instead.

Input Parameters

n

INTEGER. The order of the matrix A (n 1).

v, x

REAL for slacon

DOUBLE PRECISION for dlacon

COMPLEX for clacon

DOUBLE COMPLEX for zlacon.

Arrays, DIMENSION (n) each.

v is a workspace array.

x is used as input after an intermediate return.

isgn

INTEGER.

Workspace array, DIMENSION (n), used with real flavors only.

est

REAL for slacon/clacon

DOUBLE PRECISION for dlacon/zlacon

An estimate that with kase=1 or 2 should be unchanged from the previous call to ?lacon.

kase

INTEGER.

On the initial call to ?lacon, kase should be 0.

Output Parameters

est

REAL for slacon/clacon

DOUBLE PRECISION for dlacon/zlacon

An estimate (a lower bound) for norm(A).

kase

On an intermediate return, kase will be 1 or 2, indicating whether x should be overwritten by A*x or AT*x for real flavors and A*x or AH*x for complex flavors. On the final return from ?lacon, kase will again be 0.

v

On the final return, v = A*w, where est = norm(v)/norm(w) (w is not returned).

x

On an intermediate return, x should be overwritten by

A*x, if kase = 1,

AT*x, if kase = 2 (for real flavors),

AH*x, if kase = 2 (for complex flavors),

and ?lacon must be re-called with all the other parameters unchanged.

For more complete information about compiler optimizations, see our Optimization Notice.