---
name: "clacn2.f"
section: "3"
platform: "linux"
package: "lapack-doc"
version: "3.12.1-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/clacn2.f"
---

# clacn2.f(3)

## NAME

SRC/clacn2.f

## SYNOPSIS

### Functions/Subroutines

subroutine **clacn2** (n, v, x, est, kase, isave)\
 **CLACN2** estimates the 1-norm of a square matrix, using reverse communication for evaluating matrix-vector products.

## Function/Subroutine Documentation

### subroutine clacn2 (integer n, complex, dimension( \* ) v, complex, dimension( \* ) x, real est, integer kase, integer, dimension( 3 ) isave)

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

**Purpose:**

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

**Parameters**

*N*

```
!>          N is INTEGER
!>         The order of the matrix.  N >= 1.
!>
```

*V*

```
!>          V is COMPLEX array, dimension (N)
!>         On the final return, V = A*W,  where  EST = norm(V)/norm(W)
!>         (W is not returned).
!>
```

*X*

```
!>          X is COMPLEX array, dimension (N)
!>         On an intermediate return, X should be overwritten by
!>               A * X,   if KASE=1,
!>               A**H * X,  if KASE=2,
!>         where A**H is the conjugate transpose of A, and CLACN2 must be
!>         re-called with all the other parameters unchanged.
!>
```

*EST*

```
!>          EST is 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*

```
!>          KASE is 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**H * X.
!>         On the final return from CLACN2, KASE will again be 0.
!>
```

*ISAVE*

```
!>          ISAVE is INTEGER array, dimension (3)
!>         ISAVE is used to save variables between calls to SLACN2
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>  Originally named CONEST, dated March 16, 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)
!>
```

**Contributors:**

Nick Higham, University of Manchester

**References:**

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.

Definition at line **132** of file **clacn2.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
