Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62376 - branches/ublas-doxygen
From: david.bellot_at_[hidden]
Date: 2010-06-02 04:08:06


Author: david.bellot
Date: 2010-06-02 04:08:04 EDT (Wed, 02 Jun 2010)
New Revision: 62376
URL: http://svn.boost.org/trac/boost/changeset/62376

Log:
Added triangular. Reshaped banded

Text files modified:
   branches/ublas-doxygen/banded.hpp | 51 ++++++++++++++++++++-------------------
   branches/ublas-doxygen/triangular.hpp | 21 +++++++++++++++
   2 files changed, 46 insertions(+), 26 deletions(-)

Modified: branches/ublas-doxygen/banded.hpp
==============================================================================
--- branches/ublas-doxygen/banded.hpp (original)
+++ branches/ublas-doxygen/banded.hpp 2010-06-02 04:08:04 EDT (Wed, 02 Jun 2010)
@@ -20,18 +20,18 @@
 
 namespace boost { namespace numeric { namespace ublas {
 
- // ------------------
- // Array based banded
- // ------------------
-
- /// \brief A banded matrix of values of type \c T that can be symmetric or not around the diagonal.
- /// A banded matrix of values of type \c T that can be symmetric or not around the diagonal. Orientation and storage can also be specified, otherwise a row major
- /// and unbounded array are used. It is \b not required by the storage to initialize elements of the matrix. For a \f$(mxn)\f$-dimensional banded matrix with \f$l\f$ lower
- /// and \f$u\f$ upper diagonals and \f$0 \leq i < m\f$ and \f$0 \leq j < n\f$, if \f$i>j+l\f$ or \f$i<j-u\f$ then \f$b_{i,j}=0\f$. The default storage for
- /// banded matrices is packed. Orientation storage can also be specified.
- /// \tparam T the type of object stored in the matrix (like double, float, complex, etc...)
- /// \tparam L the storage organization. It can be either \c row_major or \c column_major. By default it is \c row_major
- /// \tparam A the type of Storage array. By default, it is an \unbounded_array
+ /** \brief A banded matrix of values of type \c T.
+ *
+ * For a \f$(mxn)\f$-dimensional banded matrix with \f$l\f$ lower and \f$u\f$ upper diagonals and
+ * \f$0 \leq i < m\f$ and \f$0 \leq j < n\f$, if \f$i>j+l\f$ or \f$i<j-u\f$ then \f$b_{i,j}=0\f$.
+ * The default storage for banded matrices is packed. Orientation and storage can also be specified.
+ * Default is \c row_major and and unbounded_array. It is \b not required by the storage to initialize
+ * elements of the matrix.
+ *
+ * \tparam T the type of object stored in the matrix (like double, float, complex, etc...)
+ * \tparam L the storage organization. It can be either \c row_major or \c column_major. Default is \c row_major
+ * \tparam A the type of Storage array. Default is \c unbounded_array
+ */
     template<class T, class L, class A>
     class banded_matrix:
         public matrix_container<banded_matrix<T, L, A> > {
@@ -981,19 +981,20 @@
     typename banded_matrix<T, L, A>::const_value_type banded_matrix<T, L, A>::zero_ = value_type/*zero*/();
 
 
- // ---------------------
- // Diagonal matrix class
- // ---------------------
-
- /// \brief A diagonal matrix of values of type \c T (which is a specialization of a banded matrix)
- /// A diagonal matrix of values of type \c T (which is a specialization of a banded matrix). Orientation and storage can also be specified, otherwise a row major
- /// and unbounded array are used. As a specialization of a banded matrix, the constructor of the diagonal matrix creates a banded matrix with 0 upper and lower diagonals
- /// around the main diagonal and the matrix is obviously a square matrix. Operations are optimized based on these 2 assumptions. It is \b not required by
- /// the storage to initialize elements of the matrix. For a \f$(mxm)\f$-dimensional diagonal matrix, \f$0 \leq i < m\f$ and \f$0 \leq j < m\f$, if \f$i\neq j\f$ then
- /// \f$b_{i,j}=0\f$. The default storage for diagonal matrices is packed. Orientation storage can also be specified.
- /// \tparam T the type of object stored in the matrix (like double, float, complex, etc...)
- /// \tparam L the storage organization. It can be either \c row_major or \c column_major. By default it is \c row_major
- /// \tparam A the type of Storage array. By default, it is an \unbounded_array
+ /** \brief A diagonal matrix of values of type \c T, which is a specialization of a banded matrix
+ *
+ * For a \f$(mxm)\f$-dimensional diagonal matrix, \f$0 \leq i < m\f$ and \f$0 \leq j < m\f$, if \f$i\neq j\f$ then
+ * \f$b_{i,j}=0\f$. The default storage for diagonal matrices is packed. Orientation and storage can also be specified.
+ * Default is \c row major \c unbounded_array.
+ *
+ * As a specialization of a banded matrix, the constructor of the diagonal matrix creates a banded matrix with 0 upper
+ * and lower diagonals around the main diagonal and the matrix is obviously a square matrix. Operations are optimized
+ * based on these 2 assumptions. It is \b not required by the storage to initialize elements of the matrix.
+ *
+ * \tparam T the type of object stored in the matrix (like double, float, complex, etc...)
+ * \tparam L the storage organization. It can be either \c row_major or \c column_major. Default is \c row_major
+ * \tparam A the type of Storage array. Default is \c unbounded_array
+ */
     template<class T, class L, class A>
     class diagonal_matrix:
         public banded_matrix<T, L, A> {

Modified: branches/ublas-doxygen/triangular.hpp
==============================================================================
--- branches/ublas-doxygen/triangular.hpp (original)
+++ branches/ublas-doxygen/triangular.hpp 2010-06-02 04:08:04 EDT (Wed, 02 Jun 2010)
@@ -57,7 +57,26 @@
         }
     }
 
- // Array based triangular matrix class
+ /** \brief A triangular matrix of values of type \c T.
+ *
+ * a banded matrix of values of type T of variable size with n_lower sub diagonals and n_upper super diagonals.
+ * Only the nonzero elements are stored in the given order TRI (packed storage).
+ *
+ * For a \f$(n \times n )\f$-dimensional lower triangular matrix and if \f$0 \leq i < n\f$, \f$0 \leq j < n\f$ and \f$i>j\f$ holds,
+ * \f$m_{i,j}=0\f$. Furthermore if \f$m_{i,i}=1\f$, the matrix is called unit lower triangular.
+ *
+ * For a \f$(n \times n )\f$-dimensional upper triangular matrix and if \f$0 \leq i < n\f$, \f$0 \leq j < n\f$ and \f$i<j\f$ holds,
+ * \f$m_{i,j}=0\f$. Furthermore if \f$m_{i,i}=1\f$, the matrix is called unit upper triangular.
+ *
+ * The default storage for triangular matrices is packed. Orientation and storage can also be specified.
+ * Default is \c row_major and and unbounded_array. It is \b not required by the storage to initialize
+ * elements of the matrix.
+ *
+ * \tparam T the type of object stored in the matrix (like double, float, complex, etc...)
+ * \tparam TRI the type of the triangular matrix. It can either be \c lower or \c upper. Default is \c lower
+ * \tparam L the storage organization. It can be either \c row_major or \c column_major. Default is \c row_major
+ * \tparam A the type of Storage array. Default is \c unbounded_array
+ */
     template<class T, class TRI, class L, class A>
     class triangular_matrix:
         public matrix_container<triangular_matrix<T, TRI, L, A> > {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk