zla_lin_berr - wise relative backward error
SUBROUTINE ZLA_LIN_BERR (N, NZ, NRHS, RES, AYB, BERR) INTEGER N, NZ, NRHS DOUBLE PRECISION AYB(N,NRHS), BERR(NRHS) DOUBLE COMPLEX RES(N,NRHS) SUBROUTINE ZLA_LIN_BERR_64 (N, NZ, NRHS, RES, AYB, BERR) INTEGER*8 N, NZ, NRHS DOUBLE PRECISION AYB(N,NRHS), BERR(NRHS) DOUBLE COMPLEX RES(N,NRHS) F95 INTERFACE SUBROUTINE LA_LIN_BERR (N, NZ, NRHS, RES, AYB, BERR) INTEGER :: N, NZ, NRHS REAL(8), DIMENSION(:,:) :: AYB REAL(8), DIMENSION(:) :: BERR COMPLEX(8), DIMENSION(:,:) :: RES SUBROUTINE LA_LIN_BERR_64 (N, NZ, NRHS, RES, AYB, BERR) INTEGER(8) :: N, NZ, NRHS REAL(8), DIMENSION(:,:) :: AYB REAL(8), DIMENSION(:) :: BERR COMPLEX(8), DIMENSION(:,:) :: RES C INTERFACE #include <sunperf.h> void zla_lin_berr (int n, int nz, int nrhs, doublecomplex *res, double *ayb, double *berr); void zla_lin_berr_64 (long n, long nz, long nrhs, doublecomplex *res, double *ayb, double *berr);
Oracle Solaris Studio Performance Library zla_lin_berr(3P) NAME zla_lin_berr - compute a component-wise relative backward error SYNOPSIS SUBROUTINE ZLA_LIN_BERR (N, NZ, NRHS, RES, AYB, BERR) INTEGER N, NZ, NRHS DOUBLE PRECISION AYB(N,NRHS), BERR(NRHS) DOUBLE COMPLEX RES(N,NRHS) SUBROUTINE ZLA_LIN_BERR_64 (N, NZ, NRHS, RES, AYB, BERR) INTEGER*8 N, NZ, NRHS DOUBLE PRECISION AYB(N,NRHS), BERR(NRHS) DOUBLE COMPLEX RES(N,NRHS) F95 INTERFACE SUBROUTINE LA_LIN_BERR (N, NZ, NRHS, RES, AYB, BERR) INTEGER :: N, NZ, NRHS REAL(8), DIMENSION(:,:) :: AYB REAL(8), DIMENSION(:) :: BERR COMPLEX(8), DIMENSION(:,:) :: RES SUBROUTINE LA_LIN_BERR_64 (N, NZ, NRHS, RES, AYB, BERR) INTEGER(8) :: N, NZ, NRHS REAL(8), DIMENSION(:,:) :: AYB REAL(8), DIMENSION(:) :: BERR COMPLEX(8), DIMENSION(:,:) :: RES C INTERFACE #include <sunperf.h> void zla_lin_berr (int n, int nz, int nrhs, doublecomplex *res, double *ayb, double *berr); void zla_lin_berr_64 (long n, long nz, long nrhs, doublecomplex *res, double *ayb, double *berr); PURPOSE zla_lin_berr computes componentwise relative backward error from the formula max(i) ( abs(R(i)) / ( abs(op(A_s))*abs(Y) + abs(B_s) )(i) ) where abs(Z) is the componentwise absolute value of the matrix or vec- tor Z. ARGUMENTS N (input) N is INTEGER The number of linear equations, i.e., the order of the matrix A. N >= 0. NZ (input) NZ is INTEGER We add (NZ+1)*SLAMCH( 'Safe minimum' ) to R(i) in the numera- tor to guard against spuriously zero residuals. Default value is N. NRHS (input) NRHS is INTEGER The number of right hand sides, i.e., the number of columns of the matrices AYB, RES, and BERR. NRHS >= 0. RES (input) RES is DOUBLE PRECISION array, dimension (N,NRHS) The residual matrix, i.e., the matrix R in the relative back- ward error formula above. AYB (input) AYB is DOUBLE PRECISION array, dimension (N, NRHS) The denominator in the relative backward error formula above, i.e., the matrix abs(op(A_s))*abs(Y) + abs(B_s). The matrices A, Y, and B are from iterative refinement (see zla_gerfsx_extended.f). BERR (output) BERR is COMPLEX*16 array, dimension (NRHS) The componentwise relative backward error from the formula above. 7 Nov 2015 zla_lin_berr(3P)