diff options
-rw-r--r-- | Eigen/Array | 2 | ||||
-rw-r--r-- | Eigen/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Eigen/Geometry | 5 | ||||
-rw-r--r-- | Eigen/LeastSquares | 6 | ||||
-rw-r--r-- | Eigen/QR | 3 | ||||
-rw-r--r-- | Eigen/SVD | 3 | ||||
-rw-r--r-- | Eigen/Sparse | 11 | ||||
-rw-r--r-- | Eigen/src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | Eigen/src/LU/LU.h | 3 | ||||
-rw-r--r-- | Eigen/src/LeastSquares/CMakeLists.txt | 6 | ||||
-rw-r--r-- | Eigen/src/LeastSquares/LeastSquares.h (renamed from Eigen/src/Regression/Regression.h) | 14 | ||||
-rw-r--r-- | Eigen/src/Regression/CMakeLists.txt | 6 | ||||
-rw-r--r-- | Mainpage.dox | 2 | ||||
-rw-r--r-- | doc/Doxyfile.in | 4 | ||||
-rw-r--r-- | doc/Experimental.dox | 3 |
15 files changed, 46 insertions, 26 deletions
diff --git a/Eigen/Array b/Eigen/Array index fe2a861e4..c847f9521 100644 --- a/Eigen/Array +++ b/Eigen/Array @@ -7,7 +7,7 @@ namespace Eigen { -/** \defgroup Array Array module +/** \defgroup Array_Module Array module * This module provides several handy features to manipulate matrices as simple array of values. * In addition to listed classes, it defines various methods of the Cwise interface * (accessible from MatrixBase::cwise()), including: diff --git a/Eigen/CMakeLists.txt b/Eigen/CMakeLists.txt index 76aca5e4d..f4161483c 100644 --- a/Eigen/CMakeLists.txt +++ b/Eigen/CMakeLists.txt @@ -1,4 +1,4 @@ -set(Eigen_HEADERS Core LU Cholesky QR Geometry Sparse Array SVD LeastSquares StdVector) +set(Eigen_HEADERS Core LU Cholesky QR Geometry Sparse Array SVD LeastSquares QtAlignedMalloc StdVector) if(EIGEN_BUILD_LIB) set(Eigen_SRCS diff --git a/Eigen/Geometry b/Eigen/Geometry index 5a674a163..617b25eb6 100644 --- a/Eigen/Geometry +++ b/Eigen/Geometry @@ -14,7 +14,10 @@ namespace Eigen { -/** \defgroup GeometryModule Geometry module +/** \defgroup Geometry_Module Geometry module + * + * \nonstableyet + * * This module provides support for: * - fixed-size homogeneous transformations * - translation, scaling, 2D and 3D rotations diff --git a/Eigen/LeastSquares b/Eigen/LeastSquares index 71c16773a..4f9fcba80 100644 --- a/Eigen/LeastSquares +++ b/Eigen/LeastSquares @@ -11,15 +11,15 @@ namespace Eigen { -/** \defgroup Regression_Module Regression module +/** \defgroup LeastSquares_Module LeastSquares module * This module provides linear regression and related features. * * \code - * #include <Eigen/Regression> + * #include <Eigen/LeastSquares> * \endcode */ -#include "src/Regression/Regression.h" +#include "src/LeastSquares/LeastSquares.h" } // namespace Eigen @@ -19,6 +19,9 @@ namespace Eigen { /** \defgroup QR_Module QR module + * + * \nonstableyet + * * This module mainly provides QR decomposition and an eigen value solver. * This module also provides some MatrixBase methods, including: * - MatrixBase::qr(), @@ -8,6 +8,9 @@ namespace Eigen { /** \defgroup SVD_Module SVD module + * + * \nonstableyet + * * This module provides SVD decomposition for (currently) real matrices. * This decomposition is accessible via the following MatrixBase method: * - MatrixBase::svd() diff --git a/Eigen/Sparse b/Eigen/Sparse index 2d5854e0e..57e9af6a2 100644 --- a/Eigen/Sparse +++ b/Eigen/Sparse @@ -70,6 +70,17 @@ namespace Eigen { +/** \defgroup Sparse_Module Sparse module + * + * \nonstableyet + * + * See the \ref TutorialSparse "Sparse tutorial" + * + * \code + * #include <Eigen/QR> + * \endcode + */ + #include "src/Sparse/SparseUtil.h" #include "src/Sparse/SparseMatrixBase.h" #include "src/Sparse/CompressedStorage.h" diff --git a/Eigen/src/CMakeLists.txt b/Eigen/src/CMakeLists.txt index e1a0d60c5..b244809d6 100644 --- a/Eigen/src/CMakeLists.txt +++ b/Eigen/src/CMakeLists.txt @@ -5,6 +5,6 @@ ADD_SUBDIRECTORY(SVD) ADD_SUBDIRECTORY(Cholesky) ADD_SUBDIRECTORY(Array) ADD_SUBDIRECTORY(Geometry) -ADD_SUBDIRECTORY(Regression) +ADD_SUBDIRECTORY(LeastSquares) ADD_SUBDIRECTORY(Sparse) ADD_SUBDIRECTORY(StdVector) diff --git a/Eigen/src/LU/LU.h b/Eigen/src/LU/LU.h index a48ee8d1a..ff4410b6a 100644 --- a/Eigen/src/LU/LU.h +++ b/Eigen/src/LU/LU.h @@ -429,8 +429,7 @@ void LU<MatrixType>::computeKernel(KernelMatrixType *result) const .template marked<UpperTriangular>() .solveTriangularInPlace(y); - for(int i = 0; i < m_rank; ++i) - result->row(m_q.coeff(i)) = y.row(i); + for(int i = 0; i < m_rank; ++i) result->row(m_q.coeff(i)) = y.row(i); for(int i = m_rank; i < cols; ++i) result->row(m_q.coeff(i)).setZero(); for(int k = 0; k < dimker; ++k) result->coeffRef(m_q.coeff(m_rank+k), k) = Scalar(1); } diff --git a/Eigen/src/LeastSquares/CMakeLists.txt b/Eigen/src/LeastSquares/CMakeLists.txt new file mode 100644 index 000000000..805d578bc --- /dev/null +++ b/Eigen/src/LeastSquares/CMakeLists.txt @@ -0,0 +1,6 @@ +FILE(GLOB Eigen_LeastSquares_SRCS "*.h") + +INSTALL(FILES + ${Eigen_LeastSquares_SRCS} + DESTINATION ${INCLUDE_INSTALL_DIR}/Eigen/src/LeastSquares + ) diff --git a/Eigen/src/Regression/Regression.h b/Eigen/src/LeastSquares/LeastSquares.h index 61d4cdccb..cd6ec3cf4 100644 --- a/Eigen/src/Regression/Regression.h +++ b/Eigen/src/LeastSquares/LeastSquares.h @@ -22,12 +22,12 @@ // License and a copy of the GNU General Public License along with // Eigen. If not, see <http://www.gnu.org/licenses/>. -#ifndef EIGEN_REGRESSION_H -#define EIGEN_REGRESSION_H +#ifndef EIGEN_LEASTSQUARES_H +#define EIGEN_LEASTSQUARES_H -/** \ingroup Regression_Module +/** \ingroup LeastSquares_Module * - * \regression_module + * \leastsquares_module * * For a set of points, this function tries to express * one of the coords as a linear (affine) function of the other coords. @@ -128,9 +128,9 @@ void linearRegression(int numPoints, ei_assert((m.adjoint()*m).lu().solve(v, result)); } -/** \ingroup Regression_Module +/** \ingroup LeastSquares_Module * - * \regression_module + * \leastsquares_module * * This function is quite similar to linearRegression(), so we refer to the * documentation of this function and only list here the differences. @@ -195,4 +195,4 @@ void fitHyperplane(int numPoints, } -#endif // EIGEN_REGRESSION_H +#endif // EIGEN_LEASTSQUARES_H diff --git a/Eigen/src/Regression/CMakeLists.txt b/Eigen/src/Regression/CMakeLists.txt deleted file mode 100644 index c691f52ac..000000000 --- a/Eigen/src/Regression/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -FILE(GLOB Eigen_Regression_SRCS "*.h") - -INSTALL(FILES - ${Eigen_Regression_SRCS} - DESTINATION ${INCLUDE_INSTALL_DIR}/Eigen/src/Regression - ) diff --git a/Mainpage.dox b/Mainpage.dox index 17f4d9c31..ccab8018f 100644 --- a/Mainpage.dox +++ b/Mainpage.dox @@ -18,7 +18,7 @@ // DOXYGEN_SET_MULTILINE_CPP_IS_BRIEF = NO // DOXYGEN_SET_DETAILS_AT_TOP = YES // DOXYGEN_SET_INHERIT_DOCS = YES -// DOXYGEN_SET_ALIASES = "only_for_vectors=This is only for vectors (either row-vectors or column-vectors), i.e. matrices which are known at compile-time to have either one row or one column." "array_module=This is defined in the %Array module. \code #include <Eigen/Array> \endcode" "lu_module=This is defined in the %LU module. \code #include <Eigen/LU> \endcode" "cholesky_module=This is defined in the %Cholesky module. \code #include <Eigen/Cholesky> \endcode" "qr_module=This is defined in the %QR module. \code #include <Eigen/QR> \endcode" "svd_module=This is defined in the %SVD module. \code #include <Eigen/SVD> \endcode" "geometry_module=This is defined in the %Geometry module. \code #include <Eigen/Geometry> \endcode" "regression_module=This is defined in the %Regression module. \code #include <Eigen/Regression> \endcode" "addexample=\anchor" "label=\bug" "redstar=<a href='#warningarraymodule' style='color:red;text-decoration: none;'>*</a>" "nonstableyet=\warning This class/function is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" +// DOXYGEN_SET_ALIASES = "only_for_vectors=This is only for vectors (either row-vectors or column-vectors), i.e. matrices which are known at compile-time to have either one row or one column." "array_module=This is defined in the %Array module. \code #include <Eigen/Array> \endcode" "lu_module=This is defined in the %LU module. \code #include <Eigen/LU> \endcode" "cholesky_module=This is defined in the %Cholesky module. \code #include <Eigen/Cholesky> \endcode" "qr_module=This is defined in the %QR module. \code #include <Eigen/QR> \endcode" "svd_module=This is defined in the %SVD module. \code #include <Eigen/SVD> \endcode" "geometry_module=This is defined in the %Geometry module. \code #include <Eigen/Geometry> \endcode" "regression_module=This is defined in the %Regression module. \code #include <Eigen/Regression> \endcode" "addexample=\anchor" "label=\bug" "redstar=<a href='#warningarraymodule' style='color:red;text-decoration: none;'>*</a>" "nonstableyet=\warning This is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" // DOXYGEN_SET_DISTRIBUTE_GROUP_DOC = NO // DOXYGEN_SET_SUBGROUPING = YES // DOXYGEN_SET_TYPEDEF_HIDES_STRUCT = NO diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in index b30ffe0d8..873dd24bc 100644 --- a/doc/Doxyfile.in +++ b/doc/Doxyfile.in @@ -210,11 +210,11 @@ ALIASES = "only_for_vectors=This is only for vectors (either row- "qr_module=This is defined in the %QR module. \code #include <Eigen/QR> \endcode" \ "svd_module=This is defined in the %SVD module. \code #include <Eigen/SVD> \endcode" \ "geometry_module=This is defined in the %Geometry module. \code #include <Eigen/Geometry> \endcode" \ - "regression_module=This is defined in the %Regression module. \code #include <Eigen/Regression> \endcode" \ + "leastsquares_module=This is defined in the %LeastSquares module. \code #include <Eigen/LeastSquares> \endcode" \ "addexample=\anchor" \ "label=\bug" \ "redstar=<a href='#warningarraymodule' style='color:red;text-decoration: none;'>*</a>" \ - "nonstableyet=\warning This class/function is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" + "nonstableyet=\warning This is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C # sources only. Doxygen will then generate output that is more tailored for C. diff --git a/doc/Experimental.dox b/doc/Experimental.dox index f55a47f50..2191c2b2c 100644 --- a/doc/Experimental.dox +++ b/doc/Experimental.dox @@ -12,7 +12,7 @@ namespace Eigen { Experimental features may at any time: \li be removed; \li be subject to an API incompatible change; -\li introduce API or ABI incompatible changes in your own application if you let them affect your API or ABI. +\li introduce API or ABI incompatible changes in your own code if you let them affect your API or ABI. \section modules Experimental modules @@ -20,6 +20,7 @@ The following modules are considered entirely experimental: \li SVD \li QR \li Sparse +\li Geometry \section core Experimental parts of the Core module |