1####################################################################### 2# This makefile runs the test programs for the linear equation routines 3# and the eigenvalue routines in LAPACK. The test output files 4# are grouped as follows: 5# 6# SLINTST,SEIGTST -- Single precision real test routines 7# CLINTST,CEIGTST -- Single precision complex test routines 8# DLINTST,DEIGTST -- Double precision real test routines 9# ZLINTST,ZEIGTST -- Double precision complex test routines 10# 11# Test programs can be executed for all or some of the four different 12# precisions. Enter 'make' followed by one or more of the data types 13# desired. 14# Some examples: 15# make single 16# make single complex 17# make single double complex complex16 18# Alternatively, the command 19# make 20# without any arguments runs all eight test programs. 21# The executable files are called: 22# xlintsts, xlintstd, xlintstc, and xlintstz for LIN 23# xeigtsts, xeigtstd, xeigtstc, and xeigtstz for EIG 24# and exist in the current directory level. 25# 26# To remove the output files after the tests have been run, enter 27# make clean 28# 29# To re-run specific tests after a make, enter (for example): 30# 'rm ssvd.out; make' or: 31# 'make ssvd.out' or: 32# 'touch svd.in; make' (to re-run the single precision SVD tests.) 33# 34# 'rm *svd.out; make' (to re-run all the SVD tests.) 35# 36####################################################################### 37 38include ../make.inc 39 40ifneq ($(strip $(VARLIB)),) 41 LAPACKLIB := $(VARLIB) ../$(LAPACKLIB) 42endif 43 44 45all: single complex double complex16 singleproto doubleproto complexproto complex16proto 46 47SEIGTST= snep.out \ 48 ssep.out \ 49 ssvd.out \ 50 sec.out \ 51 sed.out \ 52 sgg.out \ 53 sgd.out \ 54 ssb.out \ 55 ssg.out \ 56 sbal.out \ 57 sbak.out \ 58 sgbal.out \ 59 sgbak.out \ 60 sbb.out \ 61 sglm.out \ 62 sgqr.out \ 63 sgsv.out \ 64 scsd.out \ 65 slse.out 66 67CEIGTST= cnep.out \ 68 csep.out \ 69 csvd.out \ 70 cec.out \ 71 ced.out \ 72 cgg.out \ 73 cgd.out \ 74 csb.out \ 75 csg.out \ 76 cbal.out \ 77 cbak.out \ 78 cgbal.out \ 79 cgbak.out \ 80 cbb.out \ 81 cglm.out \ 82 cgqr.out \ 83 cgsv.out \ 84 ccsd.out \ 85 clse.out 86 87DEIGTST= dnep.out \ 88 dsep.out \ 89 dsvd.out \ 90 dec.out \ 91 ded.out \ 92 dgg.out \ 93 dgd.out \ 94 dsb.out \ 95 dsg.out \ 96 dbal.out \ 97 dbak.out \ 98 dgbal.out \ 99 dgbak.out \ 100 dbb.out \ 101 dglm.out \ 102 dgqr.out \ 103 dgsv.out \ 104 dcsd.out \ 105 dlse.out 106 107ZEIGTST= znep.out \ 108 zsep.out \ 109 zsvd.out \ 110 zec.out \ 111 zed.out \ 112 zgg.out \ 113 zgd.out \ 114 zsb.out \ 115 zsg.out \ 116 zbal.out \ 117 zbak.out \ 118 zgbal.out \ 119 zgbak.out \ 120 zbb.out \ 121 zglm.out \ 122 zgqr.out \ 123 zgsv.out \ 124 zcsd.out \ 125 zlse.out 126 127 128SLINTST= stest.out 129 130SLINTSTPROTO= stest_rfp.out 131 132CLINTST= ctest.out 133 134CLINTSTPROTO= ctest_rfp.out 135 136DLINTST= dtest.out 137 138DLINTSTPROTO= dstest.out dtest_rfp.out 139 140ZLINTST= ztest.out 141 142ZLINTSTPROTO= zctest.out ztest_rfp.out 143 144single: $(SLINTST) $(SEIGTST) 145complex: $(CLINTST) $(CEIGTST) 146double: $(DLINTST) $(DEIGTST) 147complex16: $(ZLINTST) $(ZEIGTST) 148singleproto: $(SLINTSTPROTO) 149complexproto: $(CLINTSTPROTO) 150doubleproto: $(DLINTSTPROTO) 151complex16proto: $(ZLINTSTPROTO) 152 153# 154# ======== SINGLE LIN TESTS =========================== 155 156stest.out: stest.in xlintsts 157 @echo Testing REAL LAPACK linear equation routines 158 ./xlintsts < stest.in > $@ 2>&1 159# 160# ======== COMPLEX LIN TESTS ========================== 161 162ctest.out: ctest.in xlintstc 163 @echo Testing COMPLEX LAPACK linear equation routines 164 ./xlintstc < ctest.in > $@ 2>&1 165# 166# ======== DOUBLE LIN TESTS =========================== 167 168dtest.out: dtest.in xlintstd 169 @echo Testing DOUBLE PRECISION LAPACK linear equation routines 170 ./xlintstd < dtest.in > $@ 2>&1 171# 172# ======== COMPLEX16 LIN TESTS ======================== 173 174ztest.out: ztest.in xlintstz 175 @echo Testing COMPLEX16 LAPACK linear equation routines 176 ./xlintstz < ztest.in > $@ 2>&1 177# 178# ======== SINGLE-DOUBLE PROTO LIN TESTS ============== 179 180dstest.out: dstest.in xlintstds 181 @echo Testing SINGLE-DOUBLE PRECISION LAPACK prototype linear equation routines 182 ./xlintstds < dstest.in > $@ 2>&1 183# 184# ======== COMPLEX-COMPLEX16 LIN TESTS ======================== 185 186zctest.out: zctest.in xlintstzc 187 @echo Testing COMPLEX-COMPLEX16 LAPACK protoype linear equation routines 188 ./xlintstzc < zctest.in > $@ 2>&1 189# 190# ======== SINGLE RFP LIN TESTS ======================== 191 192stest_rfp.out: stest_rfp.in xlintstrfs 193 @echo Testing REAL LAPACK RFP protoype linear equation routines 194 ./xlintstrfs < stest_rfp.in > $@ 2>&1 195# 196# ======== COMPLEX16 RFP LIN TESTS ======================== 197 198dtest_rfp.out: dtest_rfp.in xlintstrfd 199 @echo Testing DOUBLE PRECISION LAPACK RFP protoype linear equation routines 200 ./xlintstrfd < dtest_rfp.in > $@ 2>&1 201# 202# ======== COMPLEX16 RFP LIN TESTS ======================== 203 204ctest_rfp.out: ctest_rfp.in xlintstrfc 205 @echo Testing COMPLEX LAPACK RFP protoype linear equation routines 206 ./xlintstrfc < ctest_rfp.in > $@ 2>&1 207# 208# ======== COMPLEX16 RFP LIN TESTS ======================== 209 210ztest_rfp.out: ztest_rfp.in xlintstrfz 211 @echo Testing COMPLEX16 LAPACK RFP protoype linear equation routines 212 ./xlintstrfz < ztest_rfp.in > $@ 2>&1 213# 214# 215# ======== SINGLE EIG TESTS =========================== 216# 217 218snep.out: nep.in xeigtsts 219 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines 220 ./xeigtsts < nep.in > $@ 2>&1 221 222ssep.out: sep.in xeigtsts 223 @echo SEP: Testing Symmetric Eigenvalue Problem routines 224 ./xeigtsts < sep.in > $@ 2>&1 225 226ssvd.out: svd.in xeigtsts 227 @echo SVD: Testing Singular Value Decomposition routines 228 ./xeigtsts < svd.in > $@ 2>&1 229 230sec.out: sec.in xeigtsts 231 @echo SEC: Testing REAL Eigen Condition Routines 232 ./xeigtsts < sec.in > $@ 2>&1 233 234sed.out: sed.in xeigtsts 235 @echo SEV: Testing REAL Nonsymmetric Eigenvalue Driver 236 ./xeigtsts < sed.in > $@ 2>&1 237 238sgg.out: sgg.in xeigtsts 239 @echo SGG: Testing REAL Nonsymmetric Generalized Eigenvalue Problem routines 240 ./xeigtsts < sgg.in > $@ 2>&1 241 242sgd.out: sgd.in xeigtsts 243 @echo SGD: Testing REAL Nonsymmetric Generalized Eigenvalue Problem driver routines 244 ./xeigtsts < sgd.in > $@ 2>&1 245 246ssb.out: ssb.in xeigtsts 247 @echo SSB: Testing REAL Symmetric Eigenvalue Problem routines 248 ./xeigtsts < ssb.in > $@ 2>&1 249 250ssg.out: ssg.in xeigtsts 251 @echo SSG: Testing REAL Symmetric Generalized Eigenvalue Problem routines 252 ./xeigtsts < ssg.in > $@ 2>&1 253 254sbal.out: sbal.in xeigtsts 255 @echo SGEBAL: Testing the balancing of a REAL general matrix 256 ./xeigtsts < sbal.in > $@ 2>&1 257 258sbak.out: sbak.in xeigtsts 259 @echo SGEBAK: Testing the back transformation of a REAL balanced matrix 260 ./xeigtsts < sbak.in > $@ 2>&1 261 262sgbal.out: sgbal.in xeigtsts 263 @echo SGGBAL: Testing the balancing of a pair of REAL general matrices 264 ./xeigtsts < sgbal.in > $@ 2>&1 265 266sgbak.out: sgbak.in xeigtsts 267 @echo SGGBAK: Testing the back transformation of a pair of REAL balanced matrices 268 ./xeigtsts < sgbak.in > $@ 2>&1 269 270sbb.out: sbb.in xeigtsts 271 @echo SBB: Testing banded Singular Value Decomposition routines 272 ./xeigtsts < sbb.in > $@ 2>&1 273 274sglm.out: glm.in xeigtsts 275 @echo GLM: Testing Generalized Linear Regression Model routines 276 ./xeigtsts < glm.in > $@ 2>&1 277 278sgqr.out: gqr.in xeigtsts 279 @echo GQR: Testing Generalized QR and RQ factorization routines 280 ./xeigtsts < gqr.in > $@ 2>&1 281 282sgsv.out: gsv.in xeigtsts 283 @echo GSV: Testing Generalized Singular Value Decomposition routines 284 ./xeigtsts < gsv.in > $@ 2>&1 285 286scsd.out: csd.in xeigtsts 287 @echo CSD: Testing CS Decomposition routines 288 ./xeigtsts < csd.in > $@ 2>&1 289 290slse.out: lse.in xeigtsts 291 @echo LSE: Testing Constrained Linear Least Squares routines 292 ./xeigtsts < lse.in > $@ 2>&1 293# 294# ======== COMPLEX EIG TESTS =========================== 295 296cnep.out: nep.in xeigtstc 297 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines 298 ./xeigtstc < nep.in > $@ 2>&1 299 300csep.out: sep.in xeigtstc 301 @echo SEP: Testing Symmetric Eigenvalue Problem routines 302 ./xeigtstc < sep.in > $@ 2>&1 303 304csvd.out: svd.in xeigtstc 305 @echo SVD: Testing Singular Value Decomposition routines 306 ./xeigtstc < svd.in > $@ 2>&1 307 308cec.out: cec.in xeigtstc 309 @echo CEC: Testing COMPLEX Eigen Condition Routines 310 ./xeigtstc < cec.in > $@ 2>&1 311 312ced.out: ced.in xeigtstc 313 @echo CES: Testing COMPLEX Nonsymmetric Schur Form Driver 314 ./xeigtstc < ced.in > $@ 2>&1 315 316cgg.out: cgg.in xeigtstc 317 @echo CGG: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem routines 318 ./xeigtstc < cgg.in > $@ 2>&1 319 320cgd.out: cgd.in xeigtstc 321 @echo CGD: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem driver routines 322 ./xeigtstc < cgd.in > $@ 2>&1 323 324csb.out: csb.in xeigtstc 325 @echo CHB: Testing Hermitian Eigenvalue Problem routines 326 ./xeigtstc < csb.in > $@ 2>&1 327 328csg.out: csg.in xeigtstc 329 @echo CSG: Testing Symmetric Generalized Eigenvalue Problem routines 330 ./xeigtstc < csg.in > $@ 2>&1 331 332cbal.out: cbal.in xeigtstc 333 @echo CGEBAL: Testing the balancing of a COMPLEX general matrix 334 ./xeigtstc < cbal.in > $@ 2>&1 335 336cbak.out: cbak.in xeigtstc 337 @echo CGEBAK: Testing the back transformation of a COMPLEX balanced matrix 338 ./xeigtstc < cbak.in > $@ 2>&1 339 340cgbal.out: cgbal.in xeigtstc 341 @echo CGGBAL: Testing the balancing of a pair of COMPLEX general matrices 342 ./xeigtstc < cgbal.in > $@ 2>&1 343 344cgbak.out: cgbak.in xeigtstc 345 @echo CGGBAK: Testing the back transformation of a pair of COMPLEX balanced matrices 346 ./xeigtstc < cgbak.in > $@ 2>&1 347 348cbb.out: cbb.in xeigtstc 349 @echo CBB: Testing banded Singular Value Decomposition routines 350 ./xeigtstc < cbb.in > $@ 2>&1 351 352cglm.out: glm.in xeigtstc 353 @echo GLM: Testing Generalized Linear Regression Model routines 354 ./xeigtstc < glm.in > $@ 2>&1 355 356cgqr.out: gqr.in xeigtstc 357 @echo GQR: Testing Generalized QR and RQ factorization routines 358 ./xeigtstc < gqr.in > $@ 2>&1 359 360cgsv.out: gsv.in xeigtstc 361 @echo GSV: Testing Generalized Singular Value Decomposition routines 362 ./xeigtstc < gsv.in > $@ 2>&1 363 364ccsd.out: csd.in xeigtstc 365 @echo CSD: Testing CS Decomposition routines 366 ./xeigtstc < csd.in > $@ 2>&1 367 368clse.out: lse.in xeigtstc 369 @echo LSE: Testing Constrained Linear Least Squares routines 370 ./xeigtstc < lse.in > $@ 2>&1 371# 372# ======== DOUBLE EIG TESTS =========================== 373 374dnep.out: nep.in xeigtstd 375 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines 376 ./xeigtstd < nep.in > $@ 2>&1 377 378dsep.out: sep.in xeigtstd 379 @echo SEP: Testing Symmetric Eigenvalue Problem routines 380 ./xeigtstd < sep.in > $@ 2>&1 381 382dsvd.out: svd.in xeigtstd 383 @echo SVD: Testing Singular Value Decomposition routines 384 ./xeigtstd < svd.in > $@ 2>&1 385 386dec.out: dec.in xeigtstd 387 @echo DEC: Testing DOUBLE PRECISION Eigen Condition Routines 388 ./xeigtstd < dec.in > $@ 2>&1 389 390ded.out: ded.in xeigtstd 391 @echo DEV: Testing DOUBLE PRECISION Nonsymmetric Eigenvalue Driver 392 ./xeigtstd < ded.in > $@ 2>&1 393 394dgg.out: dgg.in xeigtstd 395 @echo DGG: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem routines 396 ./xeigtstd < dgg.in > $@ 2>&1 397 398dgd.out: dgd.in xeigtstd 399 @echo DGD: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem driver routines 400 ./xeigtstd < dgd.in > $@ 2>&1 401 402dsb.out: dsb.in xeigtstd 403 @echo DSB: Testing DOUBLE PRECISION Symmetric Eigenvalue Problem routines 404 ./xeigtstd < dsb.in > $@ 2>&1 405 406dsg.out: dsg.in xeigtstd 407 @echo DSG: Testing DOUBLE PRECISION Symmetric Generalized Eigenvalue Problem routines 408 ./xeigtstd < dsg.in > $@ 2>&1 409 410dbal.out: dbal.in xeigtstd 411 @echo DGEBAL: Testing the balancing of a DOUBLE PRECISION general matrix 412 ./xeigtstd < dbal.in > $@ 2>&1 413 414dbak.out: dbak.in xeigtstd 415 @echo DGEBAK: Testing the back transformation of a DOUBLE PRECISION balanced matrix 416 ./xeigtstd < dbak.in > $@ 2>&1 417 418dgbal.out: dgbal.in xeigtstd 419 @echo DGGBAL: Testing the balancing of a pair of DOUBLE PRECISION general matrices 420 ./xeigtstd < dgbal.in > $@ 2>&1 421 422dgbak.out: dgbak.in xeigtstd 423 @echo DGGBAK: Testing the back transformation of a pair of DOUBLE PRECISION balanced matrices 424 ./xeigtstd < dgbak.in > $@ 2>&1 425 426dbb.out: dbb.in xeigtstd 427 @echo DBB: Testing banded Singular Value Decomposition routines 428 ./xeigtstd < dbb.in > $@ 2>&1 429 430dglm.out: glm.in xeigtstd 431 @echo GLM: Testing Generalized Linear Regression Model routines 432 ./xeigtstd < glm.in > $@ 2>&1 433 434dgqr.out: gqr.in xeigtstd 435 @echo GQR: Testing Generalized QR and RQ factorization routines 436 ./xeigtstd < gqr.in > $@ 2>&1 437 438dgsv.out: gsv.in xeigtstd 439 @echo GSV: Testing Generalized Singular Value Decomposition routines 440 ./xeigtstd < gsv.in > $@ 2>&1 441 442dcsd.out: csd.in xeigtstd 443 @echo CSD: Testing CS Decomposition routines 444 ./xeigtstd < csd.in > $@ 2>&1 445 446dlse.out: lse.in xeigtstd 447 @echo LSE: Testing Constrained Linear Least Squares routines 448 ./xeigtstd < lse.in > $@ 2>&1 449# 450# ======== COMPLEX16 EIG TESTS =========================== 451 452znep.out: nep.in xeigtstz 453 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines 454 ./xeigtstz < nep.in > $@ 2>&1 455 456zsep.out: sep.in xeigtstz 457 @echo SEP: Testing Symmetric Eigenvalue Problem routines 458 ./xeigtstz < sep.in > $@ 2>&1 459 460zsvd.out: svd.in xeigtstz 461 @echo SVD: Testing Singular Value Decomposition routines 462 ./xeigtstz < svd.in > $@ 2>&1 463 464zec.out: zec.in xeigtstz 465 @echo ZEC: Testing COMPLEX16 Eigen Condition Routines 466 ./xeigtstz < zec.in > $@ 2>&1 467 468zed.out: zed.in xeigtstz 469 @echo ZES: Testing COMPLEX16 Nonsymmetric Schur Form Driver 470 ./xeigtstz < zed.in > $@ 2>&1 471 472zgg.out: zgg.in xeigtstz 473 @echo ZGG: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem routines 474 ./xeigtstz < zgg.in > $@ 2>&1 475 476zgd.out: zgd.in xeigtstz 477 @echo ZGD: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem driver routines 478 ./xeigtstz < zgd.in > $@ 2>&1 479 480zsb.out: zsb.in xeigtstz 481 @echo ZHB: Testing Hermitian Eigenvalue Problem routines 482 ./xeigtstz < zsb.in > $@ 2>&1 483 484zsg.out: zsg.in xeigtstz 485 @echo ZSG: Testing Symmetric Generalized Eigenvalue Problem routines 486 ./xeigtstz < zsg.in > $@ 2>&1 487 488zbal.out: zbal.in xeigtstz 489 @echo ZGEBAL: Testing the balancing of a COMPLEX16 general matrix 490 ./xeigtstz < zbal.in > $@ 2>&1 491 492zbak.out: zbak.in xeigtstz 493 @echo ZGEBAK: Testing the back transformation of a COMPLEX16 balanced matrix 494 ./xeigtstz < zbak.in > $@ 2>&1 495 496zgbal.out: zgbal.in xeigtstz 497 @echo ZGGBAL: Testing the balancing of a pair of COMPLEX general matrices 498 ./xeigtstz < zgbal.in > $@ 2>&1 499 500zgbak.out: zgbak.in xeigtstz 501 @echo ZGGBAK: Testing the back transformation of a pair of COMPLEX16 balanced matrices 502 ./xeigtstz < zgbak.in > $@ 2>&1 503 504zbb.out: zbb.in xeigtstz 505 @echo ZBB: Testing banded Singular Value Decomposition routines 506 ./xeigtstz < zbb.in > $@ 2>&1 507 508zglm.out: glm.in xeigtstz 509 @echo GLM: Testing Generalized Linear Regression Model routines 510 ./xeigtstz < glm.in > $@ 2>&1 511 512zgqr.out: gqr.in xeigtstz 513 @echo GQR: Testing Generalized QR and RQ factorization routines 514 ./xeigtstz < gqr.in > $@ 2>&1 515 516zgsv.out: gsv.in xeigtstz 517 @echo GSV: Testing Generalized Singular Value Decomposition routines 518 ./xeigtstz < gsv.in > $@ 2>&1 519 520zcsd.out: csd.in xeigtstz 521 @echo CSD: Testing CS Decomposition routines 522 ./xeigtstz < csd.in > $@ 2>&1 523 524zlse.out: lse.in xeigtstz 525 @echo LSE: Testing Constrained Linear Least Squares routines 526 ./xeigtstz < lse.in > $@ 2>&1 527# ============================================================================== 528 529xlintsts: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 530 cd LIN ; $(MAKE) single 531 532xlintstc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 533 cd LIN ; $(MAKE) complex 534 535xlintstd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 536 cd LIN ; $(MAKE) double 537 538xlintstz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 539 cd LIN ; $(MAKE) complex16 540 541xlintstrfs: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 542 cd LIN ; $(MAKE) proto-single 543 544xlintstrfc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 545 cd LIN ; $(MAKE) proto-complex 546 547xlintstrfd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 548 cd LIN ; $(MAKE) proto-double 549 550xlintstrfz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 551 cd LIN ; $(MAKE) proto-complex16 552 553xlintstds: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 554 cd LIN ; $(MAKE) proto-double 555 556xlintstzc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC) 557 cd LIN ; $(MAKE) proto-complex16 558 559xeigtsts: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC) 560 cd EIG ; $(MAKE) single 561 562xeigtstc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC) 563 cd EIG ; $(MAKE) complex 564 565xeigtstd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC) 566 cd EIG ; $(MAKE) double 567 568xeigtstz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC) 569 cd EIG ; $(MAKE) complex16 570 571clean: 572 rm -f *.out core 573 574cleanup: 575 rm -f x* *.out core 576 577FRCLIN: 578 @FRCLIN=$(FRCLIN) 579 580FRCEIG: 581 @FRCEIG=$(FRCEIG) 582 583FRC: 584 @FRC=$(FRC) 585