LAPACK  3.10.1
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.

Definition at line 53 of file zerrqp.f.

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