Commit Graph

163 Commits (19a9e1e0e592a819681000b03976131fe6a73e3e)

Author SHA1 Message Date
Varun Agrawal 61b1a9e88d Merge branch 'develop' into feature/rot-print 2020-07-21 18:07:52 -05:00
yetongumich ec993497f3 deprecate error in noisemodel, use loss instead; revise virtual with override 2020-07-12 23:09:13 -04:00
Fan Jiang 3d8641c0c3 Merge remote-tracking branch 'origin/develop' into feature/noisemodel_rename_functions 2020-07-09 14:26:39 -04:00
Varun Agrawal d7522ab970 moved matlab-style matrix format definition back to cpp, updated all formatters 2020-06-19 16:03:40 -05:00
Fan Jiang 65036b2019 Devirtualize hessianDiagonal 2020-06-03 20:07:14 -04:00
Fan Jiang f2a7864fb6 Further optimization 2020-06-02 23:52:38 -04:00
Fan Jiang 9186e656a5 Zero initialize the allocated vector 2020-06-02 22:00:11 -04:00
Fan Jiang 151809c89c replaced all find&insert to emplace 2020-06-02 21:33:58 -04:00
Fan Jiang 15fda68c1a Use faster version of in-place add 2020-06-02 16:17:28 -04:00
Fan Jiang 50ffeb7dcd Use find 2020-06-02 15:38:04 -04:00
Fan Jiang f73429133a Switched to in-place update of the diagonal Hessian 2020-06-02 12:44:57 -04:00
Jose Luis Blanco Claraco 76b29b78af
Prefer C++11 nullptr 2020-04-06 23:31:05 +02:00
yetongumich 201539680f remove distance in noisemodel, replace with error 2020-04-01 20:07:49 -04:00
Mike Bosse 1f43d73b34 make jacobian factor use noise model distance when available 2019-12-17 11:18:12 -08:00
Gerry Chen 5a358489dc Some low hanging fruit changing `func(..., boost::optional<const Class &>)` to overloaded
`func(...)` and
`func(..., const Class &)`
not all done
Also, although it currently passes all tests, I think some more tests may be needed...
2019-10-13 23:59:50 -04:00
Frank Dellaert 372ae8d092 Fixed up conversion from Hessian -> Jacobian to accommodate QPSolver (same solution as Ivan, now tested that it does not interfere with normal workings) 2019-04-25 00:46:20 -04:00
dellaert a450ba1e55 Merge remote-tracking branch 'origin/develop' into feature/LPSolver
# Conflicts:
#	gtsam_unstable/linear/QPSVisitor.h
#	gtsam_unstable/linear/RawQP.cpp
2019-04-24 16:08:50 -04:00
Frank Dellaert 9ec714063a many performance tweaks 2019-04-10 22:34:01 -04:00
jlblancoc 1304d26e81 exit()-> throw (Closes #427) 2019-04-07 23:59:53 +02:00
Frank Dellaert 2aa43e11bd Use KeyVector everywhere to avoid conversions 2018-11-08 10:10:32 -05:00
= b05bd66ba2 Fix the Jacobian factor constructor to work with the last QP tests. 2018-11-05 17:52:55 -05:00
Frank Dellaert a87ce9bac4 Fixed consistency checks 2018-09-28 11:20:55 -04:00
= ab1f6562c8 Fixes compile errors when using BOOST version 1.61.0 2016-08-06 00:59:07 -04:00
Abe fbe9aac41c squash local changes on top of gtsam upstream pull from 6/14/2016 2016-06-18 23:13:59 -07:00
yao a0661b3813 Almost done. Still need to figure out how to remove the remaining 3 occurrences. 2016-05-21 12:44:46 -04:00
Alex Hagiopol 76308a5d46 Deprecated Vector zero(size_t n). All unit tests pass. 2016-04-15 16:54:46 -04:00
Alex Hagiopol 70b2aab352 Deprecated all inline functions in Matrix.h. 2016-04-11 15:11:29 -04:00
Frank 0372a959ee Many small improvements, bug-fixes, and tests 2016-02-24 11:01:19 -08:00
Chris Beall cc0b7cfdc1 convert tabs to spaces. See https://bitbucket.org/gtborg/gtsam/wiki/C++%20Coding%20Conventions 2016-02-09 20:00:38 -05:00
lvzhaoyang 0b2d4f1182 feature: change rowPrefix to an indent. Now all columns are aligned 2015-10-22 15:04:53 -04:00
Chris Beall 1d44761e3c Merged develop into feature/MatrixPrinting 2015-10-16 10:41:25 -04:00
dellaert 82f6ca64a5 Merge remote-tracking branch 'origin/develop' into fix/zeroRowInQR 2015-06-15 01:09:19 -07:00
Frank Dellaert b68f763fe7 Merged in feature/LinearSolverCleanup (pull request #148)
This has
- Separate Scatter class
- change from updateATA to updateHessian as a virtual method
- Fixed-size BinaryJacobianFactor that overloads updateHessian
- SFM Timing Script that takes BAL files
2015-06-15 01:08:02 -07:00
dellaert f523db2d98 IMPORTANT CHANGE/BUGFIX: QR elimination now (I think properly) leaves a row of zeros if the RHS after QR contains a non-zero. A corresponding change in the error calculation makes that Jacobian and Hessian factors now agree on error. I think this was a bug, because it affected the error, but (I think) it only pertained to "empty" JacobianFactors which have no bearing on optimization/elimination. 2015-06-15 00:55:53 -07:00
dellaert 5771664622 Starting to diagnose issue with lower-left entry of Hessian 2015-06-14 16:01:54 -07:00
Frank Dellaert d0775faeba Save slots to bring cost down from O(n^3) to O(n^2) - again, in theory. In practice, it did seem to help for larger HessianFactors (as expected). 2015-06-13 12:26:10 -07:00
Frank Dellaert f6575323d6 Sidestep Scatter altogether and just use HessianFactor keys_. In theory, n^3 lookup cost, but in practice (as keys is contiguous memory) just as fast as map. 2015-06-13 12:06:13 -07:00
Frank Dellaert c8cff296fb Don't bother making an array 2015-06-13 09:01:13 -07:00
Frank Dellaert 6664699c4c getSlots method 2015-06-12 09:33:55 -07:00
Frank Dellaert b712a65c21 Updated gttic strings as well 2015-06-12 00:28:15 -07:00
Frank Dellaert 41a0146b05 changed updateATA -> updateHessian. Much clearer 2015-06-12 00:20:37 -07:00
Frank Dellaert 257060e8dd Scatter class in separate compilation unit 2015-06-11 21:21:01 -07:00
Frank Dellaert 39ffe3ac32 Made updateATA a virtual method for a small saving in CPU, but more importantly to allow for custom Jacobian or HessianFactors... 2015-06-10 15:53:43 -04:00
Frank Dellaert c75a76c705 Moved raw access method (possibly to be removed!) to base class as does not assume regular... 2015-06-08 20:30:55 -04:00
Abe 13a4da21b2 misc bugfixes and cleanup from skydio 2015-05-13 22:26:24 -07:00
dellaert 445b5834dc Use Eigen::format, now compatible with matlab, and stream precision affects printing. 2015-02-17 00:39:03 +01:00
Sungtae An e13243b140 Merge branch 'develop' into feature/RegularFactors
Conflicts:
	gtsam/linear/GaussianFactorGraph.cpp
	gtsam/linear/JacobianFactor.cpp
	gtsam/linear/JacobianFactor.h
	tests/testPreconditioner.cpp
2015-01-01 17:50:27 -05:00
thduynguyen 2673e1664c reapply a bug fix in isConstrained when no model exists 2014-12-13 01:05:24 -05:00
krunalchande e539738fd0 Remove support for dual keys. Added finished() after all matrices and vectors. Remove buildDualGraph from GaussianFactorGraph. Remove support for multipliedHessians for non-linear equality constraints. 2014-12-12 17:23:31 -05:00
Sungtae An 960d10582d Add pure virtual function in GaussianFactor and empty dummy virtual function in Jacobian/Hessian Factor for the raw memory access functions 2014-11-17 16:17:11 -05:00