From cb2f1944e2c4d44c9488d7a71340dc905d4271e9 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Sat, 12 Nov 2011 15:22:35 +0100 Subject: [PATCH] add the new module headers --- Eigen/IterativeLinearSolvers | 37 ++++++++++++++++++++++++++++++++++++ Eigen/OrderingMethods | 27 ++++++++++++++++++++++++++ Eigen/SparseCholesky | 34 +++++++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 Eigen/IterativeLinearSolvers create mode 100644 Eigen/OrderingMethods create mode 100644 Eigen/SparseCholesky diff --git a/Eigen/IterativeLinearSolvers b/Eigen/IterativeLinearSolvers new file mode 100644 index 000000000..a6f29b07e --- /dev/null +++ b/Eigen/IterativeLinearSolvers @@ -0,0 +1,37 @@ +#ifndef EIGEN_ITERATIVELINEARSOLVERS_MODULE_H +#define EIGEN_ITERATIVELINEARSOLVERS_MODULE_H + +#include "SparseCore" + +#include "../../Eigen/src/Core/util/DisableStupidWarnings.h" + +namespace Eigen { + +/** \ingroup Sparse_modules + * \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module + * + * This module currently provides iterative methods to solve problems of the form \c A \c x = \c b, where \c A is a squared matrix, usually very large and sparse. + * Those solvers are accessible via the following classes: + * - ConjugateGrdient for selfadjoint (hermitian) matrices, + * - BiCGSTAB for general square matrices. + * + * Such problems can also be solved using the direct sparse decomposition modules: SparseCholesky, CholmodSupport, UmfPackSupport, SuperLUSupport. + * + * \code + * #include + * \endcode + */ + +#include "src/misc/Solve.h" +#include "src/misc/SparseSolve.h" + +#include "src/IterativeLinearSolvers/IterativeSolverBase.h" +#include "src/IterativeLinearSolvers/BasicPreconditioners.h" +#include "src/IterativeLinearSolvers/ConjugateGradient.h" +#include "src/IterativeLinearSolvers/BiCGSTAB.h" + +} // namespace Eigen + +#include "../../Eigen/src/Core/util/ReenableStupidWarnings.h" + +#endif // EIGEN_ITERATIVELINEARSOLVERS_MODULE_H diff --git a/Eigen/OrderingMethods b/Eigen/OrderingMethods new file mode 100644 index 000000000..78a821452 --- /dev/null +++ b/Eigen/OrderingMethods @@ -0,0 +1,27 @@ +#ifndef EIGEN_ORDERINGMETHODS_MODULE_H +#define EIGEN_ORDERINGMETHODS_MODULE_H + +#include "SparseCore" + +#include "../../Eigen/src/Core/util/DisableStupidWarnings.h" + +namespace Eigen { + +/** \ingroup Sparse_modules + * \defgroup OrderingMethods_Module OrderingMethods module + * + * This module is currently for internal use only. + * + * + * \code + * #include + * \endcode + */ + +#include "src/OrderingMethods/Amd.h" + +} // namespace Eigen + +#include "../../Eigen/src/Core/util/ReenableStupidWarnings.h" + +#endif // EIGEN_ORDERINGMETHODS_MODULE_H diff --git a/Eigen/SparseCholesky b/Eigen/SparseCholesky new file mode 100644 index 000000000..10d1b4713 --- /dev/null +++ b/Eigen/SparseCholesky @@ -0,0 +1,34 @@ +#ifndef EIGEN_SPARSECHOLESKY_MODULE_H +#define EIGEN_SPARSECHOLESKY_MODULE_H + +#include "SparseCore" + +#include "../../Eigen/src/Core/util/DisableStupidWarnings.h" + +namespace Eigen { + +/** \ingroup Sparse_modules + * \defgroup SparseCholesky_Module SparseCholesky module + * + * This module currently provides two variants of the direct sparse Cholesky decomposition for selfadjoint (hermitian) matrices. + * Those decompositions are accessible via the following classes: + * - SimplicialLLt, + * - SimplicialLDLt + * + * Such problems can also be solved using the ConjugateGradient solver from the IterativeLinearSolvers module. + * + * \code + * #include + * \endcode + */ + +#include "src/misc/Solve.h" +#include "src/misc/SparseSolve.h" + +#include "src/SparseCholesky/SimplicialCholesky.h" + +} // namespace Eigen + +#include "../../Eigen/src/Core/util/ReenableStupidWarnings.h" + +#endif // EIGEN_SPARSECHOLESKY_MODULE_H