- Timestamp:
- 10/15/08 19:08:06 (16 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
bdm/math/libDC.h
r168 r180 15 15 16 16 #include <itpp/itbase.h> 17 #include "../itpp_ext.h" 17 18 18 19 using namespace itpp; … … 172 173 }; 173 174 174 /*! \brief Matrix stored in LD form, ( typically known as UD)175 /*! \brief Matrix stored in LD form, (commonly known as UD) 175 176 176 177 Matrix is decomposed as follows: \f[M = L'DL\f] where only \f$L\f$ and \f$D\f$ matrices are stored. … … 180 181 { 181 182 public: 182 183 183 //! Construct by copy of L and D. 184 184 ldmat ( const mat &L, const vec &D ); 185 185 //! Construct by decomposition of full matrix V. 186 186 ldmat (const mat &V ); 187 //! Construct by restructuring of V0 accordint to permutation vector perm. 188 ldmat (const ldmat &V0, const ivec &perm):sqmat(V0.rows()){ ldform(V0.L.get_cols(perm), V0.D);}; 187 189 //! Construct diagonal matrix with diagonal D0 188 190 ldmat ( vec D0 ); … … 191 193 //! Default initialization with proper size 192 194 ldmat(const int dim0); 193 195 194 196 //! Destructor for future use; 195 197 virtual ~ldmat(){}; … … 206 208 double qform (const vec &v ) const; 207 209 double invqform (const vec &v ) const; 208 // sqmat& operator -= ( const sqmat & ld2 );209 210 void clear(); 210 211 int cols() const; … … 212 213 vec sqrt_mult ( const vec &v ) const; 213 214 215 214 216 /*! \brief Matrix inversion preserving the chosen form. 215 217 @param Inv a space where the inverse is stored. … … 267 269 268 270 }; 269 270 271 271 272 //////// Operations: