\endcode
@@ -368,24 +372,24 @@ most common coefficient-wise operators.
Add a scalar to all coefficients \redstar | \code
mat3 = mat1.cwise() + scalar;
-mat3.cwise() += scalar;
-mat3.cwise() -= scalar;
+mat3.array() += scalar;
+mat3.array() -= scalar;
\endcode
|
Coefficient wise \link Cwise::operator/() division \endlink \redstar | \code
-mat3 = mat1.cwise() / mat2; \endcode
+mat3 = mat1.array() / mat2.array(); \endcode
|
Coefficient wise \link Cwise::inverse() reciprocal \endlink \redstar | \code
-mat3 = mat1.cwise().inverse(); \endcode
+mat3 = mat1.array().inverse(); \endcode
|
Coefficient wise comparisons \redstar \n
(support all operators) | \code
-mat3 = mat1.cwise() < mat2;
-mat3 = mat1.cwise() <= mat2;
-mat3 = mat1.cwise() > mat2;
+mat3 = mat1.array() < mat2.array();
+mat3 = mat1.array() <= mat2.array();
+mat3 = mat1.array() > mat2.array();
etc.
\endcode
|
@@ -394,20 +398,20 @@ etc.
\b Trigo \redstar: \n
\link Cwise::sin sin \endlink, \link Cwise::cos cos \endlink | \code
-mat3 = mat1.cwise().sin();
+mat3 = mat1.array().sin();
etc.
\endcode
|
\b Power \redstar: \n \link Cwise::pow() pow \endlink,
-\link Cwise::square square \endlink,
-\link Cwise::cube cube \endlink, \n
-\link Cwise::sqrt sqrt \endlink,
-\link Cwise::exp exp \endlink,
-\link Cwise::log log \endlink | \code
-mat3 = mat1.cwise().square();
-mat3 = mat1.cwise().pow(5);
-mat3 = mat1.cwise().log();
+\link ArrayBase::square square \endlink,
+\link ArrayBase::cube cube \endlink, \n
+\link ArrayBase::sqrt sqrt \endlink,
+\link ArrayBase::exp exp \endlink,
+\link ArrayBase::log log \endlink | \code
+mat3 = mat1.array().square();
+mat3 = mat1.array().pow(5);
+mat3 = mat1.array().log();
etc.
\endcode
|
@@ -415,10 +419,10 @@ etc.
\link Cwise::min min \endlink, \link Cwise::max max \endlink, \n
absolute value (\link Cwise::abs() abs \endlink, \link Cwise::abs2() abs2 \endlink)
\code
-mat3 = mat1.cwise().min(mat2);
-mat3 = mat1.cwise().max(mat2);
-mat3 = mat1.cwise().abs();
-mat3 = mat1.cwise().abs2();
+mat3 = mat1.cwiseMin(mat2);
+mat3 = mat1.cwiseMax(mat2);
+mat3 = mat1.cwiseAbs();
+mat3 = mat1.cwiseAbs2();
\endcode |
@@ -492,7 +496,7 @@ Read-write access to sub-vectors:
Optimized versions when the size \n is known at compile time |
|
-\code vec1.start(n)\endcode | \code vec1.start()\endcode | the first \c n coeffs |
+\code vec1.head(n)\endcode | \code vec1.head()\endcode | the first \c n coeffs |
\code vec1.tail(n)\endcode | \code vec1.tail()\endcode | the last \c n coeffs |
\code vec1.segment(pos,n)\endcode | \code vec1.segment(pos)\endcode |
the \c size coeffs in \n the range [\c pos : \c pos + \c n [ |
diff --git a/doc/Overview.dox b/doc/Overview.dox
index 78bf5f9dd..10463900e 100644
--- a/doc/Overview.dox
+++ b/doc/Overview.dox
@@ -9,15 +9,17 @@ o /** \mainpage Eigen
| \ref TutorialSparse "Sparse matrix"
-This is the API documentation for Eigen.
+This is the API documentation for Eigen3.
+
+You come from Eigen2? Here is a \ref Eigen2ToEigen3 guide for porting your application from Eigen2 to Eigen3.
For a first contact with Eigen, the best place is to have a look at the \ref TutorialCore "tutorial". For an even shorter overview, we have an ASCII quick reference with Matlab translations.
-Most of the API is available as methods in MatrixBase, so this is a good starting point for browsing. Also have a look at Matrix, as a few methods and the matrix constructors are there. Other notable classes for the Eigen API are Cwise, which contains the methods for doing certain coefficient-wise operations, and Part.
+Most of the API is available as methods in DenseBase and MatrixBase, so this is a good starting point for browsing. Also have a look at Matrix, as a few methods and the matrix constructors are there. Other notable classes for the Eigen API are ArrayBase, which contains the methods for doing certain coefficient-wise operations, and TriangularView.
-In fact, except for advanced use, the only class that you'll have to explicitly name in your program, i.e. of which you'll explicitly contruct objects, is Matrix. For instance, vectors are handled as a special case of Matrix with one column. Typedefs are provided, e.g. Vector2f is a typedef for Matrix.
+In fact, except for advanced use, the only classes that you'll have to explicitly name in your program, i.e. of which you'll explicitly contruct objects, is Matrix and Array. For instance, vectors are handled as a special case of Matrix with one column. Typedefs are provided, e.g. Vector2f is a typedef for Matrix.
-Most of the other classes are just return types for MatrixBase methods.
+Most of the other classes are just return types for DenseBase and MatrixBase methods.
Want more? Checkout the \ref Unsupported_modules "unsupported modules" documentation.