LAPACK 3.12.1
LAPACK: Linear Algebra PACKage
|
subroutine stpt01 | ( | character | uplo, |
character | diag, | ||
integer | n, | ||
real, dimension( * ) | ap, | ||
real, dimension( * ) | ainvp, | ||
real | rcond, | ||
real, dimension( * ) | work, | ||
real | resid ) |
STPT01
!> !> STPT01 computes the residual for a triangular matrix A times its !> inverse when A is stored in packed format: !> RESID = norm(A*AINV - I) / ( N * norm(A) * norm(AINV) * EPS ), !> where EPS is the machine epsilon. !>
[in] | UPLO | !> UPLO is CHARACTER*1 !> Specifies whether the matrix A is upper or lower triangular. !> = 'U': Upper triangular !> = 'L': Lower triangular !> |
[in] | DIAG | !> DIAG is CHARACTER*1 !> Specifies whether or not the matrix A is unit triangular. !> = 'N': Non-unit triangular !> = 'U': Unit triangular !> |
[in] | N | !> N is INTEGER !> The order of the matrix A. N >= 0. !> |
[in] | AP | !> AP is REAL array, dimension (N*(N+1)/2) !> The original upper or lower triangular matrix A, packed !> columnwise in a linear array. The j-th column of A is stored !> in the array AP as follows: !> if UPLO = 'U', AP((j-1)*j/2 + i) = A(i,j) for 1<=i<=j; !> if UPLO = 'L', !> AP((j-1)*(n-j) + j*(j+1)/2 + i-j) = A(i,j) for j<=i<=n. !> |
[in,out] | AINVP | !> AINVP is REAL array, dimension (N*(N+1)/2) !> On entry, the (triangular) inverse of the matrix A, packed !> columnwise in a linear array as in AP. !> On exit, the contents of AINVP are destroyed. !> |
[out] | RCOND | !> RCOND is REAL !> The reciprocal condition number of A, computed as !> 1/(norm(A) * norm(AINV)). !> |
[out] | WORK | !> WORK is REAL array, dimension (N) !> |
[out] | RESID | !> RESID is REAL !> norm(A*AINV - I) / ( N * norm(A) * norm(AINV) * EPS ) !> |
Definition at line 107 of file stpt01.f.