zla_syrpvgrw - compute the reciprocal pivot growth factor norm(A)/norm(U) for a symmetric indefinite matrix
DOUBLE PRECISION FUNCTION ZLA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) INTEGER N, INFO, LDA, LDAF DOUBLE COMPLEX A(LDA,*), AF(LDAF,*) DOUBLE PRECISION WORK(*) INTEGER IPIV(*) DOUBLE PRECISION FUNCTION ZLA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) INTEGER*8 N, INFO, LDA, LDAF DOUBLE COMPLEX A(LDA,*), AF(LDAF,*) DOUBLE PRECISION WORK(*) INTEGER*8 IPIV(*) F95 INTERFACE REAL(8) FUNCTION LA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) INTEGER :: N, INFO, LDA, LDAF CHARACTER(LEN=1) :: UPLO INTEGER, DIMENSION(:) :: IPIV COMPLEX(8), DIMENSION(:) :: WORK COMPLEX(8), DIMENSION(:,:) :: A, AF REAL(8) FUNCTION LA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) INTEGER(8) :: N, INFO, LDA, LDAF CHARACTER(LEN=1) :: UPLO INTEGER(8), DIMENSION(:) :: IPIV COMPLEX(8), DIMENSION(:) :: WORK COMPLEX(8), DIMENSION(:,:) :: A, AF C INTERFACE #include <sunperf.h> double zla_syrpvgrw (char uplo, int n, int info, doublecomplex *a, int lda, doublecomplex *af, int ldaf, int *ipiv); double zla_syrpvgrw_64 (char uplo, long n, long info, doublecomplex *a, long lda, doublecomplex *af, long ldaf, long *ipiv);
Oracle Solaris Studio Performance Library zla_syrpvgrw(3P)
NAME
zla_syrpvgrw - compute the reciprocal pivot growth factor
norm(A)/norm(U) for a symmetric indefinite matrix
SYNOPSIS
DOUBLE PRECISION FUNCTION ZLA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF,
IPIV, WORK)
INTEGER N, INFO, LDA, LDAF
DOUBLE COMPLEX A(LDA,*), AF(LDAF,*)
DOUBLE PRECISION WORK(*)
INTEGER IPIV(*)
DOUBLE PRECISION FUNCTION ZLA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF,
LDAF, IPIV, WORK)
INTEGER*8 N, INFO, LDA, LDAF
DOUBLE COMPLEX A(LDA,*), AF(LDAF,*)
DOUBLE PRECISION WORK(*)
INTEGER*8 IPIV(*)
F95 INTERFACE
REAL(8) FUNCTION LA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV,
WORK)
INTEGER :: N, INFO, LDA, LDAF
CHARACTER(LEN=1) :: UPLO
INTEGER, DIMENSION(:) :: IPIV
COMPLEX(8), DIMENSION(:) :: WORK
COMPLEX(8), DIMENSION(:,:) :: A, AF
REAL(8) FUNCTION LA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV,
WORK)
INTEGER(8) :: N, INFO, LDA, LDAF
CHARACTER(LEN=1) :: UPLO
INTEGER(8), DIMENSION(:) :: IPIV
COMPLEX(8), DIMENSION(:) :: WORK
COMPLEX(8), DIMENSION(:,:) :: A, AF
C INTERFACE
#include <sunperf.h>
double zla_syrpvgrw (char uplo, int n, int info, doublecomplex *a, int
lda, doublecomplex *af, int ldaf, int *ipiv);
double zla_syrpvgrw_64 (char uplo, long n, long info, doublecomplex *a,
long lda, doublecomplex *af, long ldaf, long *ipiv);
PURPOSE
zla_syrpvgrw 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 (equili-
brated) matrix A could be poor. This also means that the solution X,
estimated condition numbers, and error bounds could be unreliable.
ARGUMENTS
UPLO (input)
UPLO is CHARACTER*1
= 'U': Upper triangle of A is stored;
= 'L': Lower triangle of A is stored.
N (input)
N is INTEGER
The number of linear equations, i.e., the order of the matrix
A. N >= 0.
INFO (input)
INFO is INTEGER
The value of INFO returned from ZSYTRF, i.e., the pivot in
column INFO is exactly 0.
A (input)
A is COMPLEX*16 array, dimension (LDA,N)
On entry, the N-by-N matrix A.
LDA (input)
LDA is INTEGER
The leading dimension of the array A. LDA >= max(1,N).
AF (input)
AF is COMPLEX*16 array, dimension (LDAF,N)
The block diagonal matrix D and the multipliers used to
obtain the factor U or L as computed by ZSYTRF.
LDAF (input)
LDAF is INTEGER
The leading dimension of the array AF. LDAF >= max(1,N).
IPIV (input)
IPIV is INTEGER array, dimension (N)
Details of the interchanges and the block structure of D as
determined by ZSYTRF.
WORK (input)
WORK is COMPLEX*16 array, dimension (2*N)
7 Nov 2015 zla_syrpvgrw(3P)