Manohar Paluri
43f9baf77a
added test to check singular value ordering for a sample homography case
2010-02-14 04:56:29 +00:00
Manohar Paluri
693e13ef88
added default bool option to svd to sort the singular values and V. the default is true so pass false to avoid sorting
2010-02-14 04:54:39 +00:00
justinca
74dd7128ac
Fixup cholesky decomposition - rename to LLt and RtR to make convention clear
2010-01-31 18:07:29 +00:00
Alex Cunningham
48d2dabe43
Added in-place insertion functions to Matrix, as well as a #define flag to enable or disable GSL code without a reconfigure.
2010-01-31 17:21:07 +00:00
Frank Dellaert
5e4b23df59
Matrix::multiplyAdd and transposeMultiplyAdd are "level 2" BLAS and speed up the numeric part of the code substantially. Alex might be able to speed them up even more by making them use real BLAS code within Matrix.cpp.
2010-01-31 16:04:24 +00:00
Frank Dellaert
4f998e5ecd
Matrix::transposeMultiplyAdd
2010-01-31 02:53:03 +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
justinca
16c55975c1
Fix inverse_square_root, add cholesky decomposition options
2010-01-22 22:28:03 +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
Kai Ni
4b778a4e82
fixed a bug in matrix solve function
2010-01-22 06:45:01 +00:00
Alex Cunningham
ac746ccead
Improved performance of updateAb in NoiseModel with GSL/ATLAS. Various other small optimizations were made.
2010-01-21 18:51:59 +00:00
Alex Cunningham
9c9007920a
Changed the interface on Matrix::column() so that it uses the one in our library (now called column_() ) rather than the boost default. Currently, our implementation just uses the boost default, but this may change due to timing results.
2010-01-20 16:08:14 +00:00
Alex Cunningham
f577b27f52
Small optimizations on Matrix::collect(), additional timing capabilities, and now collect() can have dimensions specified to avoid need for lookup.
2010-01-19 21:49:22 +00:00
Frank Dellaert
a4a6e002e5
NOISE MODEL.
...
This is a big edit but with no templates involed, so it should not be a big deal.
New namespace gtsam::noiseModel collects all noise models, which provide efficient whitening and chain-rule implementation needed for optimization. The class hierarchy gives us the ability to use models from full covariances to i.i.d. unit variance noise with a single interface, where the latter will be much cheaper.
From now on, all non-linear factors take a shared_ptr to a Gaussian noise model. This is done through the parameter (const sharedGaussian& model). The use of a shared pointer allows us to share one noise models for thousands of factors, if applicable.
Just like Richard's Symbol change, there is a compile flag GTSAM_MAGIC_GAUSSIAN which allows you to use doubles, vectors, or matrices to created noise models on the fly. You have to set it to the correct dimension. Use of this is *not* encouraged and the flag will disappear after some good soul fixed all unit tests.
2010-01-18 05:38:53 +00:00
Frank Dellaert
ea14959835
NoiseModel inhertance structure reversed, all constructors protected, new static "factories"
2010-01-17 17:47:23 +00:00
Frank Dellaert
3a83e0678d
KISS refactor of NoiseModel
2010-01-17 00:37:34 +00:00
Richard Roberts
e4eaa22378
Comment out unit test for broken function only used in NoiseModel, working on fixing
2010-01-16 20:18:45 +00:00
Frank Dellaert
c051be9edf
did not compile
2010-01-16 19:35:50 +00:00
Richard Roberts
f0ae2c064e
Merging in NoiseModel, not yet used though
2010-01-16 18:39:39 +00:00
Frank Dellaert
f1f21a8589
inverted sign of square root to make inv sqrt positive for simple covariance matrices
2010-01-10 13:53:31 +00:00
Frank Dellaert
15bb00683a
transpose backsubstitute on upper-triangular matrix
2009-12-30 13:20:16 +00:00
Frank Dellaert
c43cd425ab
new back-substitution functions that can do unit triangular solves
2009-12-29 13:59:34 +00:00
Frank Dellaert
2cb52694b5
Multiply with transpose sugar A'*v = A^v
2009-12-25 17:52:58 +00:00
Alex Cunningham
d7c67532bf
Changed format of Matrix::vector_scale() to switch arguments
2009-12-08 21:10:38 +00:00
Frank Dellaert
066b80e02e
Pose2Constraint, initial check in with working linearize
2009-12-08 20:48:39 +00:00
Alex Cunningham
f51614813e
Improved weighted eliminate to handle arbitrary linear equality constraints
2009-11-11 14:42:09 +00:00
Alex Cunningham
2c37c94b5d
Replaced the householder transform with the weighted system
...
Removed constrained components from makefile, they will disappear shortly
2009-11-09 21:34:20 +00:00
Alex Cunningham
03985d16f6
Fixed equality checking with NaNs in Matrix
...
removed extraneous print statement in Vector
2009-11-09 16:57:30 +00:00
Alex Cunningham
7ef9ed950b
Improved performance of matrix scaling in LinearFactor::matrix_augmented
...
Added matrix scaling functions to scale either the rows or columns by values from a vector
2009-11-06 13:43:39 +00:00
Alex Cunningham
65b949c008
Fixed flaw in pseudoinverse calculation, and updated tests for Matrix and Vector
2009-10-29 20:12:07 +00:00
Alex Cunningham
4c48bb08e1
Vector and Matrix updated with improved weighted householder operations and more tests.
2009-10-29 12:52:27 +00:00
Alex Cunningham
37bc303492
Added weighted Householder transforms that use precisions perform QDR factorization. Functions create a weighted vector pseudoinverse, and then use the pseudoinverse to substitute a solution into system.
2009-10-27 14:21:22 +00:00
Richard Roberts
d80fa24a9f
Fixing directory structure
2009-08-21 22:23:24 +00:00