EQuUs MKL component

  Copyright (C) 2016 Peter Rakyta, Ph.D.
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.
  You should have received a copy of the GNU General Public License
  along with this program.  If not, see http://www.gnu.org/licenses/.


The EQuUs MKL component is an interface to the Intel MKL PARDISO package package providing a high-performance, robust, memory efficient, and easy to use software package for solving large sparse linear systems of equations on shared memory multiprocessors. The EQuUs MKL component uses the MEX technology to incorporate C, C++ and fortran libraries into Matlab and Octave packages.
The PARDISO package enables us to calculate individual elements of the inverse of a sparse matrix. Calculating, for example, the Green's function between the surface points of the scattering region, or evaluating the density of states on the atomic sites enables us to treat large scale systems including disorders and other kind of inhomogeneities or performing self-consistent calculations. The PARDISO solver is based on the following publications:
  • M. Luisier, O. Schenk et.al., Euro-Par 2013, LNCS 8097, F. Wolf, B. Mohr, and D. an Ney (Eds.), Springer-Verlag Berlin Heidelberg, pp. 533-544, 2013.
  • O. Schenk, M. Bollhöfer, and R. Römer, SIAM Review 50 (2008), pp. 91-112.
  • O. Schenk, A. Wachter, and M. Hagemann, Journal of Computational Optimization and Applications, pp. 321-341, Volume 36, Numbers 2-3 (April, 2007).

The EQuUs MKL component is compatible with both MATLAB and octave packages, however, one need to compile separate binaries for the two products. The implemented Intel MKL PARDISO routines can treat structurally symmetric matrices (thus the matrix does not to be Hermitian). To compile the EQuUs MKL component please following the installation guide. EQuUs MKL can be used as an independent component it does not depend on the other EQuUs components.
For technical support or for implementing new functionalities please do not hesitate to contact us.

Usage of the EQuUs MKL component

EQuUs MKL component contains of individual functions that are independent from other EQuUs components. After a successful compilation the generated MEX files can be invoked from the MATLAB/octave command line as described here. The description of the individual functions can be found here: