skip to main content
research-article

Anasazi software for the numerical solution of large-scale eigenvalue problems

Published:23 July 2009Publication History
Skip Abstract Section

Abstract

Anasazi is a package within the Trilinos software project that provides a framework for the iterative, numerical solution of large-scale eigenvalue problems. Anasazi is written in ANSI C++ and exploits modern software paradigms to enable the research and development of eigensolver algorithms. Furthermore, Anasazi provides implementations for some of the most recent eigensolver methods. The purpose of our article is to describe the design and development of the Anasazi framework. A performance comparison of Anasazi and the popular FORTRAN 77 code ARPACK is given.

References

  1. Absil, P.-A., Baker, C. G., and Gallivan, K. A. 2007. Trust-region methods on Riemannian manifolds. Found. Comput. Math. 7, 3, 303--330. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Anderson, E., Bai, Z., Bischof, C., Blackford, S., Demmel, J., Dongarra, J., Croz, J. D., Greenbaum, A., Hammarling, S., McKenney, A., Ostrouchov, S., and Sorensen, D. 1999. LAPACK Users' Guide, 3rd Ed. SIAM, Philadelphia. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Arbenz, P., Hetmaniuk, U., Lehoucq, R., and Tuminaro, R. 2005. A comparison of eigensolvers for large-scale 3D modal analysis using AMG-preconditioned iterative methods. Int. J. Numer. Meth. Engng. 64, 204--236.Google ScholarGoogle ScholarCross RefCross Ref
  4. Baker, C. G., Hetmaniuk, U., Lehoucq, R. B., and Thornquist, H. K. Anasazi: Block eigensolver package documentation. http://trilinos.sandia.gov/trilinos/packages/anasazi/index.html.Google ScholarGoogle Scholar
  5. Balay, S., Buschelman, K., Gropp, W. D., Kaushik, D., Knepley, M. G., McInnes, L. C., Smith, B. F., and Zhang, H. 2001. PETSc Web page. http://www.mcs.anl.gov/petsc.Google ScholarGoogle Scholar
  6. Bartlett, R., Boggs, P., Coffey, T., Heroux, M., Hoekstra, R., Howle, V., Long, K., Pawlowski, R., Phipps, E., Spotz, B., Thornquist, H., and Williams, A. Thyra: Interfaces for abstract numerical algorithms. http://trilinos.sandia.gov/trilinos/packages/thyra/.Google ScholarGoogle Scholar
  7. Bartlett, R. A. 2004. Teuchos::RCP Beginner's Guide. Tech. rep. SAND2004-3268. Sandia National Laboratories, Albugusberg.Google ScholarGoogle Scholar
  8. Bhardwaj, M., Pierson, K., Reese, G., Walsh, T., Day, D., Alvin, K., Peery, J., Farhat, C., and Lesoinne, M. 16-22 Nov. 2002. Salinas: A scalable software for high-performance structural and solid mechanics simulations. In Proceedings of the ACM/IEEE Conference on Supercomputing. 35--35. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Blackford, L. S., Demmel, J., Dongarra, J., Duff, I., Hammarling, S., Henry, G., Heroux, M., Kaufman, L., Lumsdaine, A., Petitet, A., Pozo, R., Remington, K., and Whaley, R. C. 2002. An updated set of basic linear algebra subprograms (BLAS). ACM Trans. Math. Softw. 28, 2, 135--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Daniel, J., Gragg, W. B., Kaufman, L., and Stewart, G. W. 1976. Reorthogonalization and stable algorithms for updating the Gram--Schmidt QR factorization. Math. Computat. 30, 772--795.Google ScholarGoogle Scholar
  11. Detlefs, D. 1992. Garbage collection and run-time typing as a C++ library. In Proceedings: USENIX C++ Technical Conference, USENIX, Ed. USENIX, pub-USENIX:adr, 37--56.Google ScholarGoogle Scholar
  12. Embree, M. and Lehoucq, R. B. 2007. Dynamical systems and non-Hermitian iterative eigensolvers. SIAM J. Numer. Anal. 47, 1445--1473, DOI 10.1137/07070187x. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Hernández, V., Román, J., Tomás, A., and Vidal, V. 2005. A survey of software for sparse eigenvalue problems. Tech. rep. SLEPc Technical Report STR-6. Universidad Politecnica de Valencia, Valencia, Spain. http://www.grycap.upv.es/slepc.Google ScholarGoogle Scholar
  14. Hernández, V., Román, J., Tomás, A., and Vidal, V. 2006. SLEPc users manual: Scalable library for eigenvalue problem computations. Tech. rep. DISC-II/24/02. Universidad Politecnica de Valencia, Valencia, Spain. http://www.grycap.upv.es/slepc.Google ScholarGoogle Scholar
  15. Heroux, M., Hoekstra, R., Sexton, P., Spotz, B., Willenbring, J., and Williams, A. Epetra: Linear algebra services package. http://trilinos.sandia.gov/trilinos/packages/epetra/.Google ScholarGoogle Scholar
  16. Heroux, M. A., Baker, C. G., Bartlett, R. A., Kampschoff, K., Long, K. R., Sexton, P. M., and Thornquist, H. K. Teuchos: The Trilinos tools library. http://trilinos.sandia.gov/trilinos/packages/teuchos/.Google ScholarGoogle Scholar
  17. Heroux, M. A., Bartlett, R. A., Howle, V. E., Hoekstra, R. J., Hu, J. J., Kolda, T. G., Lehoucq, R. B., Long, K. R., Pawlowski, R. P., Phipps, E. T., Salinger, A. G., Thornquist, H. K., Tuminaro, R. S., Willenbring, J. M., Williams, A., and Stanley, K. S. 2005. An overview of the Trilinos project. ACM Trans. Math. Softw. 31, 3, 397--423. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Hetmaniuk, U. and Lehoucq, R. 2006. Basis selection in LOBPCG. J. Comput. Phys. 218, 324--332. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Knyazev, A. V. 2001. Toward the optimal preconditioned eigensolver: Locally optimal block preconditioned conjugate gradient method. SIAM J. Sci. Comput. 23, 517--541. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Lawson, C. L., Hanson, R. J., Kincaid, D. R., and Krogh, F. T. 1979. Basic linear algebra subprograms for Fortran usage. ACM Trans. Math. Softw. 5, 3, 308--323. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Lehoucq, R. B., Sorensen, D. C., and Yang, C. 1998. ARPACK Users' Guide: Solution of Large-Scale Eigenvalue Problems with Implicitly Restarted Arnoldi Methods. SIAM, Philadelphia.Google ScholarGoogle Scholar
  22. Meyers, N. C. 1995. Traits: A new and useful template technique. C++ Rep. 7, 32--35.Google ScholarGoogle Scholar
  23. Morgan, R. B. and Scott, D. S. 1986. Generalizations of Davidson's method for computing eigenvalues of sparse symmetric matrices. SIAM J. Sci. Comput. 7, 817--825. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Musser, D. R. and Stepanov, A. A. 1994. Algorithm-oriented generic libraries. Softw. Pract. Exper. 24, 7, 623--642. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Saad, Y. 1992. Numerical Methods for Large Eigenvalue Problems. John Wiley and Sons, New York.Google ScholarGoogle Scholar
  26. Sala, M., Heroux, M. A., and Day, D. M. 2004. Trilinos tutorial. Tech. rep. SAND2004-2189. Sandia National Laboratories, Albuquerque.Google ScholarGoogle Scholar
  27. Salinger, A. G., Burroughs, E. A., Pawlowski, R. P., Phipps, E. T., and Romero, L. A. 2005. Bifurcation tracking algorithms and software for large-scale applications. Int. J. Bifurcat. Chaos 15, 1015--1032.Google ScholarGoogle ScholarCross RefCross Ref
  28. Sleijpen, G. L. G. and van der Vorst, H. A. 1996. A Jacobi-Davidson iteration method for linear eigenvalue problems. SIAM J. Matrix Anal. Appl. 17, 2, 401--425. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Sorensen, D. 2002. Numerical Methods for Large Eigenvalue Problems. Acta Numerica, vol. 11. Cambridge University Press, Cambridge, 519--584.Google ScholarGoogle ScholarCross RefCross Ref
  30. Sorensen, D. C. 1992. Implicit application of polynomial filters in a k-step Arnoldi method. SIAM J. Matrix Anal. Appl. 13, 357--385. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Stathopoulos, A. and McCombs, J. R. 2006. PRIMME home page. http://www.cs.wm.edu/~andreas/software/.Google ScholarGoogle Scholar
  32. Stathopoulos, A. and Wu, K. 2002. A block orthogonalization procedure with constant synchronization requirements. SIAM J. Sci. Comput. 23, 2165--2182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Stewart, G. W. 2001a. A Krylov-Schur algorithm for large eigenproblems. SIAM J. Matrix Anal. Appl. 23, 601--614. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Stewart, G. W. 2001b. Matrix Systems: Eigensystems. vol. II. SIAM, Philadelphia.Google ScholarGoogle Scholar
  35. van der Vorst, H. A. 2002. Computational methods for large eigenvalue problems. In P. Ciarlet and J. Lions, Eds. Handbook of Numerical Analysis, vol. VIII. North-Holland (Elsevier), Amsterdam, The Netherlands, 3--179.Google ScholarGoogle Scholar
  36. Vandevoorde, D. and Josuttis, N. M. 2002. C++ Templates. Addison-Wesley Longman Publishing Co., Inc., Reading. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Veldhuizen, T. 1996. Using C++ trait classes for scientific computing. http://oonumerics.org/blitz/traits.html.Google ScholarGoogle Scholar

Index Terms

  1. Anasazi software for the numerical solution of large-scale eigenvalue problems

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            • Published in

              cover image ACM Transactions on Mathematical Software
              ACM Transactions on Mathematical Software  Volume 36, Issue 3
              July 2009
              122 pages
              ISSN:0098-3500
              EISSN:1557-7295
              DOI:10.1145/1527286
              Issue’s Table of Contents

              Copyright © 2009 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 23 July 2009
              • Accepted: 1 October 2008
              • Revised: 1 January 2008
              • Received: 1 January 2007
              Published in toms Volume 36, Issue 3

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • research-article
              • Research
              • Refereed

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader