Home | History | Annotate | Download | only in Eigen
      1 // This file is part of Eigen, a lightweight C++ template library
      2 // for linear algebra.
      3 //
      4 // This Source Code Form is subject to the terms of the Mozilla
      5 // Public License v. 2.0. If a copy of the MPL was not distributed
      6 // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
      7 
      8 #ifndef EIGEN_PASTIXSUPPORT_MODULE_H
      9 #define EIGEN_PASTIXSUPPORT_MODULE_H
     10 
     11 #include "SparseCore"
     12 
     13 #include "src/Core/util/DisableStupidWarnings.h"
     14 
     15 extern "C" {
     16 #include <pastix_nompi.h>
     17 #include <pastix.h>
     18 }
     19 
     20 #ifdef complex
     21 #undef complex
     22 #endif
     23 
     24 /** \ingroup Support_modules
     25   * \defgroup PaStiXSupport_Module PaStiXSupport module
     26   * 
     27   * This module provides an interface to the <a href="http://pastix.gforge.inria.fr/">PaSTiX</a> library.
     28   * PaSTiX is a general \b supernodal, \b parallel and \b opensource sparse solver.
     29   * It provides the two following main factorization classes:
     30   * - class PastixLLT : a supernodal, parallel LLt Cholesky factorization.
     31   * - class PastixLDLT: a supernodal, parallel LDLt Cholesky factorization.
     32   * - class PastixLU : a supernodal, parallel LU factorization (optimized for a symmetric pattern).
     33   * 
     34   * \code
     35   * #include <Eigen/PaStiXSupport>
     36   * \endcode
     37   *
     38   * In order to use this module, the PaSTiX headers must be accessible from the include paths, and your binary must be linked to the PaSTiX library and its dependencies.
     39   * The dependencies depend on how PaSTiX has been compiled.
     40   * For a cmake based project, you can use our FindPaSTiX.cmake module to help you in this task.
     41   *
     42   */
     43 
     44 #include "src/PaStiXSupport/PaStiXSupport.h"
     45 
     46 #include "src/Core/util/ReenableStupidWarnings.h"
     47 
     48 #endif // EIGEN_PASTIXSUPPORT_MODULE_H
     49