dla_syrpvgrw - compute the reciprocal pivot growth factor norm(A)/norm(U) for a symmetric indefinite matrix
DOUBLE PRECISION FUNCTION DLA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) CHARACTER*1 UPLO INTEGER N, INFO, LDA, LDAF INTEGER IPIV(*) DOUBLE PRECISION A(LDA,*), AF(LDAF,*), WORK(*) DOUBLE PRECISION FUNCTION DLA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF, LDAF, IPIV, WORK) CHARACTER*1 UPLO INTEGER*8 N, INFO, LDA, LDAF INTEGER*8 IPIV(*) DOUBLE PRECISION A(LDA,*), AF(LDAF,*), WORK(*) 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 REAL(8), DIMENSION(:,:) :: A, AF REAL(8), DIMENSION(:) :: WORK 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 REAL(8), DIMENSION(:,:) :: A, AF REAL(8), DIMENSION(:) :: WORK C INTERFACE #include <sunperf.h> double dla_syrpvgrw (char uplo, int n, int info, double *a, int lda, double *af, int ldaf, int *ipiv);
Oracle Solaris Studio Performance Library dla_syrpvgrw(3P)
NAME
dla_syrpvgrw - compute the reciprocal pivot growth factor
norm(A)/norm(U) for a symmetric indefinite matrix
SYNOPSIS
DOUBLE PRECISION FUNCTION DLA_SYRPVGRW(UPLO, N, INFO, A, LDA, AF, LDAF,
IPIV, WORK)
CHARACTER*1 UPLO
INTEGER N, INFO, LDA, LDAF
INTEGER IPIV(*)
DOUBLE PRECISION A(LDA,*), AF(LDAF,*), WORK(*)
DOUBLE PRECISION FUNCTION DLA_SYRPVGRW_64(UPLO, N, INFO, A, LDA, AF,
LDAF, IPIV, WORK)
CHARACTER*1 UPLO
INTEGER*8 N, INFO, LDA, LDAF
INTEGER*8 IPIV(*)
DOUBLE PRECISION A(LDA,*), AF(LDAF,*), WORK(*)
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
REAL(8), DIMENSION(:,:) :: A, AF
REAL(8), DIMENSION(:) :: WORK
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
REAL(8), DIMENSION(:,:) :: A, AF
REAL(8), DIMENSION(:) :: WORK
C INTERFACE
#include <sunperf.h>
double dla_syrpvgrw (char uplo, int n, int info, double *a, int lda,
double *af, int ldaf, int *ipiv);
PURPOSE
dla_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 DSYTRF, i.e., the pivot in
column INFO is exactly 0.
A (input)
A is DOUBLE PRECISION 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 DOUBLE PRECISION array, dimension (LDAF,N)
The block diagonal matrix D and the multipliers used to
obtain the factor U or L as computed by DSYTRF.
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 DSYTRF.
WORK (input)
WORK is DOUBLE PRECISION array, dimension (2*N)
7 Nov 2015 dla_syrpvgrw(3P)