LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ derrqp()

subroutine derrqp ( character*3  PATH,
integer  NUNIT 
)

DERRQP

Purpose:
 DERRQP tests the error exits for DGEQP3.
Parameters
[in]PATH
          PATH is CHARACTER*3
          The LAPACK path name for the routines to be tested.
[in]NUNIT
          NUNIT is INTEGER
          The unit number for output.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
December 2016

Definition at line 56 of file derrqp.f.

56 *
57 * -- LAPACK test routine (version 3.7.0) --
58 * -- LAPACK is a software package provided by Univ. of Tennessee, --
59 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
60 * December 2016
61 *
62 * .. Scalar Arguments ..
63  CHARACTER*3 path
64  INTEGER nunit
65 * ..
66 *
67 * =====================================================================
68 *
69 * .. Parameters ..
70  INTEGER nmax
71  parameter( nmax = 3 )
72 * ..
73 * .. Local Scalars ..
74  CHARACTER*2 c2
75  INTEGER info, lw
76 * ..
77 * .. Local Arrays ..
78  INTEGER ip( nmax )
79  DOUBLE PRECISION a( nmax, nmax ), tau( nmax ), w( 3*nmax+1 )
80 * ..
81 * .. External Functions ..
82  LOGICAL lsamen
83  EXTERNAL lsamen
84 * ..
85 * .. External Subroutines ..
86  EXTERNAL alaesm, chkxer, dgeqp3
87 * ..
88 * .. Scalars in Common ..
89  LOGICAL lerr, ok
90  CHARACTER*32 srnamt
91  INTEGER infot, nout
92 * ..
93 * .. Common blocks ..
94  COMMON / infoc / infot, nout, ok, lerr
95  COMMON / srnamc / srnamt
96 * ..
97 * .. Executable Statements ..
98 *
99  nout = nunit
100  WRITE( nout, fmt = * )
101  c2 = path( 2: 3 )
102  lw = 3*nmax + 1
103  a( 1, 1 ) = 1.0d+0
104  a( 1, 2 ) = 2.0d+0
105  a( 2, 2 ) = 3.0d+0
106  a( 2, 1 ) = 4.0d+0
107  ok = .true.
108 *
109  IF( lsamen( 2, c2, 'QP' ) ) THEN
110 *
111 * Test error exits for QR factorization with pivoting
112 *
113 * DGEQP3
114 *
115  srnamt = 'DGEQP3'
116  infot = 1
117  CALL dgeqp3( -1, 0, a, 1, ip, tau, w, lw, info )
118  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
119  infot = 2
120  CALL dgeqp3( 1, -1, a, 1, ip, tau, w, lw, info )
121  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
122  infot = 4
123  CALL dgeqp3( 2, 3, a, 1, ip, tau, w, lw, info )
124  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
125  infot = 8
126  CALL dgeqp3( 2, 2, a, 2, ip, tau, w, lw-10, info )
127  CALL chkxer( 'DGEQP3', infot, nout, lerr, ok )
128  END IF
129 *
130 * Print a summary line.
131 *
132  CALL alaesm( path, ok, nout )
133 *
134  RETURN
135 *
136 * End of DERRQP
137 *
subroutine dgeqp3(M, N, A, LDA, JPVT, TAU, WORK, LWORK, INFO)
DGEQP3
Definition: dgeqp3.f:153
subroutine alaesm(PATH, OK, NOUT)
ALAESM
Definition: alaesm.f:65
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
Definition: cblat2.f:3199
logical function lsamen(N, CA, CB)
LSAMEN
Definition: lsamen.f:76
Here is the call graph for this function: