TESTING/LIN/sorhr_col02.f(3) Library Functions Manual TESTING/LIN/sorhr_col02.f(3)

TESTING/LIN/sorhr_col02.f


subroutine sorhr_col02 (m, n, mb1, nb1, nb2, result)
SORHR_COL02

SORHR_COL02

Purpose:

 SORHR_COL02 tests SORGTSQR_ROW and SORHR_COL inside SGETSQRHRT
 (which calls SLATSQR, SORGTSQR_ROW and SORHR_COL) using SGEMQRT.
 Therefore, SLATSQR (part of SGEQR), SGEMQRT (part of SGEMQR)
 have to be tested before this test.

Parameters

M
          M is INTEGER
          Number of rows in test matrix.

N

          N is INTEGER
          Number of columns in test matrix.

MB1

          MB1 is INTEGER
          Number of row in row block in an input test matrix.

NB1

          NB1 is INTEGER
          Number of columns in column block an input test matrix.

NB2

          NB2 is INTEGER
          Number of columns in column block in an output test matrix.

RESULT

          RESULT is REAL array, dimension (6)
          Results of each of the six tests below.
            A is a m-by-n test input matrix to be factored.
            so that A = Q_gr * ( R )
                               ( 0 ),
            Q_qr is an implicit m-by-m orthogonal Q matrix, the result
            of factorization in blocked WY-representation,
            stored in SGEQRT output format.
            R is a n-by-n upper-triangular matrix,
            0 is a (m-n)-by-n zero matrix,
            Q is an explicit m-by-m orthogonal matrix Q = Q_gr * I
            C is an m-by-n random matrix,
            D is an n-by-m random matrix.
          The six tests are:
          RESULT(1) = |R - (Q**H) * A| / ( eps * m * |A| )
            is equivalent to test for | A - Q * R | / (eps * m * |A|),
          RESULT(2) = |I - (Q**H) * Q| / ( eps * m ),
          RESULT(3) = | Q_qr * C - Q * C | / (eps * m * |C|),
          RESULT(4) = | (Q_gr**H) * C - (Q**H) * C | / (eps * m * |C|)
          RESULT(5) = | D * Q_qr - D * Q | / (eps * m * |D|)
          RESULT(6) = | D * (Q_qr**H) - D * (Q**H) | / (eps * m * |D|),
          where:
            Q_qr * C, (Q_gr**H) * C, D * Q_qr, D * (Q_qr**H) are
            computed using SGEMQRT,
            Q * C, (Q**H) * C, D * Q, D * (Q**H)  are
            computed using SGEMM.

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 119 of file sorhr_col02.f.

Generated automatically by Doxygen for LAPACK from the source code.

Version 3.12.0 LAPACK