# la_gercond - Man Page

la_gercond: Skeel condition number estimate

## Synopsis

### Functions

real function **cla_gercond_c** (trans, n, a, lda, af, ldaf, ipiv, c, capply, info, work, rwork)**CLA_GERCOND_C** computes the infinity norm condition number of op(A)*inv(diag(c)) for general matrices.

real function **cla_gercond_x** (trans, n, a, lda, af, ldaf, ipiv, x, info, work, rwork)**CLA_GERCOND_X** computes the infinity norm condition number of op(A)*diag(x) for general matrices.

double precision function **dla_gercond** (trans, n, a, lda, af, ldaf, ipiv, cmode, c, info, work, iwork)**DLA_GERCOND** estimates the Skeel condition number for a general matrix.

real function **sla_gercond** (trans, n, a, lda, af, ldaf, ipiv, cmode, c, info, work, iwork)**SLA_GERCOND** estimates the Skeel condition number for a general matrix.

double precision function **zla_gercond_c** (trans, n, a, lda, af, ldaf, ipiv, c, capply, info, work, rwork)**ZLA_GERCOND_C** computes the infinity norm condition number of op(A)*inv(diag(c)) for general matrices.

double precision function **zla_gercond_x** (trans, n, a, lda, af, ldaf, ipiv, x, info, work, rwork)**ZLA_GERCOND_X** computes the infinity norm condition number of op(A)*diag(x) for general matrices.

## Detailed Description

## Function Documentation

### real function cla_gercond_c (character trans, integer n, complex, dimension( lda, * ) a, integer lda, complex, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, real, dimension( * ) c, logical capply, integer info, complex, dimension( * ) work, real, dimension( * ) rwork)

**CLA_GERCOND_C** computes the infinity norm condition number of op(A)*inv(diag(c)) for general matrices.

**Purpose:**

CLA_GERCOND_C computes the infinity norm condition number of op(A) * inv(diag(C)) where C is a REAL vector.

**Parameters***TRANS*TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate Transpose = Transpose)

*N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is COMPLEX array, dimension (LDA,N) On entry, the N-by-N matrix A

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is COMPLEX array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by CGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by CGETRF; row i of the matrix was interchanged with row IPIV(i).

*C*C is REAL array, dimension (N) The vector C in the formula op(A) * inv(diag(C)).

*CAPPLY*CAPPLY is LOGICAL If .TRUE. then access the vector C in the formula above.

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is COMPLEX array, dimension (2*N). Workspace.

*RWORK*RWORK is REAL array, dimension (N). Workspace.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **140** of file **cla_gercond_c.f**.

### real function cla_gercond_x (character trans, integer n, complex, dimension( lda, * ) a, integer lda, complex, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, complex, dimension( * ) x, integer info, complex, dimension( * ) work, real, dimension( * ) rwork)

**CLA_GERCOND_X** computes the infinity norm condition number of op(A)*diag(x) for general matrices.

**Purpose:**

CLA_GERCOND_X computes the infinity norm condition number of op(A) * diag(X) where X is a COMPLEX vector.

**Parameters***TRANS*TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate Transpose = Transpose)

*N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is COMPLEX array, dimension (LDA,N) On entry, the N-by-N matrix A.

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is COMPLEX array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by CGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by CGETRF; row i of the matrix was interchanged with row IPIV(i).

*X*X is COMPLEX array, dimension (N) The vector X in the formula op(A) * diag(X).

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is COMPLEX array, dimension (2*N). Workspace.

*RWORK*RWORK is REAL array, dimension (N). Workspace.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **133** of file **cla_gercond_x.f**.

### double precision function dla_gercond (character trans, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, integer cmode, double precision, dimension( * ) c, integer info, double precision, dimension( * ) work, integer, dimension( * ) iwork)

**DLA_GERCOND** estimates the Skeel condition number for a general matrix.

**Purpose:**

DLA_GERCOND estimates the Skeel condition number of op(A) * op2(C) where op2 is determined by CMODE as follows CMODE = 1 op2(C) = C CMODE = 0 op2(C) = I CMODE = -1 op2(C) = inv(C) The Skeel condition number cond(A) = norminf( |inv(A)||A| ) is computed by computing scaling factors R such that diag(R)*A*op2(C) is row equilibrated and computing the standard infinity-norm condition number.

**Parameters***TRANS*TRANS is CHARACTER*1 Specifies the form of the system of equations: = 'N': A * X = B (No transpose) = 'T': A**T * X = B (Transpose) = 'C': A**H * X = B (Conjugate Transpose = Transpose)

*N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is DOUBLE PRECISION array, dimension (LDA,N) On entry, the N-by-N matrix A.

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is DOUBLE PRECISION array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by DGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by DGETRF; row i of the matrix was interchanged with row IPIV(i).

