LAPACK 3.11.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches
cerrrfp.f
Go to the documentation of this file.
1*> \brief \b CERRRFP
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 CERRRFP( NUNIT )
12*
13* .. Scalar Arguments ..
14* INTEGER NUNIT
15* ..
16*
17*
18*> \par Purpose:
19* =============
20*>
21*> \verbatim
22*>
23*> CERRRFP tests the error exits for the COMPLEX driver routines
24*> for solving linear systems of equations.
25*>
26*> CDRVRFP tests the COMPLEX LAPACK RFP routines:
27*> CTFSM, CTFTRI, CHFRK, CTFTTP, CTFTTR, CPFTRF, CPFTRS, CTPTTF,
28*> CTPTTR, CTRTTF, and CTRTTP
29*> \endverbatim
30*
31* Arguments:
32* ==========
33*
34*> \param[in] NUNIT
35*> \verbatim
36*> NUNIT is INTEGER
37*> The unit number for output.
38*> \endverbatim
39*
40* Authors:
41* ========
42*
43*> \author Univ. of Tennessee
44*> \author Univ. of California Berkeley
45*> \author Univ. of Colorado Denver
46*> \author NAG Ltd.
47*
48*> \ingroup complex_lin
49*
50* =====================================================================
51 SUBROUTINE cerrrfp( NUNIT )
52*
53* -- LAPACK test routine --
54* -- LAPACK is a software package provided by Univ. of Tennessee, --
55* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
56*
57* .. Scalar Arguments ..
58 INTEGER NUNIT
59* ..
60*
61* =====================================================================
62*
63* ..
64* .. Local Scalars ..
65 INTEGER INFO
66 COMPLEX ALPHACMPLX
67 REAL ALPHA, BETA
68* ..
69* .. Local Arrays ..
70 COMPLEX A( 1, 1), B( 1, 1)
71* ..
72* .. External Subroutines ..
73 EXTERNAL chkxer, ctfsm, ctftri, chfrk, ctfttp, ctfttr,
75 + ctrttp
76* ..
77* .. Scalars in Common ..
78 LOGICAL LERR, OK
79 CHARACTER*32 SRNAMT
80 INTEGER INFOT, NOUT
81* ..
82* .. Intrinsic Functions ..
83 INTRINSIC cmplx
84* ..
85* .. Common blocks ..
86 COMMON / infoc / infot, nout, ok, lerr
87 COMMON / srnamc / srnamt
88* ..
89* .. Executable Statements ..
90*
91 nout = nunit
92 ok = .true.
93 a( 1, 1 ) = cmplx( 1.0 , 1.0 )
94 b( 1, 1 ) = cmplx( 1.0 , 1.0 )
95 alphacmplx = cmplx( 1.0 , 1.0 )
96 alpha = 1.0
97 beta = 1.0
98*
99 srnamt = 'CPFTRF'
100 infot = 1
101 CALL cpftrf( '/', 'U', 0, a, info )
102 CALL chkxer( 'CPFTRF', infot, nout, lerr, ok )
103 infot = 2
104 CALL cpftrf( 'N', '/', 0, a, info )
105 CALL chkxer( 'CPFTRF', infot, nout, lerr, ok )
106 infot = 3
107 CALL cpftrf( 'N', 'U', -1, a, info )
108 CALL chkxer( 'CPFTRF', infot, nout, lerr, ok )
109*
110 srnamt = 'CPFTRS'
111 infot = 1
112 CALL cpftrs( '/', 'U', 0, 0, a, b, 1, info )
113 CALL chkxer( 'CPFTRS', infot, nout, lerr, ok )
114 infot = 2
115 CALL cpftrs( 'N', '/', 0, 0, a, b, 1, info )
116 CALL chkxer( 'CPFTRS', infot, nout, lerr, ok )
117 infot = 3
118 CALL cpftrs( 'N', 'U', -1, 0, a, b, 1, info )
119 CALL chkxer( 'CPFTRS', infot, nout, lerr, ok )
120 infot = 4
121 CALL cpftrs( 'N', 'U', 0, -1, a, b, 1, info )
122 CALL chkxer( 'CPFTRS', infot, nout, lerr, ok )
123 infot = 7
124 CALL cpftrs( 'N', 'U', 0, 0, a, b, 0, info )
125 CALL chkxer( 'CPFTRS', infot, nout, lerr, ok )
126*
127 srnamt = 'CPFTRI'
128 infot = 1
129 CALL cpftri( '/', 'U', 0, a, info )
130 CALL chkxer( 'CPFTRI', infot, nout, lerr, ok )
131 infot = 2
132 CALL cpftri( 'N', '/', 0, a, info )
133 CALL chkxer( 'CPFTRI', infot, nout, lerr, ok )
134 infot = 3
135 CALL cpftri( 'N', 'U', -1, a, info )
136 CALL chkxer( 'CPFTRI', infot, nout, lerr, ok )
137*
138 srnamt = 'CTFSM '
139 infot = 1
140 CALL ctfsm( '/', 'L', 'U', 'C', 'U', 0, 0, alphacmplx, a, b, 1 )
141 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
142 infot = 2
143 CALL ctfsm( 'N', '/', 'U', 'C', 'U', 0, 0, alphacmplx, a, b, 1 )
144 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
145 infot = 3
146 CALL ctfsm( 'N', 'L', '/', 'C', 'U', 0, 0, alphacmplx, a, b, 1 )
147 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
148 infot = 4
149 CALL ctfsm( 'N', 'L', 'U', '/', 'U', 0, 0, alphacmplx, a, b, 1 )
150 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
151 infot = 5
152 CALL ctfsm( 'N', 'L', 'U', 'C', '/', 0, 0, alphacmplx, a, b, 1 )
153 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
154 infot = 6
155 CALL ctfsm( 'N', 'L', 'U', 'C', 'U', -1, 0, alphacmplx, a, b, 1 )
156 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
157 infot = 7
158 CALL ctfsm( 'N', 'L', 'U', 'C', 'U', 0, -1, alphacmplx, a, b, 1 )
159 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
160 infot = 11
161 CALL ctfsm( 'N', 'L', 'U', 'C', 'U', 0, 0, alphacmplx, a, b, 0 )
162 CALL chkxer( 'CTFSM ', infot, nout, lerr, ok )
163*
164 srnamt = 'CTFTRI'
165 infot = 1
166 CALL ctftri( '/', 'L', 'N', 0, a, info )
167 CALL chkxer( 'CTFTRI', infot, nout, lerr, ok )
168 infot = 2
169 CALL ctftri( 'N', '/', 'N', 0, a, info )
170 CALL chkxer( 'CTFTRI', infot, nout, lerr, ok )
171 infot = 3
172 CALL ctftri( 'N', 'L', '/', 0, a, info )
173 CALL chkxer( 'CTFTRI', infot, nout, lerr, ok )
174 infot = 4
175 CALL ctftri( 'N', 'L', 'N', -1, a, info )
176 CALL chkxer( 'CTFTRI', infot, nout, lerr, ok )
177*
178 srnamt = 'CTFTTR'
179 infot = 1
180 CALL ctfttr( '/', 'U', 0, a, b, 1, info )
181 CALL chkxer( 'CTFTTR', infot, nout, lerr, ok )
182 infot = 2
183 CALL ctfttr( 'N', '/', 0, a, b, 1, info )
184 CALL chkxer( 'CTFTTR', infot, nout, lerr, ok )
185 infot = 3
186 CALL ctfttr( 'N', 'U', -1, a, b, 1, info )
187 CALL chkxer( 'CTFTTR', infot, nout, lerr, ok )
188 infot = 6
189 CALL ctfttr( 'N', 'U', 0, a, b, 0, info )
190 CALL chkxer( 'CTFTTR', infot, nout, lerr, ok )
191*
192 srnamt = 'CTRTTF'
193 infot = 1
194 CALL ctrttf( '/', 'U', 0, a, 1, b, info )
195 CALL chkxer( 'CTRTTF', infot, nout, lerr, ok )
196 infot = 2
197 CALL ctrttf( 'N', '/', 0, a, 1, b, info )
198 CALL chkxer( 'CTRTTF', infot, nout, lerr, ok )
199 infot = 3
200 CALL ctrttf( 'N', 'U', -1, a, 1, b, info )
201 CALL chkxer( 'CTRTTF', infot, nout, lerr, ok )
202 infot = 5
203 CALL ctrttf( 'N', 'U', 0, a, 0, b, info )
204 CALL chkxer( 'CTRTTF', infot, nout, lerr, ok )
205*
206 srnamt = 'CTFTTP'
207 infot = 1
208 CALL ctfttp( '/', 'U', 0, a, b, info )
209 CALL chkxer( 'CTFTTP', infot, nout, lerr, ok )
210 infot = 2
211 CALL ctfttp( 'N', '/', 0, a, b, info )
212 CALL chkxer( 'CTFTTP', infot, nout, lerr, ok )
213 infot = 3
214 CALL ctfttp( 'N', 'U', -1, a, b, info )
215 CALL chkxer( 'CTFTTP', infot, nout, lerr, ok )
216*
217 srnamt = 'CTPTTF'
218 infot = 1
219 CALL ctpttf( '/', 'U', 0, a, b, info )
220 CALL chkxer( 'CTPTTF', infot, nout, lerr, ok )
221 infot = 2
222 CALL ctpttf( 'N', '/', 0, a, b, info )
223 CALL chkxer( 'CTPTTF', infot, nout, lerr, ok )
224 infot = 3
225 CALL ctpttf( 'N', 'U', -1, a, b, info )
226 CALL chkxer( 'CTPTTF', infot, nout, lerr, ok )
227*
228 srnamt = 'CTRTTP'
229 infot = 1
230 CALL ctrttp( '/', 0, a, 1, b, info )
231 CALL chkxer( 'CTRTTP', infot, nout, lerr, ok )
232 infot = 2
233 CALL ctrttp( 'U', -1, a, 1, b, info )
234 CALL chkxer( 'CTRTTP', infot, nout, lerr, ok )
235 infot = 4
236 CALL ctrttp( 'U', 0, a, 0, b, info )
237 CALL chkxer( 'CTRTTP', infot, nout, lerr, ok )
238*
239 srnamt = 'CTPTTR'
240 infot = 1
241 CALL ctpttr( '/', 0, a, b, 1, info )
242 CALL chkxer( 'CTPTTR', infot, nout, lerr, ok )
243 infot = 2
244 CALL ctpttr( 'U', -1, a, b, 1, info )
245 CALL chkxer( 'CTPTTR', infot, nout, lerr, ok )
246 infot = 5
247 CALL ctpttr( 'U', 0, a, b, 0, info )
248 CALL chkxer( 'CTPTTR', infot, nout, lerr, ok )
249*
250 srnamt = 'CHFRK '
251 infot = 1
252 CALL chfrk( '/', 'U', 'N', 0, 0, alpha, a, 1, beta, b )
253 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
254 infot = 2
255 CALL chfrk( 'N', '/', 'N', 0, 0, alpha, a, 1, beta, b )
256 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
257 infot = 3
258 CALL chfrk( 'N', 'U', '/', 0, 0, alpha, a, 1, beta, b )
259 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
260 infot = 4
261 CALL chfrk( 'N', 'U', 'N', -1, 0, alpha, a, 1, beta, b )
262 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
263 infot = 5
264 CALL chfrk( 'N', 'U', 'N', 0, -1, alpha, a, 1, beta, b )
265 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
266 infot = 8
267 CALL chfrk( 'N', 'U', 'N', 0, 0, alpha, a, 0, beta, b )
268 CALL chkxer( 'CHFRK ', infot, nout, lerr, ok )
269*
270* Print a summary line.
271*
272 IF( ok ) THEN
273 WRITE( nout, fmt = 9999 )
274 ELSE
275 WRITE( nout, fmt = 9998 )
276 END IF
277*
278 9999 FORMAT( 1x, 'COMPLEX RFP routines passed the tests of the ',
279 $ 'error exits' )
280 9998 FORMAT( ' *** RFP routines failed the tests of the error ',
281 $ 'exits ***' )
282 RETURN
283*
284* End of CERRRFP
285*
286 END
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
Definition: cblat2.f:3224
subroutine cerrrfp(NUNIT)
CERRRFP
Definition: cerrrfp.f:52
subroutine ctfsm(TRANSR, SIDE, UPLO, TRANS, DIAG, M, N, ALPHA, A, B, LDB)
CTFSM solves a matrix equation (one operand is a triangular matrix in RFP format).
Definition: ctfsm.f:298
subroutine ctfttr(TRANSR, UPLO, N, ARF, A, LDA, INFO)
CTFTTR copies a triangular matrix from the rectangular full packed format (TF) to the standard full f...
Definition: ctfttr.f:216
subroutine ctftri(TRANSR, UPLO, DIAG, N, A, INFO)
CTFTRI
Definition: ctftri.f:221
subroutine chfrk(TRANSR, UPLO, TRANS, N, K, ALPHA, A, LDA, BETA, C)
CHFRK performs a Hermitian rank-k operation for matrix in RFP format.
Definition: chfrk.f:168
subroutine cpftrs(TRANSR, UPLO, N, NRHS, A, B, LDB, INFO)
CPFTRS
Definition: cpftrs.f:220
subroutine cpftri(TRANSR, UPLO, N, A, INFO)
CPFTRI
Definition: cpftri.f:212
subroutine ctpttr(UPLO, N, AP, A, LDA, INFO)
CTPTTR copies a triangular matrix from the standard packed format (TP) to the standard full format (T...
Definition: ctpttr.f:104
subroutine ctrttp(UPLO, N, A, LDA, AP, INFO)
CTRTTP copies a triangular matrix from the standard full format (TR) to the standard packed format (T...
Definition: ctrttp.f:104
subroutine cpftrf(TRANSR, UPLO, N, A, INFO)
CPFTRF
Definition: cpftrf.f:211
subroutine ctpttf(TRANSR, UPLO, N, AP, ARF, INFO)
CTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed...
Definition: ctpttf.f:207
subroutine ctfttp(TRANSR, UPLO, N, ARF, AP, INFO)
CTFTTP copies a triangular matrix from the rectangular full packed format (TF) to the standard packed...
Definition: ctfttp.f:208
subroutine ctrttf(TRANSR, UPLO, N, A, LDA, ARF, INFO)
CTRTTF copies a triangular matrix from the standard full format (TR) to the rectangular full packed f...
Definition: ctrttf.f:216