Richard Roberts
1c0dcbc438
Added smart=true for the noise model when constructing GaussianFactor from GaussianConditional (and unit test). If a factor with a constrained noise model was eliminated, and then a new factor was constructed from the conditional (this happens in iSAM), the new factor would have an unconstrained noise model with zero sigmas.
2010-05-16 17:08:14 +00:00
Kai Ni
d0d2aa8aee
added erase method
2010-03-04 23:39:36 +00:00
Kai Ni
7e8aa6e6b9
add unit test for the constructor
2010-02-26 05:04:03 +00:00
Alex Cunningham
5b60511505
Reverted default elimination code to older implementation - use switch in optimize() or eliminate() to use newer code.
2010-02-25 20:43:59 +00:00
Alex Cunningham
022f706d94
Changed default elimination algorithm to newer one with fewer matrix allocations to solve crashing bug from LM discovered in MAST
2010-02-24 14:19:52 +00:00
Alex Cunningham
ac41ee7215
Added a test in GaussianFactor to demo a problem found in MAST where eliminating a single factor with two priors causes a memory corruption error. To run the test and see the error, go to the last test in testGaussianFactor called "exploding_MAST_factor" and uncomment the indicated line.
2010-02-23 18:41:07 +00:00
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
Alex Cunningham
87cc573d34
Added a new combine process for GaussianFactors that allocates only one matrix when combining, rather than using append factor to make a large number of smaller matrices. There is a flag to switch between these modes, which currently defaults to the older approach. Currently, there does not appear to be a performance improvement, however.
2010-01-31 17:49:33 +00:00
Frank Dellaert
ac870bce4c
GaussianFactor::transposeMultiplyAdd
2010-01-31 03:33:53 +00:00
Alex Cunningham
59c7ce7e29
Integrated householder-based QR into NoiseModel. Note that the examples for GFG have changed to ensure that they are actually a linearized version of the nonlinear example.
2010-01-27 04:39:35 +00:00
Frank Dellaert
351cdd18c2
case change: SharedGaussian and SharedDiagonal are now classes with their own header file. Needed for MATLAB TORO hail Mary
2010-01-22 17:36:57 +00:00
Alex Cunningham
5f588031bc
Merged NoiseQR back into trunk
2010-01-20 18:32:48 +00:00
Frank Dellaert
b47438a86c
Smart named constructors Covariance/Variances/Variance
2010-01-20 00:26:49 +00:00
Alex Cunningham
fb0ca07bf1
Added and tested whitening parameter for matrix() and matrix_augmented()
2010-01-19 16:52:01 +00:00
Alex Cunningham
88e465910a
SQP tests and implementation now use the new Key system
2010-01-19 05:33:44 +00:00
Richard Roberts
aef0b42562
Refactoring to use a new Symbol key instead of strings in Bayes*, Gaussian*, Ordering, Symbolic*, VectorConfig. Renamed existing type-checking key Symbol<C,T> to TypedSymbol<C,T>
2010-01-17 19:34:57 +00:00
Frank Dellaert
266fc56dea
Gradient using new operator^ and errors method
2009-12-27 12:13:31 +00:00
Frank Dellaert
c38683cd64
Sped up and fixed (?) sparse
2009-12-12 06:18:29 +00:00
Frank Dellaert
a66f08a5e0
testing new alphaFactor
2009-12-11 18:03:43 +00:00
Frank Dellaert
fe974a3e72
Rank test needs to be re-thought
2009-11-13 06:17:19 +00:00
Alex Cunningham
c7b86cec97
Renamed ConditionalGaussian -> GaussianConditional
2009-11-12 16:41:18 +00:00
Alex Cunningham
77a1754b69
Renamed LinearFactor -> GaussianFactor, LinearFactorGraph -> GaussianFactorGraph
2009-11-12 16:16:32 +00:00