*CMODE*CMODE is INTEGER Determines op2(C) in the formula op(A) * op2(C) as follows: CMODE = 1 op2(C) = C CMODE = 0 op2(C) = I CMODE = -1 op2(C) = inv(C)

*C*C is DOUBLE PRECISION array, dimension (N) The vector C in the formula op(A) * op2(C).

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is DOUBLE PRECISION array, dimension (3*N). Workspace.

*IWORK*IWORK is INTEGER array, dimension (N). Workspace.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **149** of file **dla_gercond.f**.

### real function sla_gercond (character trans, integer n, real, dimension( lda, * ) a, integer lda, real, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, integer cmode, real, dimension( * ) c, integer info, real, dimension( * ) work, integer, dimension( * ) iwork)

**SLA_GERCOND** estimates the Skeel condition number for a general matrix.

**Purpose:**

SLA_GERCOND estimates the Skeel condition number of op(A) * op2(C) where op2 is determined by CMODE as follows CMODE = 1 op2(C) = C CMODE = 0 op2(C) = I CMODE = -1 op2(C) = inv(C) The Skeel condition number cond(A) = norminf( |inv(A)||A| ) is computed by computing scaling factors R such that diag(R)*A*op2(C) is row equilibrated and computing the standard infinity-norm condition number.

**Parameters***TRANS**N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is REAL array, dimension (LDA,N) On entry, the N-by-N matrix A.

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is REAL array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by SGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by SGETRF; row i of the matrix was interchanged with row IPIV(i).

*CMODE*CMODE is INTEGER Determines op2(C) in the formula op(A) * op2(C) as follows: CMODE = 1 op2(C) = C CMODE = 0 op2(C) = I CMODE = -1 op2(C) = inv(C)

*C*C is REAL array, dimension (N) The vector C in the formula op(A) * op2(C).

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is REAL array, dimension (3*N). Workspace.

*IWORK*IWORK is INTEGER array, dimension (N). Workspace.2

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **148** of file **sla_gercond.f**.

### double precision function zla_gercond_c (character trans, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, double precision, dimension( * ) c, logical capply, integer info, complex*16, dimension( * ) work, double precision, dimension( * ) rwork)

**ZLA_GERCOND_C** computes the infinity norm condition number of op(A)*inv(diag(c)) for general matrices.

**Purpose:**

ZLA_GERCOND_C computes the infinity norm condition number of op(A) * inv(diag(C)) where C is a DOUBLE PRECISION vector.

**Parameters***TRANS**N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is COMPLEX*16 array, dimension (LDA,N) On entry, the N-by-N matrix A

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is COMPLEX*16 array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by ZGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by ZGETRF; row i of the matrix was interchanged with row IPIV(i).

*C*C is DOUBLE PRECISION array, dimension (N) The vector C in the formula op(A) * inv(diag(C)).

*CAPPLY*CAPPLY is LOGICAL If .TRUE. then access the vector C in the formula above.

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is COMPLEX*16 array, dimension (2*N). Workspace.

*RWORK*RWORK is DOUBLE PRECISION array, dimension (N). Workspace.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **140** of file **zla_gercond_c.f**.

### double precision function zla_gercond_x (character trans, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( ldaf, * ) af, integer ldaf, integer, dimension( * ) ipiv, complex*16, dimension( * ) x, integer info, complex*16, dimension( * ) work, double precision, dimension( * ) rwork)

**ZLA_GERCOND_X** computes the infinity norm condition number of op(A)*diag(x) for general matrices.

**Purpose:**

ZLA_GERCOND_X computes the infinity norm condition number of op(A) * diag(X) where X is a COMPLEX*16 vector.

**Parameters***TRANS**N*N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0.

*A*A is COMPLEX*16 array, dimension (LDA,N) On entry, the N-by-N matrix A.

*LDA*LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).

*AF*AF is COMPLEX*16 array, dimension (LDAF,N) The factors L and U from the factorization A = P*L*U as computed by ZGETRF.

*LDAF*LDAF is INTEGER The leading dimension of the array AF. LDAF >= max(1,N).

*IPIV*IPIV is INTEGER array, dimension (N) The pivot indices from the factorization A = P*L*U as computed by ZGETRF; row i of the matrix was interchanged with row IPIV(i).

*X*X is COMPLEX*16 array, dimension (N) The vector X in the formula op(A) * diag(X).

*INFO*INFO is INTEGER = 0: Successful exit. i > 0: The ith argument is invalid.

*WORK*WORK is COMPLEX*16 array, dimension (2*N). Workspace.

*RWORK*RWORK is DOUBLE PRECISION array, dimension (N). Workspace.

**Author**Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **133** of file **zla_gercond_x.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.