aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Eigen/Cholesky3
-rw-r--r--Eigen/src/Core/Matrix.h18
-rw-r--r--Eigen/src/Core/MatrixStorage.h4
-rw-r--r--Eigen/src/Core/SolveTriangular.h4
-rw-r--r--Mainpage.dox2
-rw-r--r--doc/Experimental.dox13
-rw-r--r--doc/UnalignedArrayAssert.dox2
7 files changed, 30 insertions, 16 deletions
diff --git a/Eigen/Cholesky b/Eigen/Cholesky
index b2179fff9..37b0b3e36 100644
--- a/Eigen/Cholesky
+++ b/Eigen/Cholesky
@@ -17,6 +17,9 @@
namespace Eigen {
/** \defgroup Cholesky_Module Cholesky module
+ *
+ * \nonstableyet
+ *
* This module provides two variants of the Cholesky decomposition for selfadjoint (hermitian) matrices.
* Those decompositions are accessible via the following MatrixBase methods:
* - MatrixBase::llt(),
diff --git a/Eigen/src/Core/Matrix.h b/Eigen/src/Core/Matrix.h
index f62037709..8fbe84cc7 100644
--- a/Eigen/src/Core/Matrix.h
+++ b/Eigen/src/Core/Matrix.h
@@ -514,15 +514,15 @@ class Matrix
return ei_assign_selector<Matrix,OtherDerived,false>::run(*this, other.derived());
}
- static EIGEN_STRONG_INLINE void _check_template_params()
- {
- EIGEN_STATIC_ASSERT((_Rows > 0
- && _Cols > 0
- && _MaxRows <= _Rows
- && _MaxCols <= _Cols
- && (_Options & (AutoAlign|RowMajor)) == _Options),
- INVALID_MATRIX_TEMPLATE_PARAMETERS)
- }
+ static EIGEN_STRONG_INLINE void _check_template_params()
+ {
+ EIGEN_STATIC_ASSERT((_Rows > 0
+ && _Cols > 0
+ && _MaxRows <= _Rows
+ && _MaxCols <= _Cols
+ && (_Options & (AutoAlign|RowMajor)) == _Options),
+ INVALID_MATRIX_TEMPLATE_PARAMETERS)
+ }
};
/** \defgroup matrixtypedefs Global matrix typedefs
diff --git a/Eigen/src/Core/MatrixStorage.h b/Eigen/src/Core/MatrixStorage.h
index 972ea558a..ce656f13b 100644
--- a/Eigen/src/Core/MatrixStorage.h
+++ b/Eigen/src/Core/MatrixStorage.h
@@ -2,7 +2,7 @@
// for linear algebra. Eigen itself is part of the KDE project.
//
// Copyright (C) 2008 Gael Guennebaud <g.gael@free.fr>
-// Copyright (C) 2006-2008 Benoit Jacob <jacob.benoit.1@gmail.com>
+// Copyright (C) 2006-2009 Benoit Jacob <jacob.benoit.1@gmail.com>
//
// Eigen is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
@@ -41,7 +41,7 @@ template <typename T, int Size, int MatrixOptions,
{
#ifndef EIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT
ei_assert((reinterpret_cast<size_t>(array) & 0xf) == 0
- && "this assertion is explained here: http://eigen.tuxfamily.org/api/UnalignedArrayAssert.html **** READ THIS WEB PAGE !!! ****");
+ && "this assertion is explained here: http://eigen.tuxfamily.org/dox/UnalignedArrayAssert.html **** READ THIS WEB PAGE !!! ****");
#endif
}
diff --git a/Eigen/src/Core/SolveTriangular.h b/Eigen/src/Core/SolveTriangular.h
index e39353275..12fb0e1d1 100644
--- a/Eigen/src/Core/SolveTriangular.h
+++ b/Eigen/src/Core/SolveTriangular.h
@@ -222,6 +222,8 @@ struct ei_solve_triangular_selector<Lhs,Rhs,UpLo,ColMajor|IsDense>
/** "in-place" version of MatrixBase::solveTriangular() where the result is written in \a other
*
+ * \nonstableyet
+ *
* The parameter is only marked 'const' to make the C++ compiler accept a temporary expression here.
* This function will const_cast it, so constness isn't honored here.
*
@@ -251,6 +253,8 @@ void MatrixBase<Derived>::solveTriangularInPlace(const MatrixBase<OtherDerived>&
/** \returns the product of the inverse of \c *this with \a other, \a *this being triangular.
*
+ * \nonstableyet
+ *
* This function computes the inverse-matrix matrix product inverse(\c *this) * \a other.
* The matrix \c *this must be triangular and invertible (i.e., all the coefficients of the
* diagonal must be non zero). It works as a forward (resp. backward) substitution if \c *this
diff --git a/Mainpage.dox b/Mainpage.dox
index 4047c88fd..468045dce 100644
--- a/Mainpage.dox
+++ b/Mainpage.dox
@@ -120,6 +120,6 @@ In order to generate the documentation of Eigen, please follow these steps:
After doing that, you will find the HTML documentation in the doc/html/ subdirectory of the build directory.
<h2>Note however that the documentation is available online here:
-<a href="http://eigen.tuxfamily.org/api/">http://eigen.tuxfamily.org/api</a></h2>
+<a href="http://eigen.tuxfamily.org/dox/">http://eigen.tuxfamily.org/dox</a></h2>
*/
diff --git a/doc/Experimental.dox b/doc/Experimental.dox
index 2191c2b2c..6d8b90d5a 100644
--- a/doc/Experimental.dox
+++ b/doc/Experimental.dox
@@ -9,6 +9,12 @@ namespace Eigen {
\section summary Summary
+With the 2.0 release, Eigen's API is, to a large extent, stable. However, we wish to retain the freedom to make API incompatible changes. To that effect, we call many parts of Eigen "experimental" which means that they are not subject to API stability guarantee.
+
+Our goal is that for the 2.1 release (expected in July 2009) most of these parts become API-stable too.
+
+We are aware that API stability is a major concern for our users. That's why it's a priority for us to reach it, but at the same time we're being serious about not calling Eigen API-stable too early.
+
Experimental features may at any time:
\li be removed;
\li be subject to an API incompatible change;
@@ -16,11 +22,12 @@ Experimental features may at any time:
\section modules Experimental modules
-The following modules are considered entirely experimental:
+The following modules are considered entirely experimental, and we make no firm API stability guarantee about them for the time being:
\li SVD
\li QR
+\li Cholesky
\li Sparse
-\li Geometry
+\li Geometry (this one should be mostly stable, but it's a little too early to make a formal guarantee)
\section core Experimental parts of the Core module
@@ -37,7 +44,7 @@ The only classes subject to (even partial) API stability guarantee (meaning that
All other classes offer no direct API guarantee, e.g. their methods can be changed; however notice that most classes inherit MatrixBase and that this is where most of their API comes from -- so in practice most of the API is stable.
-Here are the MatrixBase methods that are considered experimental, hence not part of any API stability guarantee:
+A few MatrixBase methods are considered experimental, hence not part of any API stability guarantee:
\li all methods documented as internal
\li all methods hidden in the Doxygen documentation
\li all methods marked as experimental
diff --git a/doc/UnalignedArrayAssert.dox b/doc/UnalignedArrayAssert.dox
index a04db5ae1..05c784ca9 100644
--- a/doc/UnalignedArrayAssert.dox
+++ b/doc/UnalignedArrayAssert.dox
@@ -8,7 +8,7 @@ my_program: path/to/eigen2/Eigen/src/Core/MatrixStorage.h:44:
Eigen::ei_matrix_array<T, Size, MatrixOptions, Align>::ei_matrix_array()
[with T = double, int Size = 2, int MatrixOptions = 2, bool Align = true]:
Assertion `(reinterpret_cast<size_t>(array) & 0xf) == 0 && "this assertion
-is explained here: http://eigen.tuxfamily.org/api/UnalignedArrayAssert.html
+is explained here: http://eigen.tuxfamily.org/dox/UnalignedArrayAssert.html
**** READ THIS WEB PAGE !!! ****"' failed.
</pre>