From 7971518a3858835ba7f80d82f8cf3c74ab654d85 Mon Sep 17 00:00:00 2001 From: Elias Pipping <elias.pipping@fu-berlin.de> Date: Sun, 24 Mar 2013 21:34:24 +0000 Subject: [PATCH] doc: Use latex for vectors [[Imported from SVN: r8352]] --- doc/doxygen/Doxylocal | 2 + dune/solvers/common/genericvectortools.hh | 72 +++++++++++++---------- 2 files changed, 44 insertions(+), 30 deletions(-) diff --git a/doc/doxygen/Doxylocal b/doc/doxygen/Doxylocal index f1d67f68..be34fb5f 100644 --- a/doc/doxygen/Doxylocal +++ b/doc/doxygen/Doxylocal @@ -4,3 +4,5 @@ EXAMPLE_PATH += EXAMPLE_PATTERNS += IMAGE_PATH += PREDEFINED += DOXYGEN + +EXTRA_PACKAGES = amsmath diff --git a/dune/solvers/common/genericvectortools.hh b/dune/solvers/common/genericvectortools.hh index 8c79fc66..049ccedd 100644 --- a/dune/solvers/common/genericvectortools.hh +++ b/dune/solvers/common/genericvectortools.hh @@ -138,36 +138,48 @@ struct GenericVector } /** \brief weave two vector blocks into each other e.g. [[u1...un][w1...wn]] --> [[u1 w1]...[un wn]] - - interlace: \f$\left((R^k)^m\right)^n\longrightarrow(R^k\cdot n)^m\f$, i.e. for example - / / /a11\ \ \ / /a11\ \ - | | \a12/ | | | | a12 | | - | | /a21\ | | | | b11 | | - | | \a22/ | | | | b12 | | - | | /a31\ | | | | c11 | | - | \ \a32/ / | | | c12 | | - | | | | d11 | | - | / /b11\ \ | | \d12/ | - | | \b12/ | | | | - | | /b21\ | | | /a21\ | - | | \b22/ | | | | a22 | | - | | /b31\ | | | | b21 | | - | \ \b32/ / | interlace | | b22 | | - | | ----------> | | c11 | | - | / /c11\ \ | | | c22 | | - | | \c12/ | | | | d21 | | - | | /c21\ | | | \d22/ | - | | \c22/ | | | | - | | /c31\ | | | /a31\ | - | \ \c32/ / | | | a32 | | - | | | | b31 | | - | / /d11\ \ | | | b32 | | - | | \d12/ | | | | c31 | | - | | /d21\ | | | | c32 | | - | | \d22/ | | | | d31 | | - | | /d31\ | | | \d32/ | - \ \ \d32/ / / \ / - */ + * + * interlace: \f$\left((R^k)^m\right)^n\longrightarrow(R^k\cdot n)^m\f$, i.e. for example + * + * \f[ + * \begin{pmatrix} + * \begin{pmatrix} + * \begin{pmatrix} a_{11}\\ a_{12} \end{pmatrix}\\ + * \begin{pmatrix} a_{21}\\ a_{22} \end{pmatrix}\\ + * \begin{pmatrix} a_{31}\\ a_{32} \end{pmatrix} + * \end{pmatrix}\\ + * \begin{pmatrix} + * \begin{pmatrix} b_{11}\\ b_{12} \end{pmatrix}\\ + * \begin{pmatrix} b_{21}\\ b_{22} \end{pmatrix}\\ + * \begin{pmatrix} b_{31}\\ b_{32} \end{pmatrix} + * \end{pmatrix}\\ + * \begin{pmatrix} + * \begin{pmatrix} c_{11}\\ c_{12} \end{pmatrix}\\ + * \begin{pmatrix} c_{21}\\ c_{22} \end{pmatrix}\\ + * \begin{pmatrix} c_{31}\\ c_{32} \end{pmatrix} + * \end{pmatrix}\\ + * \begin{pmatrix} + * \begin{pmatrix} d_{11}\\ d_{12} \end{pmatrix}\\ + * \begin{pmatrix} d_{21}\\ d_{22} \end{pmatrix}\\ + * \begin{pmatrix} d_{31}\\ d_{32} \end{pmatrix} + * \end{pmatrix} + * \end{pmatrix} + * + * \xrightarrow{interlace} + * + * \begin{pmatrix} + * \begin{pmatrix} + * a_{11}\\ a_{12}\\ b_{11}\\ b_{12}\\ c_{11}\\ c_{12}\\ d_{11}\\ d_{12} + * \end{pmatrix}\\ + * \begin{pmatrix} + * a_{21}\\ a_{22}\\ b_{21}\\ b_{22}\\ c_{21}\\ c_{22}\\ d_{21}\\ d_{22} + * \end{pmatrix}\\ + * \begin{pmatrix} + * a_{31}\\ a_{32}\\ b_{31}\\ b_{32}\\ c_{31}\\ c_{32}\\ d_{31}\\ d_{32} + * \end{pmatrix} + * \end{pmatrix} + * \f] + */ template <class LVectorBlock, class RVectorBlock> static void interlace(const Dune::BlockVector<Dune::BlockVector<LVectorBlock> >& lvec, Dune::BlockVector<RVectorBlock>& rvec) { -- GitLab