OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
dlahd2.f
Go to the documentation of this file.
1*> \brief \b DLAHD2
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 DLAHD2( IOUNIT, PATH )
12*
13* .. Scalar Arguments ..
14* CHARACTER*3 PATH
15* INTEGER IOUNIT
16* ..
17*
18*
19*> \par Purpose:
20* =============
21*>
22*> \verbatim
23*>
24*> DLAHD2 prints header information for the different test paths.
25*> \endverbatim
26*
27* Arguments:
28* ==========
29*
30*> \param[in] IOUNIT
31*> \verbatim
32*> IOUNIT is INTEGER.
33*> On entry, IOUNIT specifies the unit number to which the
34*> header information should be printed.
35*> \endverbatim
36*>
37*> \param[in] PATH
38*> \verbatim
39*> PATH is CHARACTER*3.
40*> On entry, PATH contains the name of the path for which the
41*> header information is to be printed. Current paths are
42*>
43*> DHS, ZHS: Non-symmetric eigenproblem.
44*> DST, ZST: Symmetric eigenproblem.
45*> DSG, ZSG: Symmetric Generalized eigenproblem.
46*> DBD, ZBD: Singular Value Decomposition (SVD)
47*> DBB, ZBB: General Banded reduction to bidiagonal form
48*>
49*> These paths also are supplied in double precision (replace
50*> leading S by D and leading C by Z in path names).
51*> \endverbatim
52*
53* Authors:
54* ========
55*
56*> \author Univ. of Tennessee
57*> \author Univ. of California Berkeley
58*> \author Univ. of Colorado Denver
59*> \author NAG Ltd.
60*
61*> \ingroup double_eig
62*
63* =====================================================================
64 SUBROUTINE dlahd2( IOUNIT, PATH )
65*
66* -- LAPACK test routine --
67* -- LAPACK is a software package provided by Univ. of Tennessee, --
68* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
69*
70* .. Scalar Arguments ..
71 CHARACTER*3 PATH
72 INTEGER IOUNIT
73* ..
74*
75* =====================================================================
76*
77* .. Local Scalars ..
78 LOGICAL CORZ, SORD
79 CHARACTER*2 C2
80 INTEGER J
81* ..
82* .. External Functions ..
83 LOGICAL LSAME, LSAMEN
84 EXTERNAL lsame, lsamen
85* ..
86* .. Executable Statements ..
87*
88 IF( iounit.LE.0 )
89 $ RETURN
90 sord = lsame( path, 'S' ) .OR. lsame( path, 'D' )
91 corz = lsame( path, 'C' ) .OR. lsame( path, 'Z' )
92 IF( .NOT.sord .AND. .NOT.corz ) THEN
93 WRITE( iounit, fmt = 9999 )path
94 END IF
95 c2 = path( 2: 3 )
96*
97 IF( lsamen( 2, c2, 'HS' ) ) THEN
98 IF( sord ) THEN
99*
100* Real Non-symmetric Eigenvalue Problem:
101*
102 WRITE( iounit, fmt = 9998 )path
103*
104* Matrix types
105*
106 WRITE( iounit, fmt = 9988 )
107 WRITE( iounit, fmt = 9987 )
108 WRITE( iounit, fmt = 9986 )'pairs ', 'pairs ', 'prs.',
109 $ 'prs.'
110 WRITE( iounit, fmt = 9985 )
111*
112* Tests performed
113*
114 WRITE( iounit, fmt = 9984 )'orthogonal', '''=transpose',
115 $ ( '''', j = 1, 6 )
116*
117 ELSE
118*
119* Complex Non-symmetric Eigenvalue Problem:
120*
121 WRITE( iounit, fmt = 9997 )path
122*
123* Matrix types
124*
125 WRITE( iounit, fmt = 9988 )
126 WRITE( iounit, fmt = 9987 )
127 WRITE( iounit, fmt = 9986 )'e.vals', 'e.vals', 'e.vs',
128 $ 'e.vs'
129 WRITE( iounit, fmt = 9985 )
130*
131* Tests performed
132*
133 WRITE( iounit, fmt = 9984 )'unitary', '*=conj.transp.',
134 $ ( '*', j = 1, 6 )
135 END IF
136*
137 ELSE IF( lsamen( 2, c2, 'ST' ) ) THEN
138*
139 IF( sord ) THEN
140*
141* Real Symmetric Eigenvalue Problem:
142*
143 WRITE( iounit, fmt = 9996 )path
144*
145* Matrix types
146*
147 WRITE( iounit, fmt = 9983 )
148 WRITE( iounit, fmt = 9982 )
149 WRITE( iounit, fmt = 9981 )'Symmetric'
150*
151* Tests performed
152*
153 WRITE( iounit, fmt = 9968 )
154*
155 ELSE
156*
157* Complex Hermitian Eigenvalue Problem:
158*
159 WRITE( iounit, fmt = 9995 )path
160*
161* Matrix types
162*
163 WRITE( iounit, fmt = 9983 )
164 WRITE( iounit, fmt = 9982 )
165 WRITE( iounit, fmt = 9981 )'Hermitian'
166*
167* Tests performed
168*
169 WRITE( iounit, fmt = 9967 )
170 END IF
171*
172 ELSE IF( lsamen( 2, c2, 'SG' ) ) THEN
173*
174 IF( sord ) THEN
175*
176* Real Symmetric Generalized Eigenvalue Problem:
177*
178 WRITE( iounit, fmt = 9992 )path
179*
180* Matrix types
181*
182 WRITE( iounit, fmt = 9980 )
183 WRITE( iounit, fmt = 9979 )
184 WRITE( iounit, fmt = 9978 )'Symmetric'
185*
186* Tests performed
187*
188 WRITE( iounit, fmt = 9977 )
189 WRITE( iounit, fmt = 9976 )
190*
191 ELSE
192*
193* Complex Hermitian Generalized Eigenvalue Problem:
194*
195 WRITE( iounit, fmt = 9991 )path
196*
197* Matrix types
198*
199 WRITE( iounit, fmt = 9980 )
200 WRITE( iounit, fmt = 9979 )
201 WRITE( iounit, fmt = 9978 )'Hermitian'
202*
203* Tests performed
204*
205 WRITE( iounit, fmt = 9975 )
206 WRITE( iounit, fmt = 9974 )
207*
208 END IF
209*
210 ELSE IF( lsamen( 2, c2, 'BD' ) ) THEN
211*
212 IF( sord ) THEN
213*
214* Real Singular Value Decomposition:
215*
216 WRITE( iounit, fmt = 9994 )path
217*
218* Matrix types
219*
220 WRITE( iounit, fmt = 9973 )
221*
222* Tests performed
223*
224 WRITE( iounit, fmt = 9972 )'orthogonal'
225 WRITE( iounit, fmt = 9971 )
226 ELSE
227*
228* Complex Singular Value Decomposition:
229*
230 WRITE( iounit, fmt = 9993 )path
231*
232* Matrix types
233*
234 WRITE( iounit, fmt = 9973 )
235*
236* Tests performed
237*
238 WRITE( iounit, fmt = 9972 )'unitary '
239 WRITE( iounit, fmt = 9971 )
240 END IF
241*
242 ELSE IF( lsamen( 2, c2, 'BB' ) ) THEN
243*
244 IF( sord ) THEN
245*
246* Real General Band reduction to bidiagonal form:
247*
248 WRITE( iounit, fmt = 9990 )path
249*
250* Matrix types
251*
252 WRITE( iounit, fmt = 9970 )
253*
254* Tests performed
255*
256 WRITE( iounit, fmt = 9969 )'orthogonal'
257 ELSE
258*
259* Complex Band reduction to bidiagonal form:
260*
261 WRITE( iounit, fmt = 9989 )path
262*
263* Matrix types
264*
265 WRITE( iounit, fmt = 9970 )
266*
267* Tests performed
268*
269 WRITE( iounit, fmt = 9969 )'unitary '
270 END IF
271*
272 ELSE
273*
274 WRITE( iounit, fmt = 9999 )path
275 RETURN
276 END IF
277*
278 RETURN
279*
280 9999 FORMAT( 1x, a3, ': no header available' )
281 9998 FORMAT( / 1x, a3, ' -- Real Non-symmetric eigenvalue problem' )
282 9997 FORMAT( / 1x, a3, ' -- Complex Non-symmetric eigenvalue problem' )
283 9996 FORMAT( / 1x, a3, ' -- Real Symmetric eigenvalue problem' )
284 9995 FORMAT( / 1x, a3, ' -- Complex Hermitian eigenvalue problem' )
285 9994 FORMAT( / 1x, a3, ' -- Real Singular Value Decomposition' )
286 9993 FORMAT( / 1x, a3, ' -- Complex Singular Value Decomposition' )
287 9992 FORMAT( / 1x, a3, ' -- real symmetric generalized eigenvalue ',
288 $ 'problem' )
289 9991 FORMAT( / 1X, A3, ' -- Complex Hermitian Generalized eigenvalue ',
290 $ 'problem' )
291 9990 FORMAT( / 1X, A3, ' -- Real Band reduc. to bidiagonal form' )
292 9989 FORMAT( / 1X, A3, ' -- Complex Band reduc. to bidiagonal form' )
293*
294 9988 FORMAT( ' Matrix types (see xCHKHS for details): ' )
295*
296 9987 FORMAT( / ' Special Matrices:', / ' 1=zero matrix. ',
297 $ ' ', ' 5=diagonal: geometr. spaced entries.',
298 $ / ' 2=identity matrix. ', ' 6=diagona',
299 $ 'l: clustered entries.', / ' 3=transposed jordan block. ',
300 $ ' ', ' 7=diagonal: large, evenly spaced.', / ' ',
301 $ '4=diagonal: evenly spaced entries. ', ' 8=diagonal: s',
302 $ 'mall, evenly spaced.' )
303 9986 FORMAT( ' dense, non-symmetric matrices:', / ' 9=well-cond., ev',
304 $ 'enly spaced eigenvals.', ' 14=ill-cond., geomet. spaced e',
305 $ 'igenals.', / ' 10=well-cond., geom. spaced eigenvals. ',
306 $ ' 15=ill-conditioned, clustered e.vals.', / ' 11=well-cond',
307 $ 'itioned, clustered e.vals. ', ' 16=ill-cond., random comp',
308 $ 'lex ', A6, / ' 12=well-cond., random complex ', A6, ' ',
309 $ ' 17=ill-cond., large rand. complx ', A4, / ' 13=ill-condi',
310 $ 'tioned, evenly spaced. ', ' 18=ill-cond., small rand.',
311 $ ' complx ', A4 )
312 9985 FORMAT( ' 19=matrix with random o(1) entries. ', ' 21=matrix ',
313 $ 'with small random entries.', / ' 20=matrix with large ran',
314 $ 'dom entries. ' )
315 9984 FORMAT( / ' tests performed: ', '(h is hessenberg, t is schur,',
316 $ ' u and z are ', A, ',', / 20X, A, ', w is a diagonal matr',
317 $ 'ix of eigenvalues,', / 20X, 'l and r are the left and rig',
318 $ 'ht eigenvector matrices)', / ' 1 = | a - u h u', A1, ' |',
319 $ ' / ( |a| n ulp ) ', ' 2 = | i - u u', A1, ' | / ',
320 $ '( n ulp )', / ' 3 = | h - z t z', A1, ' | / ( |h| n ulp ',
321 $ ') ', ' 4 = | i - z z', A1, ' | / ( n ulp )',
322 $ / ' 5 = | a - uz t(uz)', A1, ' | / ( |a| n ulp ) ',
323 $ ' 6 = | i - uz(uz)', A1, ' | / ( n ulp )', / ' 7 = | t(',
324 $ 'e.vects.) - t(no e.vects.) | / ( |t| ulp )', / ' 8 = | w',
325 $ '(e.vects.) - w(no e.vects.) | / ( |w| ulp )', / ' 9 = | ',
326 $ 'tr - rw | / ( |t| |r| ulp ) ', ' 10 = | lt - wl | / (',
327 $ ' |t| |l| ulp )', / ' 11= |hx - xw| / (|h| |x| ulp) (inv.',
328 $ 'it)', ' 12= |yh - wy| / (|h| |y| ulp) (inv.it)' )
329*
330* Symmetric/Hermitian eigenproblem
331*
332 9983 FORMAT( ' matrix types(see xdrvst for details): ' )
333*
334 9982 FORMAT( / ' special matrices:', / ' 1=zero matrix. ',
335 $ ' ', ' 5=diagonal: clustered entries.', / ' 2=',
336 $ 'identity matrix. ', ' 6=diagonal: lar',
337 $ 'ge, evenly spaced.', / ' 3=diagonal: evenly spaced entri',
338 $ 'es. ', ' 7=diagonal: small, evenly spaced.', / ' 4=d',
339 $ 'iagonal: geometr. spaced entries.' )
340 9981 FORMAT( ' dense ', A, ' matrices:', / ' 8=evenly spaced eigen',
341 $ 'vals. ', ' 12=small, evenly spaced eigenvals.',
342 $ / ' 9=geometrically spaced eigenvals. ', ' 13=matrix ',
343 $ 'with random o(1) entries.', / ' 10=clustered eigenvalues.',
344 $ ' ', ' 14=matrix with large random entries.',
345 $ / ' 11=large, evenly spaced eigenvals. ', ' 15=matrix ',
346 $ 'with small random entries.' )
347*
348* Symmetric/Hermitian Generalized eigenproblem
349*
350 9980 FORMAT( ' matrix types(see xdrvsg for details): ' )
351*
352 9979 FORMAT( / ' special matrices:', / ' 1=zero matrix. ',
353 $ ' ', ' 5=diagonal: clustered entries.', / ' 2=',
354 $ 'identity matrix. ', ' 6=diagonal: lar',
355 $ 'ge, evenly spaced.', / ' 3=diagonal: evenly spaced entri',
356 $ 'es. ', ' 7=diagonal: small, evenly spaced.', / ' 4=d',
357 $ 'iagonal: geometr. spaced entries.' )
358 9978 FORMAT( ' dense or banded ', A, ' matrices: ',
359 $ / ' 8=evenly spaced eigenvals. ',
360 $ ' 15=matrix with small random entries.',
361 $ / ' 9=geometrically spaced eigenvals. ',
362 $ ' 16=evenly spaced eigenvals, ka=1, kb=1.',
363 $ / ' 10=Clustered eigenvalues. ',
364 $ ' 17=Evenly spaced eigenvals, KA=2, KB=1.',
365 $ / ' 11=Large, evenly spaced eigenvals. ',
366 $ ' 18=Evenly spaced eigenvals, KA=2, KB=2.',
367 $ / ' 12=Small, evenly spaced eigenvals. ',
368 $ ' 19=Evenly spaced eigenvals, KA=3, KB=1.',
369 $ / ' 13=Matrix with random O(1) entries. ',
370 $ ' 20=Evenly spaced eigenvals, KA=3, KB=2.',
371 $ / ' 14=Matrix with large random entries.',
372 $ ' 21=Evenly spaced eigenvals, KA=3, KB=3.' )
373 9977 FORMAT( / ' Tests performed: ',
374 $ / '( For each pair (A,B), where A is of the given type ',
375 $ / ' and B is a random well-conditioned matrix. D is ',
376 $ / ' diagonal, and Z is orthogonal. )',
377 $ / ' 1 = DSYGV, with ITYPE=1 and UPLO=''U'':',
378 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
379 $ / ' 2 = DSPGV, with ITYPE=1 and UPLO=''U'':',
380 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
381 $ / ' 3 = DSBGV, with ITYPE=1 and UPLO=''U'':',
382 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
383 $ / ' 4 = DSYGV, with ITYPE=1 and UPLO=''L'':',
384 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
385 $ / ' 5 = DSPGV, with ITYPE=1 and UPLO=''L'':',
386 $ ' | a z - b z d | / ( |a| |z| n ulp ) ',
387 $ / ' 6 = dsbgv, with itype=1 and uplo=''l'':',
388 $ ' | a z - b z d | / ( |a| |z| n ulp ) ' )
389 9976 FORMAT( ' 7 = dsygv, with itype=2 and uplo=''u'':',
390 $ ' | a b z - z d | / ( |a| |z| n ulp ) ',
391 $ / ' 8 = dspgv, with itype=2 and uplo=''u'':',
392 $ ' | a b z - z d | / ( |a| |z| n ulp ) ',
393 $ / ' 9 = dspgv, with itype=2 and uplo=''l'':',
394 $ ' | a b z - z d | / ( |a| |z| n ulp ) ',
395 $ / '10 = dspgv, with itype=2 and uplo=''l'':',
396 $ ' | a b z - z d | / ( |a| |z| n ulp ) ',
397 $ / '11 = dsygv, with itype=3 and uplo=''u'':',
398 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
399 $ / '12 = dspgv, with itype=3 and uplo=''u'':',
400 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
401 $ / '13 = dsygv, with itype=3 and uplo=''l'':',
402 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
403 $ / '14 = dspgv, with itype=3 and uplo=''l'':',
404 $ ' | b a z - z d | / ( |a| |z| n ulp ) ' )
405 9975 FORMAT( / ' tests performed: ',
406 $ / '( for each pair (a,b), where a is of the given type ',
407 $ / ' and b is a random well-conditioned matrix. d is ',
408 $ / ' diagonal, and z is unitary. )',
409 $ / ' 1 = zhegv, with itype=1 and uplo=''u'':',
410 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
411 $ / ' 2 = ZHPGV, with ITYPE=1 and UPLO=''U'':',
412 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
413 $ / ' 3 = ZHBGV, with ITYPE=1 and UPLO=''U'':',
414 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
415 $ / ' 4 = ZHEGV, with ITYPE=1 and UPLO=''L'':',
416 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
417 $ / ' 5 = ZHPGV, with ITYPE=1 and UPLO=''L'':',
418 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ',
419 $ / ' 6 = ZHBGV, with ITYPE=1 and UPLO=''L'':',
420 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ' )
421 9974 FORMAT( ' 7 = ZHEGV, with ITYPE=2 and UPLO=''U'':',
422 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ',
423 $ / ' 8 = ZHPGV, with ITYPE=2 and UPLO=''U'':',
424 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ',
425 $ / ' 9 = ZHPGV, with ITYPE=2 and UPLO=''L'':',
426 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ',
427 $ / '10 = ZHPGV, with ITYPE=2 and UPLO=''L'':',
428 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ',
429 $ / '11 = zhegv, with itype=3 and uplo=''u'':',
430 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
431 $ / '12 = zhpgv, with itype=3 and uplo=''u'':',
432 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
433 $ / '13 = zhegv, with itype=3 and uplo=''l'':',
434 $ ' | b a z - z d | / ( |a| |z| n ulp ) ',
435 $ / '14 = zhpgv, with itype=3 and uplo=''l'':',
436 $ ' | b a z - z d | / ( |a| |z| n ulp ) ' )
437*
438* Singular Value Decomposition
439*
440 9973 FORMAT( ' matrix types(see xchkbd for details):',
441 $ / ' diagonal matrices:', / ' 1: zero', 28X,
442 $ ' 5: clustered entries', / ' 2: identity', 24X,
443 $ ' 6: large, evenly spaced entries',
444 $ / ' 3: evenly spaced entries', 11X,
445 $ ' 7: small, evenly spaced entries',
446 $ / ' 4: geometrically spaced entries',
447 $ / ' general matrices:', / ' 8: evenly spaced sing. vals.',
448 $ 7X, '12: small, evenly spaced sing vals',
449 $ / ' 9: geometrically spaced sing vals ',
450 $ '13: random, o(1) entries', / ' 10: clustered sing. vals.',
451 $ 11X, '14: random, scaled near overflow',
452 $ / ' 11: large, evenly spaced sing vals ',
453 $ '15: random, scaled near underflow' )
454*
455 9972 FORMAT( / ' test ratios: ',
456 $ '(b: bidiagonal, s: diagonal, q, p, u, and v: ', A10, / 16X,
457 $ 'x: m x nrhs, y = q'' x, and z = u'' y)' )
458 9971 FORMAT( ' 1: norm( a - q b p'' ) / ( norm(a) max(m,n) ulp )',
459 $ / ' 2: norm( i - q'' q ) / ( m ulp )',
460 $ / ' 3: norm( i - p'' p ) / ( n ulp )',
461 $ / ' 4: norm( b - u s v'' ) / ( norm(b) min(m,n) ulp )',
462 $ / ' 5: norm( y - u z ) / ',
463 $ '( norm(z) max(min(m,n),k) ulp )',
464 $ / ' 6: norm( i - u'' u ) / ( min(m,n) ulp )',
465 $ / ' 7: norm( i - v'' v ) / ( min(m,n) ulp )',
466 $ / ' 8: test ordering of s(0 if nondecreasing, 1/ulp ',
467 $ ' otherwise)',
468 $ / ' 9: norm( s - s1 ) / ( norm(s) ulp ),',
469 $ ' where s1 is computed', / 43X,
470 $ ' without computing u and v''',
471 $ / ' 10: sturm sequence test ',
472 $ '(0 if sing. vals of b within thresh of s)',
473 $ / ' 11: norm( a - (qu) s(v'' p'') ) / ',
474 $ '( norm(a) max(m,n) ulp )',
475 $ / ' 12: norm( x - (qu) z ) / ( |x| max(m,k) ulp )',
476 $ / ' 13: norm( i - (qu)''(qu) ) / ( m ulp )',
477 $ / ' 14: norm( i - (v'' p'') (p v) ) / ( n ulp )',
478 $ / ' 15: norm( b - u s v'' ) / ( norm(b) min(m,n) ulp )',
479 $ / ' 16: norm( i - u'' u ) / ( min(m,n) ulp )',
480 $ / ' 17: norm( i - v'' v ) / ( min(m,n) ulp )',
481 $ / ' 18: test ordering of s(0 if nondecreasing, 1/ulp ',
482 $ ' otherwise)',
483 $ / ' 19: norm( s - s1 ) / ( norm(s) ulp ),',
484 $ ' where s1 is computed', / 43X,
485 $ ' without computing u and v''',
486 $ / ' 20: norm( b - u s v'' ) / ( norm(b) min(m,n) ulp )',
487 $ ' dbdsvx(v,a)',
488 $ / ' 21: norm( i - u'' u ) / ( min(m,n) ulp )',
489 $ / ' 22: norm( i - v'' v ) / ( min(m,n) ulp )',
490 $ / ' 23: test ordering of s(0 if nondecreasing, 1/ulp ',
491 $ ' otherwise)',
492 $ / ' 24: norm( s - s1 ) / ( norm(s) ulp ),',
493 $ ' where s1 is computed', / 44X,
494 $ ' without computing u and v''',
495 $ / ' 25: norm( s - u'' b v ) / ( norm(b) n ulp )',
496 $ ' dbdsvx(v,i)',
497 $ / ' 26: norm( i - u'' u ) / ( min(m,n) ulp )',
498 $ / ' 27: norm( i - v'' v ) / ( min(m,n) ulp )',
499 $ / ' 28: test ordering of s(0 if nondecreasing, 1/ulp ',
500 $ ' otherwise)',
501 $ / ' 29: norm( s - s1 ) / ( norm(s) ulp ),',
502 $ ' where s1 is computed', / 44X,
503 $ ' without computing u and v''',
504 $ / ' 30: norm( s - u'' b v ) / ( norm(b) n ulp )',
505 $ ' dbdsvx(v,v)',
506 $ / ' 31: norm( i - u'' u ) / ( min(m,n) ulp )',
507 $ / ' 32: norm( i - v'' v ) / ( min(m,n) ulp )',
508 $ / ' 33: test ordering of s(0 if nondecreasing, 1/ulp ',
509 $ ' otherwise)',
510 $ / ' 34: norm( s - s1 ) / ( norm(s) ulp ),',
511 $ ' where s1 is computed', / 44X,
512 $ ' without computing u and v''' )
513*
514* Band reduction to bidiagonal form
515*
516 9970 FORMAT( ' matrix types(see xchkbb for details):',
517 $ / ' diagonal matrices:', / ' 1: zero', 28X,
518 $ ' 5: clustered entries', / ' 2: identity', 24X,
519 $ ' 6: large, evenly spaced entries',
520 $ / ' 3: evenly spaced entries', 11X,
521 $ ' 7: small, evenly spaced entries',
522 $ / ' 4: geometrically spaced entries',
523 $ / ' general matrices:', / ' 8: evenly spaced sing. vals.',
524 $ 7X, '12: small, evenly spaced sing vals',
525 $ / ' 9: geometrically spaced sing vals ',
526 $ '13: random, o(1) entries', / ' 10: clustered sing. vals.',
527 $ 11X, '14: random, scaled near overflow',
528 $ / ' 11: large, evenly spaced sing vals ',
529 $ '15: random, scaled near underflow' )
530*
531 9969 FORMAT( / ' test ratios: ', '(b: upper bidiagonal, q and p: ',
532 $ A10, / 16X, 'c: m x nrhs, pt = p'', y = q'' c)',
533 $ / ' 1: norm( a - q b pt ) / ( norm(a) max(m,n) ulp )',
534 $ / ' 2: norm( i - q'' q ) / ( m ulp )',
535 $ / ' 3: norm( i - pt pt'' ) / ( n ulp )',
536 $ / ' 4: norm( y - q'' c ) / ( norm(y) max(m,nrhs) ulp )' )
537 9968 FORMAT( / ' tests performed: see sdrvst.f' )
538 9967 FORMAT( / ' tests performed: see cdrvst.f' )
539*
540* End of DLAHD2
541*
542 END
end diagonal values have been computed in the(sparse) matrix id.SOL
norm(diag(diag(diag(inv(mat))) -id.SOL), 2) % destroy mumps instance id.JOB
subroutine geom(a, b, c, center_x, center_y, center_z, vol)
Definition geom.F:30
subroutine zhegv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, rwork, info)
ZHEGV
Definition zhegv.f:181
subroutine zhpgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, rwork, info)
ZHPGV
Definition zhpgv.f:165
subroutine cdrvst(nsizes, nn, ntypes, dotype, iseed, thresh, nounit, a, lda, d1, d2, d3, wa1, wa2, wa3, u, ldu, v, tau, z, work, lwork, rwork, lrwork, iwork, liwork, result, info)
CDRVST
Definition cdrvst.f:338
subroutine dsbgv(jobz, uplo, n, ka, kb, ab, ldab, bb, ldbb, w, z, ldz, work, info)
DSBGV
Definition dsbgv.f:177
subroutine dspgv(itype, jobz, uplo, n, ap, bp, w, z, ldz, work, info)
DSPGV
Definition dspgv.f:160
subroutine dsygv(itype, jobz, uplo, n, a, lda, b, ldb, w, work, lwork, info)
DSYGV
Definition dsygv.f:175
subroutine dlahd2(iounit, path)
DLAHD2
Definition dlahd2.f:65
subroutine sdrvst(nsizes, nn, ntypes, dotype, iseed, thresh, nounit, a, lda, d1, d2, d3, d4, eveigs, wa1, wa2, wa3, u, ldu, v, tau, z, work, lwork, iwork, liwork, result, info)
SDRVST
Definition sdrvst.f:453
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21
int comp(int a, int b)