LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ zchke()

subroutine zchke ( integer  ISNUM,
character*6  SRNAMT,
integer  NOUT 
)

Definition at line 2382 of file zblat2.f.

2382 *
2383 * Tests the error exits from the Level 2 Blas.
2384 * Requires a special version of the error-handling routine XERBLA.
2385 * ALPHA, RALPHA, BETA, A, X and Y should not need to be defined.
2386 *
2387 * Auxiliary routine for test program for Level 2 Blas.
2388 *
2389 * -- Written on 10-August-1987.
2390 * Richard Hanson, Sandia National Labs.
2391 * Jeremy Du Croz, NAG Central Office.
2392 *
2393 * .. Scalar Arguments ..
2394  INTEGER isnum, nout
2395  CHARACTER*6 srnamt
2396 * .. Scalars in Common ..
2397  INTEGER infot, noutc
2398  LOGICAL lerr, ok
2399 * .. Local Scalars ..
2400  COMPLEX*16 alpha, beta
2401  DOUBLE PRECISION ralpha
2402 * .. Local Arrays ..
2403  COMPLEX*16 a( 1, 1 ), x( 1 ), y( 1 )
2404 * .. External Subroutines ..
2405  EXTERNAL chkxer, zgbmv, zgemv, zgerc, zgeru, zhbmv,
2406  $ zhemv, zher, zher2, zhpmv, zhpr, zhpr2, ztbmv,
2407  $ ztbsv, ztpmv, ztpsv, ztrmv, ztrsv
2408 * .. Common blocks ..
2409  COMMON /infoc/infot, noutc, ok, lerr
2410 * .. Executable Statements ..
2411 * OK is set to .FALSE. by the special version of XERBLA or by CHKXER
2412 * if anything is wrong.
2413  ok = .true.
2414 * LERR is set to .TRUE. by the special version of XERBLA each time
2415 * it is called, and is then tested and re-set by CHKXER.
2416  lerr = .false.
2417  GO TO ( 10, 20, 30, 40, 50, 60, 70, 80,
2418  $ 90, 100, 110, 120, 130, 140, 150, 160,
2419  $ 170 )isnum
2420  10 infot = 1
2421  CALL zgemv( '/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2422  CALL chkxer( srnamt, infot, nout, lerr, ok )
2423  infot = 2
2424  CALL zgemv( 'N', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2425  CALL chkxer( srnamt, infot, nout, lerr, ok )
2426  infot = 3
2427  CALL zgemv( 'N', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2428  CALL chkxer( srnamt, infot, nout, lerr, ok )
2429  infot = 6
2430  CALL zgemv( 'N', 2, 0, alpha, a, 1, x, 1, beta, y, 1 )
2431  CALL chkxer( srnamt, infot, nout, lerr, ok )
2432  infot = 8
2433  CALL zgemv( 'N', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2434  CALL chkxer( srnamt, infot, nout, lerr, ok )
2435  infot = 11
2436  CALL zgemv( 'N', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2437  CALL chkxer( srnamt, infot, nout, lerr, ok )
2438  GO TO 180
2439  20 infot = 1
2440  CALL zgbmv( '/', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2441  CALL chkxer( srnamt, infot, nout, lerr, ok )
2442  infot = 2
2443  CALL zgbmv( 'N', -1, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2444  CALL chkxer( srnamt, infot, nout, lerr, ok )
2445  infot = 3
2446  CALL zgbmv( 'N', 0, -1, 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2447  CALL chkxer( srnamt, infot, nout, lerr, ok )
2448  infot = 4
2449  CALL zgbmv( 'N', 0, 0, -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2450  CALL chkxer( srnamt, infot, nout, lerr, ok )
2451  infot = 5
2452  CALL zgbmv( 'N', 2, 0, 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2453  CALL chkxer( srnamt, infot, nout, lerr, ok )
2454  infot = 8
2455  CALL zgbmv( 'N', 0, 0, 1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2456  CALL chkxer( srnamt, infot, nout, lerr, ok )
2457  infot = 10
2458  CALL zgbmv( 'N', 0, 0, 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2459  CALL chkxer( srnamt, infot, nout, lerr, ok )
2460  infot = 13
2461  CALL zgbmv( 'N', 0, 0, 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2462  CALL chkxer( srnamt, infot, nout, lerr, ok )
2463  GO TO 180
2464  30 infot = 1
2465  CALL zhemv( '/', 0, alpha, a, 1, x, 1, beta, y, 1 )
2466  CALL chkxer( srnamt, infot, nout, lerr, ok )
2467  infot = 2
2468  CALL zhemv( 'U', -1, alpha, a, 1, x, 1, beta, y, 1 )
2469  CALL chkxer( srnamt, infot, nout, lerr, ok )
2470  infot = 5
2471  CALL zhemv( 'U', 2, alpha, a, 1, x, 1, beta, y, 1 )
2472  CALL chkxer( srnamt, infot, nout, lerr, ok )
2473  infot = 7
2474  CALL zhemv( 'U', 0, alpha, a, 1, x, 0, beta, y, 1 )
2475  CALL chkxer( srnamt, infot, nout, lerr, ok )
2476  infot = 10
2477  CALL zhemv( 'U', 0, alpha, a, 1, x, 1, beta, y, 0 )
2478  CALL chkxer( srnamt, infot, nout, lerr, ok )
2479  GO TO 180
2480  40 infot = 1
2481  CALL zhbmv( '/', 0, 0, alpha, a, 1, x, 1, beta, y, 1 )
2482  CALL chkxer( srnamt, infot, nout, lerr, ok )
2483  infot = 2
2484  CALL zhbmv( 'U', -1, 0, alpha, a, 1, x, 1, beta, y, 1 )
2485  CALL chkxer( srnamt, infot, nout, lerr, ok )
2486  infot = 3
2487  CALL zhbmv( 'U', 0, -1, alpha, a, 1, x, 1, beta, y, 1 )
2488  CALL chkxer( srnamt, infot, nout, lerr, ok )
2489  infot = 6
2490  CALL zhbmv( 'U', 0, 1, alpha, a, 1, x, 1, beta, y, 1 )
2491  CALL chkxer( srnamt, infot, nout, lerr, ok )
2492  infot = 8
2493  CALL zhbmv( 'U', 0, 0, alpha, a, 1, x, 0, beta, y, 1 )
2494  CALL chkxer( srnamt, infot, nout, lerr, ok )
2495  infot = 11
2496  CALL zhbmv( 'U', 0, 0, alpha, a, 1, x, 1, beta, y, 0 )
2497  CALL chkxer( srnamt, infot, nout, lerr, ok )
2498  GO TO 180
2499  50 infot = 1
2500  CALL zhpmv( '/', 0, alpha, a, x, 1, beta, y, 1 )
2501  CALL chkxer( srnamt, infot, nout, lerr, ok )
2502  infot = 2
2503  CALL zhpmv( 'U', -1, alpha, a, x, 1, beta, y, 1 )
2504  CALL chkxer( srnamt, infot, nout, lerr, ok )
2505  infot = 6
2506  CALL zhpmv( 'U', 0, alpha, a, x, 0, beta, y, 1 )
2507  CALL chkxer( srnamt, infot, nout, lerr, ok )
2508  infot = 9
2509  CALL zhpmv( 'U', 0, alpha, a, x, 1, beta, y, 0 )
2510  CALL chkxer( srnamt, infot, nout, lerr, ok )
2511  GO TO 180
2512  60 infot = 1
2513  CALL ztrmv( '/', 'N', 'N', 0, a, 1, x, 1 )
2514  CALL chkxer( srnamt, infot, nout, lerr, ok )
2515  infot = 2
2516  CALL ztrmv( 'U', '/', 'N', 0, a, 1, x, 1 )
2517  CALL chkxer( srnamt, infot, nout, lerr, ok )
2518  infot = 3
2519  CALL ztrmv( 'U', 'N', '/', 0, a, 1, x, 1 )
2520  CALL chkxer( srnamt, infot, nout, lerr, ok )
2521  infot = 4
2522  CALL ztrmv( 'U', 'N', 'N', -1, a, 1, x, 1 )
2523  CALL chkxer( srnamt, infot, nout, lerr, ok )
2524  infot = 6
2525  CALL ztrmv( 'U', 'N', 'N', 2, a, 1, x, 1 )
2526  CALL chkxer( srnamt, infot, nout, lerr, ok )
2527  infot = 8
2528  CALL ztrmv( 'U', 'N', 'N', 0, a, 1, x, 0 )
2529  CALL chkxer( srnamt, infot, nout, lerr, ok )
2530  GO TO 180
2531  70 infot = 1
2532  CALL ztbmv( '/', 'N', 'N', 0, 0, a, 1, x, 1 )
2533  CALL chkxer( srnamt, infot, nout, lerr, ok )
2534  infot = 2
2535  CALL ztbmv( 'U', '/', 'N', 0, 0, a, 1, x, 1 )
2536  CALL chkxer( srnamt, infot, nout, lerr, ok )
2537  infot = 3
2538  CALL ztbmv( 'U', 'N', '/', 0, 0, a, 1, x, 1 )
2539  CALL chkxer( srnamt, infot, nout, lerr, ok )
2540  infot = 4
2541  CALL ztbmv( 'U', 'N', 'N', -1, 0, a, 1, x, 1 )
2542  CALL chkxer( srnamt, infot, nout, lerr, ok )
2543  infot = 5
2544  CALL ztbmv( 'U', 'N', 'N', 0, -1, a, 1, x, 1 )
2545  CALL chkxer( srnamt, infot, nout, lerr, ok )
2546  infot = 7
2547  CALL ztbmv( 'U', 'N', 'N', 0, 1, a, 1, x, 1 )
2548  CALL chkxer( srnamt, infot, nout, lerr, ok )
2549  infot = 9
2550  CALL ztbmv( 'U', 'N', 'N', 0, 0, a, 1, x, 0 )
2551  CALL chkxer( srnamt, infot, nout, lerr, ok )
2552  GO TO 180
2553  80 infot = 1
2554  CALL ztpmv( '/', 'N', 'N', 0, a, x, 1 )
2555  CALL chkxer( srnamt, infot, nout, lerr, ok )
2556  infot = 2
2557  CALL ztpmv( 'U', '/', 'N', 0, a, x, 1 )
2558  CALL chkxer( srnamt, infot, nout, lerr, ok )
2559  infot = 3
2560  CALL ztpmv( 'U', 'N', '/', 0, a, x, 1 )
2561  CALL chkxer( srnamt, infot, nout, lerr, ok )
2562  infot = 4
2563  CALL ztpmv( 'U', 'N', 'N', -1, a, x, 1 )
2564  CALL chkxer( srnamt, infot, nout, lerr, ok )
2565  infot = 7
2566  CALL ztpmv( 'U', 'N', 'N', 0, a, x, 0 )
2567  CALL chkxer( srnamt, infot, nout, lerr, ok )
2568  GO TO 180
2569  90 infot = 1
2570  CALL ztrsv( '/', 'N', 'N', 0, a, 1, x, 1 )
2571  CALL chkxer( srnamt, infot, nout, lerr, ok )
2572  infot = 2
2573  CALL ztrsv( 'U', '/', 'N', 0, a, 1, x, 1 )
2574  CALL chkxer( srnamt, infot, nout, lerr, ok )
2575  infot = 3
2576  CALL ztrsv( 'U', 'N', '/', 0, a, 1, x, 1 )
2577  CALL chkxer( srnamt, infot, nout, lerr, ok )
2578  infot = 4
2579  CALL ztrsv( 'U', 'N', 'N', -1, a, 1, x, 1 )
2580  CALL chkxer( srnamt, infot, nout, lerr, ok )
2581  infot = 6
2582  CALL ztrsv( 'U', 'N', 'N', 2, a, 1, x, 1 )
2583  CALL chkxer( srnamt, infot, nout, lerr, ok )
2584  infot = 8
2585  CALL ztrsv( 'U', 'N', 'N', 0, a, 1, x, 0 )
2586  CALL chkxer( srnamt, infot, nout, lerr, ok )
2587  GO TO 180
2588  100 infot = 1
2589  CALL ztbsv( '/', 'N', 'N', 0, 0, a, 1, x, 1 )
2590  CALL chkxer( srnamt, infot, nout, lerr, ok )
2591  infot = 2
2592  CALL ztbsv( 'U', '/', 'N', 0, 0, a, 1, x, 1 )
2593  CALL chkxer( srnamt, infot, nout, lerr, ok )
2594  infot = 3
2595  CALL ztbsv( 'U', 'N', '/', 0, 0, a, 1, x, 1 )
2596  CALL chkxer( srnamt, infot, nout, lerr, ok )
2597  infot = 4
2598  CALL ztbsv( 'U', 'N', 'N', -1, 0, a, 1, x, 1 )
2599  CALL chkxer( srnamt, infot, nout, lerr, ok )
2600  infot = 5
2601  CALL ztbsv( 'U', 'N', 'N', 0, -1, a, 1, x, 1 )
2602  CALL chkxer( srnamt, infot, nout, lerr, ok )
2603  infot = 7
2604  CALL ztbsv( 'U', 'N', 'N', 0, 1, a, 1, x, 1 )
2605  CALL chkxer( srnamt, infot, nout, lerr, ok )
2606  infot = 9
2607  CALL ztbsv( 'U', 'N', 'N', 0, 0, a, 1, x, 0 )
2608  CALL chkxer( srnamt, infot, nout, lerr, ok )
2609  GO TO 180
2610  110 infot = 1
2611  CALL ztpsv( '/', 'N', 'N', 0, a, x, 1 )
2612  CALL chkxer( srnamt, infot, nout, lerr, ok )
2613  infot = 2
2614  CALL ztpsv( 'U', '/', 'N', 0, a, x, 1 )
2615  CALL chkxer( srnamt, infot, nout, lerr, ok )
2616  infot = 3
2617  CALL ztpsv( 'U', 'N', '/', 0, a, x, 1 )
2618  CALL chkxer( srnamt, infot, nout, lerr, ok )
2619  infot = 4
2620  CALL ztpsv( 'U', 'N', 'N', -1, a, x, 1 )
2621  CALL chkxer( srnamt, infot, nout, lerr, ok )
2622  infot = 7
2623  CALL ztpsv( 'U', 'N', 'N', 0, a, x, 0 )
2624  CALL chkxer( srnamt, infot, nout, lerr, ok )
2625  GO TO 180
2626  120 infot = 1
2627  CALL zgerc( -1, 0, alpha, x, 1, y, 1, a, 1 )
2628  CALL chkxer( srnamt, infot, nout, lerr, ok )
2629  infot = 2
2630  CALL zgerc( 0, -1, alpha, x, 1, y, 1, a, 1 )
2631  CALL chkxer( srnamt, infot, nout, lerr, ok )
2632  infot = 5
2633  CALL zgerc( 0, 0, alpha, x, 0, y, 1, a, 1 )
2634  CALL chkxer( srnamt, infot, nout, lerr, ok )
2635  infot = 7
2636  CALL zgerc( 0, 0, alpha, x, 1, y, 0, a, 1 )
2637  CALL chkxer( srnamt, infot, nout, lerr, ok )
2638  infot = 9
2639  CALL zgerc( 2, 0, alpha, x, 1, y, 1, a, 1 )
2640  CALL chkxer( srnamt, infot, nout, lerr, ok )
2641  GO TO 180
2642  130 infot = 1
2643  CALL zgeru( -1, 0, alpha, x, 1, y, 1, a, 1 )
2644  CALL chkxer( srnamt, infot, nout, lerr, ok )
2645  infot = 2
2646  CALL zgeru( 0, -1, alpha, x, 1, y, 1, a, 1 )
2647  CALL chkxer( srnamt, infot, nout, lerr, ok )
2648  infot = 5
2649  CALL zgeru( 0, 0, alpha, x, 0, y, 1, a, 1 )
2650  CALL chkxer( srnamt, infot, nout, lerr, ok )
2651  infot = 7
2652  CALL zgeru( 0, 0, alpha, x, 1, y, 0, a, 1 )
2653  CALL chkxer( srnamt, infot, nout, lerr, ok )
2654  infot = 9
2655  CALL zgeru( 2, 0, alpha, x, 1, y, 1, a, 1 )
2656  CALL chkxer( srnamt, infot, nout, lerr, ok )
2657  GO TO 180
2658  140 infot = 1
2659  CALL zher( '/', 0, ralpha, x, 1, a, 1 )
2660  CALL chkxer( srnamt, infot, nout, lerr, ok )
2661  infot = 2
2662  CALL zher( 'U', -1, ralpha, x, 1, a, 1 )
2663  CALL chkxer( srnamt, infot, nout, lerr, ok )
2664  infot = 5
2665  CALL zher( 'U', 0, ralpha, x, 0, a, 1 )
2666  CALL chkxer( srnamt, infot, nout, lerr, ok )
2667  infot = 7
2668  CALL zher( 'U', 2, ralpha, x, 1, a, 1 )
2669  CALL chkxer( srnamt, infot, nout, lerr, ok )
2670  GO TO 180
2671  150 infot = 1
2672  CALL zhpr( '/', 0, ralpha, x, 1, a )
2673  CALL chkxer( srnamt, infot, nout, lerr, ok )
2674  infot = 2
2675  CALL zhpr( 'U', -1, ralpha, x, 1, a )
2676  CALL chkxer( srnamt, infot, nout, lerr, ok )
2677  infot = 5
2678  CALL zhpr( 'U', 0, ralpha, x, 0, a )
2679  CALL chkxer( srnamt, infot, nout, lerr, ok )
2680  GO TO 180
2681  160 infot = 1
2682  CALL zher2( '/', 0, alpha, x, 1, y, 1, a, 1 )
2683  CALL chkxer( srnamt, infot, nout, lerr, ok )
2684  infot = 2
2685  CALL zher2( 'U', -1, alpha, x, 1, y, 1, a, 1 )
2686  CALL chkxer( srnamt, infot, nout, lerr, ok )
2687  infot = 5
2688  CALL zher2( 'U', 0, alpha, x, 0, y, 1, a, 1 )
2689  CALL chkxer( srnamt, infot, nout, lerr, ok )
2690  infot = 7
2691  CALL zher2( 'U', 0, alpha, x, 1, y, 0, a, 1 )
2692  CALL chkxer( srnamt, infot, nout, lerr, ok )
2693  infot = 9
2694  CALL zher2( 'U', 2, alpha, x, 1, y, 1, a, 1 )
2695  CALL chkxer( srnamt, infot, nout, lerr, ok )
2696  GO TO 180
2697  170 infot = 1
2698  CALL zhpr2( '/', 0, alpha, x, 1, y, 1, a )
2699  CALL chkxer( srnamt, infot, nout, lerr, ok )
2700  infot = 2
2701  CALL zhpr2( 'U', -1, alpha, x, 1, y, 1, a )
2702  CALL chkxer( srnamt, infot, nout, lerr, ok )
2703  infot = 5
2704  CALL zhpr2( 'U', 0, alpha, x, 0, y, 1, a )
2705  CALL chkxer( srnamt, infot, nout, lerr, ok )
2706  infot = 7
2707  CALL zhpr2( 'U', 0, alpha, x, 1, y, 0, a )
2708  CALL chkxer( srnamt, infot, nout, lerr, ok )
2709 *
2710  180 IF( ok )THEN
2711  WRITE( nout, fmt = 9999 )srnamt
2712  ELSE
2713  WRITE( nout, fmt = 9998 )srnamt
2714  END IF
2715  RETURN
2716 *
2717  9999 FORMAT( ' ', a6, ' PASSED THE TESTS OF ERROR-EXITS' )
2718  9998 FORMAT( ' ******* ', a6, ' FAILED THE TESTS OF ERROR-EXITS *****',
2719  $ '**' )
2720 *
2721 * End of ZCHKE.
2722 *
subroutine zhemv(UPLO, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZHEMV
Definition: zhemv.f:156
subroutine ztrsv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
ZTRSV
Definition: ztrsv.f:151
subroutine zhpr2(UPLO, N, ALPHA, X, INCX, Y, INCY, AP)
ZHPR2
Definition: zhpr2.f:147
subroutine zgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZGEMV
Definition: zgemv.f:160
subroutine zgbmv(TRANS, M, N, KL, KU, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZGBMV
Definition: zgbmv.f:189
subroutine zgerc(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERC
Definition: zgerc.f:132
subroutine ztbmv(UPLO, TRANS, DIAG, N, K, A, LDA, X, INCX)
ZTBMV
Definition: ztbmv.f:188
subroutine ztpsv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPSV
Definition: ztpsv.f:146
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
Definition: cblat2.f:3199
subroutine zher2(UPLO, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZHER2
Definition: zher2.f:152
subroutine ztpmv(UPLO, TRANS, DIAG, N, AP, X, INCX)
ZTPMV
Definition: ztpmv.f:144
subroutine zher(UPLO, N, ALPHA, X, INCX, A, LDA)
ZHER
Definition: zher.f:137
subroutine zhpr(UPLO, N, ALPHA, X, INCX, AP)
ZHPR
Definition: zhpr.f:132
subroutine zhbmv(UPLO, N, K, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZHBMV
Definition: zhbmv.f:189
subroutine ztbsv(UPLO, TRANS, DIAG, N, K, A, LDA, X, INCX)
ZTBSV
Definition: ztbsv.f:191
subroutine ztrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
ZTRMV
Definition: ztrmv.f:149
subroutine zgeru(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERU
Definition: zgeru.f:132
subroutine zhpmv(UPLO, N, ALPHA, AP, X, INCX, BETA, Y, INCY)
ZHPMV
Definition: zhpmv.f:151
Here is the call graph for this function:
Here is the caller graph for this function: