dget51.f3
Usage
Functions/Subroutines
subroutine dget51 (itype, n, a, lda, b, ldb, u, ldu, v, ldv, work, result)
DGET51
Function/Subroutine Documentation
subroutine dget51 (integer itype, integer n, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( ldb, * ) b, integer ldb, double precision, dimension( ldu, * ) u, integer ldu, double precision, dimension( ldv, * ) v, integer ldv, double precision, dimension( * ) work, double precision result)
DGET51
Purpose:
!> !> DGET51 generally checks a decomposition of the form !> !> A = U B V' !> !> where ' means transpose and U and V are orthogonal. !> !> Specifically, if ITYPE=1 !> !> RESULT = | A - U B V' | / ( |A| n ulp ) !> !> If ITYPE=2, then: !> !> RESULT = | A - B | / ( |A| n ulp ) !> !> If ITYPE=3, then: !> !> RESULT = | I - UU' | / ( n ulp ) !>
Parameters
ITYPE
!> ITYPE is INTEGER !> Specifies the type of tests to be performed. !> =1: RESULT = | A - U B V' | / ( |A| n ulp ) !> =2: RESULT = | A - B | / ( |A| n ulp ) !> =3: RESULT = | I - UU' | / ( n ulp ) !>
N
!> N is INTEGER !> The size of the matrix. If it is zero, DGET51 does nothing. !> It must be at least zero. !>
A
!> A is DOUBLE PRECISION array, dimension (LDA, N) !> The original (unfactored) matrix. !>
LDA
!> LDA is INTEGER !> The leading dimension of A. It must be at least 1 !> and at least N. !>
B
!> B is DOUBLE PRECISION array, dimension (LDB, N) !> The factored matrix. !>
LDB
!> LDB is INTEGER !> The leading dimension of B. It must be at least 1 !> and at least N. !>
U
!> U is DOUBLE PRECISION array, dimension (LDU, N) !> The orthogonal matrix on the left-hand side in the !> decomposition. !> Not referenced if ITYPE=2 !>
LDU
!> LDU is INTEGER !> The leading dimension of U. LDU must be at least N and !> at least 1. !>
V
!> V is DOUBLE PRECISION array, dimension (LDV, N) !> The orthogonal matrix on the left-hand side in the !> decomposition. !> Not referenced if ITYPE=2 !>
LDV
!> LDV is INTEGER !> The leading dimension of V. LDV must be at least N and !> at least 1. !>
WORK
!> WORK is DOUBLE PRECISION array, dimension (2*N**2) !>
RESULT
!> RESULT is DOUBLE PRECISION !> The values computed by the test specified by ITYPE. The !> value is currently limited to 1/ulp, to avoid overflow. !> Errors are flagged by RESULT=10/ulp. !>
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Definition at line 147 of file dget51.f.