1*> \brief \b ZERRTZ
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 ZERRTZ( 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*> ZERRTZ tests the error exits for ZTZRZF.
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*> \ingroup complex16_lin
51*
52*  =====================================================================
53      SUBROUTINE ZERRTZ( PATH, NUNIT )
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 = 2 )
69*     ..
70*     .. Local Scalars ..
71      CHARACTER*2        C2
72      INTEGER            INFO
73*     ..
74*     .. Local Arrays ..
75      COMPLEX*16         A( NMAX, NMAX ), TAU( NMAX ), W( NMAX )
76*     ..
77*     .. External Functions ..
78      LOGICAL            LSAMEN
79      EXTERNAL           LSAMEN
80*     ..
81*     .. External Subroutines ..
82      EXTERNAL           ALAESM, CHKXER, ZTZRZF
83*     ..
84*     .. Scalars in Common ..
85      LOGICAL            LERR, OK
86      CHARACTER*32       SRNAMT
87      INTEGER            INFOT, NOUT
88*     ..
89*     .. Common blocks ..
90      COMMON             / INFOC / INFOT, NOUT, OK, LERR
91      COMMON             / SRNAMC / SRNAMT
92*     ..
93*     .. Intrinsic Functions ..
94      INTRINSIC          DCMPLX
95*     ..
96*     .. Executable Statements ..
97*
98      NOUT = NUNIT
99      C2 = PATH( 2: 3 )
100      A( 1, 1 ) = DCMPLX( 1.D+0, -1.D+0 )
101      A( 1, 2 ) = DCMPLX( 2.D+0, -2.D+0 )
102      A( 2, 2 ) = DCMPLX( 3.D+0, -3.D+0 )
103      A( 2, 1 ) = DCMPLX( 4.D+0, -4.D+0 )
104      W( 1 ) = DCMPLX( 0.D+0, 0.D+0 )
105      W( 2 ) = DCMPLX( 0.D+0, 0.D+0 )
106      OK = .TRUE.
107*
108*     Test error exits for the trapezoidal routines.
109      WRITE( NOUT, FMT = * )
110      IF( LSAMEN( 2, C2, 'TZ' ) ) THEN
111*
112*
113*        ZTZRZF
114*
115         SRNAMT = 'ZTZRZF'
116         INFOT = 1
117         CALL ZTZRZF( -1, 0, A, 1, TAU, W, 1, INFO )
118         CALL CHKXER( 'ZTZRZF', INFOT, NOUT, LERR, OK )
119         INFOT = 2
120         CALL ZTZRZF( 1, 0, A, 1, TAU, W, 1, INFO )
121         CALL CHKXER( 'ZTZRZF', INFOT, NOUT, LERR, OK )
122         INFOT = 4
123         CALL ZTZRZF( 2, 2, A, 1, TAU, W, 1, INFO )
124         CALL CHKXER( 'ZTZRZF', INFOT, NOUT, LERR, OK )
125         INFOT = 7
126         CALL ZTZRZF( 2, 2, A, 2, TAU, W, 0, INFO )
127         CALL CHKXER( 'ZTZRZF', INFOT, NOUT, LERR, OK )
128         INFOT = 7
129         CALL ZTZRZF( 2, 3, A, 2, TAU, W, 1, INFO )
130         CALL CHKXER( 'ZTZRZF', INFOT, NOUT, LERR, OK )
131      END IF
132*
133*     Print a summary line.
134*
135      CALL ALAESM( PATH, OK, NOUT )
136*
137      RETURN
138*
139*     End of ZERRTZ
140*
141      END
142