LAPACK  3.8.0
LAPACK: Linear Algebra PACKage
derrqp.f
Go to the documentation of this file.
1 *> \brief \b DERRQP
2 *
3 * =========== DOCUMENTATION ===========
4 *
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
7 *
8 * Definition:
9 * ===========
10 *
11 * SUBROUTINE DERRQP( PATH, NUNIT )
12 *
13 * .. Scalar Arguments ..
14 * CHARACTER*3 PATH
15 * INTEGER NUNIT
16 * ..
17 *
18 *
19 *> \par Purpose:
20 * =============
21 *>
22 *> \verbatim
23 *>
24 *> DERRQP tests the error exits for DGEQP3.
25 *> \endverbatim
26 *
27 * Arguments:
28 * ==========
29 *
30 *> \param[in] PATH
31 *> \verbatim
32 *> PATH is CHARACTER*3
33 *> The LAPACK path name for the routines to be tested.
34 *> \endverbatim
35 *>
36 *> \param[in] NUNIT
37 *> \verbatim
38 *> NUNIT is INTEGER
39 *> The unit number for output.
40 *> \endverbatim
41 *
42 * Authors:
43 * ========
44 *
45 *> \author Univ. of Tennessee
46 *> \author Univ. of California Berkeley
47 *> \author Univ. of Colorado Denver
48 *> \author NAG Ltd.
49 *
50 *> \date December 2016
51 *
52 *> \ingroup double_lin
53 *
54 * =====================================================================
55  SUBROUTINE derrqp( PATH, NUNIT )
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 *
138  END
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
subroutine derrqp(PATH, NUNIT)
DERRQP
Definition: derrqp.f:56