From 2fbe8da7a17a06166c7b9333bf214f3bf2387b9f Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 6 Jan 2010 17:35:22 +0100 Subject: [PATCH] improved a bit the list of API changes --- doc/A05_PortingFrom2To3.dox | 38 ++++++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/doc/A05_PortingFrom2To3.dox b/doc/A05_PortingFrom2To3.dox index 4425cc0e0..a1bf0681d 100644 --- a/doc/A05_PortingFrom2To3.dox +++ b/doc/A05_PortingFrom2To3.dox @@ -6,30 +6,38 @@ The goals of this page is to enumerate the API changes between Eigen2 and Eigen3 and to help porting an application from Eigen2 to Eigen3. \b Table \b of \b contents - - \ref summary - - \ref modules - - \ref core + - \ref CompatibilitySupport + - \ref ChangeList + - \ref CoefficientWiseOperations + - \ref LazyVsNoalias \section CompatibilitySupport Eigen2 compatibility support In order to ease th switch from Eigen2 to Eigen3, Eigen3 features a compatibility mode which can be enabled by defining the EIGEN2_SUPPORT preprocessor token \b before including any Eigen's header (typically it should be set in your project options). -\section ChangeList List of changes +\section ChangeList List of changes in the API - - - - - - - - - + + + + + + + +
Eigen 2Eigen 3
vec.start(length)vec.head(length)
vec.start()vec.head()
vec.end(length)vec.tail(length)
vec.end()vec.tail()
mat.cwise().XXX()mat.array().XXX() \redstar
\code c = (a * b).lazy();\endcode\code c.noalias() = a * b;\endcode
Eigen 2Eigen 3Comments
\code +vec.start(length) +vec.start() +vec.end(length) +vec.end() +\endcode\code +vec.head(length) +vec.head() +vec.tail(length) +vec.tail() +\endcodeThis is a simple search and replace change.
\code mat.cwise().XXX()\endcode\code mat.array().XXX()\endcodeSee \ref CoefficientWiseOperations.
\code c = (a * b).lazy();\endcode\code c.noalias() = a * b;\endcodeSee \ref LazyVsNoalias.
\code A.triangularSolveInPlace(X);\endcode\code A.triangularView().solveInPlace(X);\endcode
-\redstar See \ref CoefficientWiseOperations for details. - \section CoefficientWiseOperations Coefficient wise operations In Eigen2, coefficient wise operations which have no proper mathematical definiton (as a coeff wise product)