* use transpose() instead of row vectors (more common use case)
* add a word about noalias and performance for BLAS users
diff --git a/doc/C02_TutorialMatrixArithmetic.dox b/doc/C02_TutorialMatrixArithmetic.dox
index d45b007..55aab96 100644
--- a/doc/C02_TutorialMatrixArithmetic.dox
+++ b/doc/C02_TutorialMatrixArithmetic.dox
@@ -124,8 +124,14 @@
tmp = m*m;
m = tmp;
\endcode
+If you know your matrix product can be safely evluated into the destination matrix without aliasing issue, then you can use the \c nolias() function to avoid the temporary, e.g.:
+\code
+c.noalias() += a * b;
+\endcode
For more details on this topic, see \ref TopicEigenExpressionTemplates "this page".
+\b Note: for BLAS users worried about performance, expressions such as <tt>c.noalias() -= 2 * a.adjoint() * b;</tt> are fully optimized and trigger a single gemm-like function call.
+
\section TutorialArithmeticDotAndCross Dot product and cross product
The above-discussed \c operator* does not allow to compute dot and cross products. For that, you need the dot() and cross() methods.