#include <Smatrix.hpp>
Inheritance diagram for smatrix::const_svector_ref::

Public Types | |
| typedef map< size_t, size_t >::const_iterator | const_iterator |
Public Methods | |
| const_svector_ref (const smatrix< t > *pm, const rng &i, size_t j) | |
| const_svector_ref (const smatrix< t > *pm, size_t i, const rng &j) | |
| const map< size_t, size_t > * | GetMap () const |
| const_iterator | lower_bound (size_t i) const |
| svector | operator * (const t &b) |
| t | GetEpsilon () const |
| t | Coef (const_iterator p) const |
| t | operator() (size_t n) const |
| bool | operator!= (const const_svector_ref &b) |
| template<class tb> t | operator * (const tb &b) |
| template<class tb> svector | operator+ (const tb &b) const |
| template<class tb> svector | operator- (const tb &b) const |
Static Public Methods | |
| size_t | Index (const_iterator p) |
Public Attributes | |
| const smatrix< t > * | cm |
| rng | range |
| size_t | n |
| bool | bColVect |
|
|||||
|
Definition at line 362 of file Smatrix.hpp. |
|
||||||||||||||||||||
|
Definition at line 364 of file Smatrix.hpp. |
|
||||||||||||||||||||
|
Definition at line 366 of file Smatrix.hpp. |
|
||||||||||
|
Definition at line 392 of file Smatrix.hpp. Referenced by operator *(), and operator!=().
00392 { return(cm->e[p->second]); }
|
|
|||||||||
|
Definition at line 390 of file Smatrix.hpp. Referenced by operator *(), operator+(), and operator-().
00390 { return(cm->epsilon); }
|
|
|||||||||
|
Definition at line 368 of file Smatrix.hpp. Referenced by lower_bound(), and operator()().
|
|
||||||||||
|
Definition at line 391 of file Smatrix.hpp. Referenced by operator!=().
00391 { return(p->first); }
|
|
||||||||||
|
Definition at line 376 of file Smatrix.hpp. Referenced by operator *(), and operator!=().
00377 {
00378 return(GetMap()->lower_bound(i));
00379 }
|
|
||||||||||||||
|
Definition at line 413 of file Smatrix.hpp. 00414 {
00415 return(smatrix<t>::svMultiply(*this, b));
00416 }
|
|
||||||||||
|
Definition at line 380 of file Smatrix.hpp. 00381 {
00382 svector c(GetEpsilon() * b);
00383 c.range = range;
00384 const_iterator i = lower_bound(range.first);
00385 const_iterator iEnd = lower_bound(range.second + 1);
00386 for(; i != iEnd; i++)
00387 c.insert(c.end(), i->first, Coef(i) * b);
00388 return(c);
00389 }
|
|
||||||||||
|
Definition at line 399 of file Smatrix.hpp. 00400 {
00401 if(range.first != b.range.first || range.second != b.range.second) return(true);
00402 const_iterator ia = lower_bound(range.first);
00403 const_iterator iaEnd = lower_bound(range.second + 1);
00404 const_iterator ib = b.lower_bound(b.range.first);
00405 const_iterator ibEnd = b.lower_bound(b.range.second + 1);
00406 for(; ia != iaEnd && ib != ibEnd; ia++, ib++)
00407 {
00408 if(Index(ia) != b.Index(ib)) return(true);
00409 if(Coef(ia) != b.Coef(ib)) return(true);
00410 }
00411 return(ia != iaEnd || ib != ibEnd);
00412 }
|
|
||||||||||
|
Definition at line 393 of file Smatrix.hpp. 00394 {
00395 const map<size_t, size_t> *Map = GetMap();
00396 const_iterator p = Map->find(n);
00397 return(p == Map->end() ? 0 : cm->e[p->second]);
00398 }
|
|
||||||||||||||
|
Definition at line 417 of file Smatrix.hpp. 00418 {
00419 svector c(max(GetEpsilon(), b.GetEpsilon()));
00420 svAssign(c, *this);
00421 return(svAddEq(c, b, false));
00422 }
|
|
||||||||||||||
|
Definition at line 423 of file Smatrix.hpp. 00424 {
00425 svector c(max(GetEpsilon(), b.GetEpsilon()));
00426 svAssign(c, *this);
00427 return(svAddEq(c, b, true));
00428 }
|
|
|||||
|
Definition at line 360 of file Smatrix.hpp. |
|
|||||
|
Definition at line 357 of file Smatrix.hpp. |
|
|||||
|
Definition at line 359 of file Smatrix.hpp. |
|
|||||
|
Definition at line 358 of file Smatrix.hpp. |
1.2.11.1 written by Dimitri van Heesch,
© 1997-2001