From 84a39e04bfb74c8a0006e9630f5584c7c40069d1 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 20 Aug 2008 23:04:58 +0000 Subject: added Sub matrices section and a couple of cross ref to the API doc --- doc/QuickStartGuide.dox | 73 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 66 insertions(+), 7 deletions(-) (limited to 'doc/QuickStartGuide.dox') diff --git a/doc/QuickStartGuide.dox b/doc/QuickStartGuide.dox index 0128ded7b..86405a705 100644 --- a/doc/QuickStartGuide.dox +++ b/doc/QuickStartGuide.dox @@ -153,7 +153,7 @@ Eigen's comma initializer usually yields to very optimized code without any over

Basic Linear Algebra

-In short all mathematically well defined operators can be used right away as in the following exemple: +In short all mathematically well defined operators can be used right away as in the following example: \code mat4 -= mat1*1.5 + mat2 * mat3/4; \endcode @@ -178,7 +178,7 @@ mat3 = mat1 * s1; mat3 = s1 * mat1; mat3 *= s1; mat3 = mat1 / s1; mat3 /= s1;\endcode -dot product (inner product)\code +\link MatrixBase::dot() dot product \endlink (inner product)\code scalar = vec1.dot(vec2);\endcode @@ -186,15 +186,16 @@ outer product\code mat = vec1 * vec2.transpose();\endcode -cross product\code +\link MatrixBase::cross() cross product \endcode\code #include vec3 = vec1.cross(vec2);\endcode In Eigen only mathematically well defined operators can be used right away, -but don't worry, thanks to the .cwise() operator prefix, Eigen's matrices also provide -a very powerful numerical container supporting most common coefficient wise operators: +but don't worry, thanks to the \link Cwise .cwise() \endlink operator prefix, +Eigen's matrices also provide a very powerful numerical container supporting +most common coefficient wise operators: @@ -250,7 +251,9 @@ mat3 = mat1.cwise().abs2(mat2);

Reductions

-Reductions can be done matrix-wise, column-wise or row-wise, e.g.: +Reductions can be done matrix-wise, +\link MatrixBase::colwise() column-wise \endlink or +\link MatrixBase::rowwise() row-wise \endlink, e.g.:
\code mat \endcode \code @@ -275,11 +278,67 @@ Reductions can be done matrix-wise, column-wise or row-wise, e.g.: \endcode
-Eigen provides several other reduction methods such as sum(), norm(), norm2(), all(), and any(). +Eigen provides several other reduction methods such as \link Cwise::sum() sum() \endlink, +\link Cwise::norm() norm() \endlink, \link Cwise::norm2() norm2() \endlink, +\link Cwise::all() all() \endlink, and \link Cwise::any() any() \endlink. The all() and any() functions are especially useful in combinaison with coeff-wise comparison operators. + +

Sub matrices

+Read-write access to a \link MatrixBase::col(int) column \endlink +or a \link MatrixBase::row(int) row \endlink of a matrix: +\code +mat1.row(i) = mat2.col(j); +mat1.col(j1).swap(mat1.col(j2)); +\endcode + +Read-write access to sub-vector: + + + + + + + + + + +
Default versionsOptimized versions when the size is known at compile time
\code vec1.start(n)\endcode\code vec1.start()\endcodethe first \c n coeffs
\code vec1.end(n)\endcode\code vec1.end()\endcodethe last \c n coeffs
\code vec1.block(pos,n)\endcode\code vec1.block(pos)\endcodethe \c size coeffs in the range [\c pos : \c pos + \c n [
+ +Read-write access to sub-matrices: + + + + + + + + + + + + + +
Default versionsOptimized versions when the size is known at compile time
\code mat1.block(i,j,rows,cols)\endcode + \link MatrixBase::block(int,int,int,int) (more) \endlink\code mat1.block(i,j)\endcode + \link MatrixBase::block(int,int) (more) \endlinkthe \c rows x \c cols sub-matrix starting from position (\c i,\c j)
\code + mat1.corner(TopLeft,rows,cols) + mat1.corner(TopRight,rows,cols) + mat1.corner(BottomLeft,rows,cols) + mat1.corner(BottomRight,rows,cols)\endcode + \link MatrixBase::corner(CornerType,int,int) (more) \endlink\code + mat1.corner(TopLeft) + mat1.corner(TopRight) + mat1.corner(BottomLeft) + mat1.corner(BottomRight)\endcode + \link MatrixBase::corner(CornerType) (more) \endlinkthe \c rows x \c cols sub-matrix \n taken in one of the four corners
+ + +

Transformations

+ +transpose, adjoint, etc...

Geometry features

-- cgit v1.2.3