move eigen values related stuff of the QR module to a new EigenSolver module.

- perhaps we can find a better name ?
- note that the QR module still includes the EigenSolver module for compatibility
This commit is contained in:
Gael Guennebaud
2009-09-03 11:39:44 +02:00
parent 9515b00876
commit a54b99fa72
18 changed files with 109 additions and 43 deletions

View File

@@ -24,11 +24,9 @@ namespace Eigen {
*
* \nonstableyet
*
* This module mainly provides QR decomposition and an eigen value solver.
* This module provides various QR decompositions
* This module also provides some MatrixBase methods, including:
* - MatrixBase::qr(),
* - MatrixBase::eigenvalues(),
* - MatrixBase::operatorNorm()
*
* \code
* #include <Eigen/QR>
@@ -38,22 +36,10 @@ namespace Eigen {
#include "src/QR/HouseholderQR.h"
#include "src/QR/FullPivotingHouseholderQR.h"
#include "src/QR/ColPivotingHouseholderQR.h"
#include "src/QR/Tridiagonalization.h"
#include "src/QR/EigenSolver.h"
#include "src/QR/SelfAdjointEigenSolver.h"
#include "src/QR/HessenbergDecomposition.h"
#include "src/QR/ComplexSchur.h"
#include "src/QR/ComplexEigenSolver.h"
// declare all classes for a given matrix type
#define EIGEN_QR_MODULE_INSTANTIATE_TYPE(MATRIXTYPE,PREFIX) \
PREFIX template class HouseholderQR<MATRIXTYPE>; \
PREFIX template class Tridiagonalization<MATRIXTYPE>; \
PREFIX template class HessenbergDecomposition<MATRIXTYPE>; \
PREFIX template class SelfAdjointEigenSolver<MATRIXTYPE>
// removed because it does not support complex yet
// PREFIX template class EigenSolver<MATRIXTYPE>
// declare all class for all types
#define EIGEN_QR_MODULE_INSTANTIATE(PREFIX) \
@@ -76,4 +62,7 @@ namespace Eigen {
#include "src/Core/util/EnableMSVCWarnings.h"
// FIXME for compatibility we include EigenSolver here:
#include "EigenSolver"
#endif // EIGEN_QR_MODULE_H