?la_syrpvgrw

Computes the reciprocal pivot growth factor `norm(A)/norm(U)` for a symmetric indefinite matrix.

Syntax

FORTRAN 77:

call sla_syrpvgrw( uplo, n, info, a, lda, af, ldaf, ipiv, work )

call dla_syrpvgrw( uplo, n, info, a, lda, af, ldaf, ipiv, work )

call cla_syrpvgrw( uplo, n, info, a, lda, af, ldaf, ipiv, work )

call zla_syrpvgrw( uplo, n, info, a, lda, af, ldaf, ipiv, work )

Include Files

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

Description

The ?la_syrpvgrw routine computes the reciprocal pivot growth factor `norm(A)/norm(U)`. The max absolute element norm is used. If this is much less than 1, the stability of the LU factorization of the equilibrated matrix A could be poor. This also means that the solution X, estimated condition numbers, and error bounds could be unreliable.

Input Parameters

 uplo CHARACTER*1. Must be 'U' or 'L'. Specifies the triangle of A to store: If `uplo = 'U'`, the upper triangle of A is stored, If `uplo = 'L'`, the lower triangle of A is stored. n INTEGER. The number of linear equations, the order of the matrix A; n ≥ 0. info INTEGER. The value of INFO returned from ?sytrf, that is, the pivot in column info is exactly 0. a, af REAL for sla_syrpvgrw DOUBLE PRECISION for dla_syrpvgrw COMPLEX for cla_syrpvgrw DOUBLE COMPLEX for zla_syrpvgrw. Arrays: `a(lda,*)`, `af(ldaf,*)`. The array a contains the input n-by-n matrix A. The second dimension of a must be at least `max(1,n)`. The array af contains the block diagonal matrix D and the multipliers used to obtain the factor U or L as computed by ?sytrf. The second dimension of af must be at least `max(1,n)`. lda INTEGER. The leading dimension of a; `lda ≥ max(1,n)`. ldaf INTEGER. The leading dimension of af; `ldaf ≥ max(1,n)`. ipiv INTEGER. Array, DIMENSION `n`. Details of the interchanges and the block structure of D as determined by ?sytrf. work REAL for sla_syrpvgrw and cla_syrpvgrw DOUBLE PRECISION for dla_syrpvgrw and zla_syrpvgrw. Workspace array, dimension 2*n.