Rotate to view desktop version ...

arpackpp (ARPACK++)

arpackpp Github Repository
GIT repository:
We have moved this project to GitHub for easy sharing and (hopefully) collaborative maintenance. The GitHub version contains the fixes (see patch SuperLU 4.3 below) and additionally fixes and extensions to work with a modern umfpack and cholmod (from the SparseSuite).
New Features of Git Repository:
  • Compiles with gcc and clang (on Linux and Mac OSX)
  • Upgrade to SuperLU 5.0 support
  • Upgrade to UMFPACK SuiteSparse support (sym. real problems)
  • Add CHOLMOD SuiteSparse support (sym. real problems)
  • Add Cmake support for building examples
  • Add install scripts for building dependencies from source
Deprecated Arpack++ 1.2 patch
For historic reasons, we keep the following information here, but recommend to obtain a tagged version from GitHub instead. Our patch arpack++1.2_slu4.3.patch.diff fixes ARPACK++1.2 to run with g++ 4.4.6 and SuperLU 4.3 and is used in modern linux distribution (e.g. Ubuntu).
It fixes the compile errors encountered when compiling ARPACK++ with more recent compiler versions!
"ARPACK++ is an object-oriented version of the ARPACK package. ARPACK is a well known collection of FORTRAN subroutines designed to compute a few eigenvalues and eigenvectors of large scale sparse matrices and pencils."
  • Use of this-> pointer for members of template classes
  • Includes corrected (e.g. math.h -> cmath)
  • Namespace std:: added
  • Replaced char * with const std::string& in most places
  • Updated SuperLU interface to run with 4.3
Typical errors:
  • 'n' was not declared in this scope
  • 'nconv' was not declared in this scope
Apply patch:
Make sure that arpack++ contains the version 1.2
The first line in arpack++/README should be: "ARPACK++ version 1.2. Feb 20, 2000."
   arpack++/    arpackpp1.2_slu4.3.patch.diff
>patch -p 1 -d arpack++ < arpackpp1.2_slu4.3.patch.diff
Patch Download:
Martin Reuter - MIT - Cambridge, MA, USA - EMail:
Last modified 14.01.2022 -- [xhtml] -- [css] -- [welcome]