Commit Graph

5 Commits (3247751b5db8193b5fbd924b66b1e48325db7e7c)

Author SHA1 Message Date
Frank Dellaert 3247751b5d Major check-in: there are now two interchangeable implementations of VectorConfig.
VectorMap uses a straightforward stl::map of Vectors. It has O(log n)
insert and access, and is fairly fast at both. However, it has high overhead
for arithmetic operations such as +, scale, axpy etc...

VectorBTree uses a functional BTree as a way to access SubVectors
in an ordinary Vector. Inserting is O(n) and much slower, but accessing,
is O(log n) and might be a bit slower than VectorMap. Arithmetic operations
are blindingly fast, however. The cost is it is not as KISS as VectorMap.

Access to vectors is now exclusively via operator[]
Vector access in VectorMap is via a Vector reference
Vector access in VectorBtree is via the SubVector type (see Vector.h)

Feb 16 2010: FD: I made VectorMap the default, because I decided to try
and speed up conjugate gradients by using Sparse FactorGraphs all the way.
2010-02-17 03:29:12 +00:00
Frank Dellaert e4691a1594 BTree refactored, Node is now an inner class, find is non-recursive 2010-02-15 23:52:46 +00:00
Chris Beall 814fb949ba fixed critical bug relating to height of tree 2010-02-06 17:45:40 +00:00
Chris Beall 675b30d1c1 updates to BTree 2010-02-06 15:53:31 +00:00
Chris Beall 8fe0795dd0 BTree moved into gtsam 2010-02-04 21:02:05 +00:00