LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ zerrqp()

subroutine zerrqp ( character*3  PATH,
integer  NUNIT 
)

ZERRQP

Purpose:
 ZERRQP tests the error exits for ZGEQP3.
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 zerrqp.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 rw( 2*nmax )
80  COMPLEX*16 a( nmax, nmax ), tau( nmax ),
81  $ w( 2*nmax+3*nmax )
82 * ..
83 * .. External Functions ..
84  LOGICAL lsamen
85  EXTERNAL lsamen
86 * ..
87 * .. External Subroutines ..
88  EXTERNAL alaesm, chkxer, zgeqp3
89 * ..
90 * .. Scalars in Common ..
91  LOGICAL lerr, ok
92  CHARACTER*32 srnamt
93  INTEGER infot, nout
94 * ..
95 * .. Common blocks ..
96  COMMON / infoc / infot, nout, ok, lerr
97  COMMON / srnamc / srnamt
98 * ..
99 * .. Intrinsic Functions ..
100  INTRINSIC dcmplx
101 * ..
102 * .. Executable Statements ..
103 *
104  nout = nunit
105  c2 = path( 2: 3 )
106  lw = nmax + 1
107  a( 1, 1 ) = dcmplx( 1.0d+0, -1.0d+0 )
108  a( 1, 2 ) = dcmplx( 2.0d+0, -2.0d+0 )
109  a( 2, 2 ) = dcmplx( 3.0d+0, -3.0d+0 )
110  a( 2, 1 ) = dcmplx( 4.0d+0, -4.0d+0 )
111  ok = .true.
112  WRITE( nout, fmt = * )
113 *
114 * Test error exits for QR factorization with pivoting
115 *
116  IF( lsamen( 2, c2, 'QP' ) ) THEN
117 *
118 * ZGEQP3
119 *
120  srnamt = 'ZGEQP3'
121  infot = 1
122  CALL zgeqp3( -1, 0, a, 1, ip, tau, w, lw, rw, info )
123  CALL chkxer( 'ZGEQP3', infot, nout, lerr, ok )
124  infot = 2
125  CALL zgeqp3( 1, -1, a, 1, ip, tau, w, lw, rw, info )
126  CALL chkxer( 'ZGEQP3', infot, nout, lerr, ok )
127  infot = 4
128  CALL zgeqp3( 2, 3, a, 1, ip, tau, w, lw, rw, info )
129  CALL chkxer( 'ZGEQP3', infot, nout, lerr, ok )
130  infot = 8
131  CALL zgeqp3( 2, 2, a, 2, ip, tau, w, lw-10, rw, info )
132  CALL chkxer( 'ZGEQP3', infot, nout, lerr, ok )
133  END IF
134 *
135 * Print a summary line.
136 *
137  CALL alaesm( path, ok, nout )
138 *
139  RETURN
140 *
141 * End of ZERRQP
142 *
subroutine zgeqp3(M, N, A, LDA, JPVT, TAU, WORK, LWORK, RWORK, INFO)
ZGEQP3
Definition: zgeqp3.f:161
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: