diff options
author | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-12-22 20:50:47 +0000 |
---|---|---|
committer | Benoit Jacob <jacob.benoit.1@gmail.com> | 2008-12-22 20:50:47 +0000 |
commit | 789ea9d6762b2a0b2c737978f83939853cdb9fc3 (patch) | |
tree | a24c40b1ea4683edc86887c7e3a70ed029d1298b /doc/QuickStartGuide.dox | |
parent | 4336cf3833d87bc1c8b4c9ef6f884547c80e31f0 (diff) |
unless i find more failures in the tests, this will be beta3...
* fixes for mistakes (especially in the cast() methods in Geometry) revealed by the new "mixing types" test
* dox love, including a section on coeff access in core and an overview in geometry
Diffstat (limited to 'doc/QuickStartGuide.dox')
-rw-r--r-- | doc/QuickStartGuide.dox | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/doc/QuickStartGuide.dox b/doc/QuickStartGuide.dox index 81df4aa3d..446bade0c 100644 --- a/doc/QuickStartGuide.dox +++ b/doc/QuickStartGuide.dox @@ -14,6 +14,7 @@ namespace Eigen { - \ref TutorialCoreSimpleExampleFixedSize - \ref TutorialCoreSimpleExampleDynamicSize - \ref TutorialCoreMatrixTypes + - \ref TutorialCoreCoefficients - \ref TutorialCoreMatrixInitialization - \ref TutorialCoreArithmeticOperators - \ref TutorialCoreReductions @@ -87,8 +88,23 @@ For example, \c Vector3d is a typedef for \code Matrix<double, 3, 1> \endcode For dynamic-size, that is in order to left the number of rows or of columns unspecified at compile-time, use the special value Eigen::Dynamic. For example, \c VectorXd is a typedef for \code Matrix<double, Dynamic, 1> \endcode +<a href="#" class="top">top</a>\section TutorialCoreCoefficients Coefficient access +Eigen supports the following syntaxes for read and write coefficient access: +\code +matrix(i,j); +vector(i) +vector[i] +vector.x() // first coefficient +vector.y() // second coefficient +vector.z() // third coefficient +vector.w() // fourth coefficient +\endcode + +Notice that these coefficient access methods have assertions checking the ranges. So if you do a lot of coefficient access, these assertion can have an important cost. There are then two possibilities if you want avoid paying this cost: +\li Either you can disable assertions altogether, by defining EIGEN_NO_DEBUG or NDEBUG. Notice that some IDEs like MS Visual Studio define NDEBUG automatically in "Release Mode". +\li Or you can disable the checks on a case-by-case basis by using the coeff() and coeffRef() methods: see MatrixBase::coeff(int,int) const, MatrixBase::coeffRef(int,int), etc. <a href="#" class="top">top</a>\section TutorialCoreMatrixInitialization Matrix and vector creation and initialization |