Commit Graph

529 Commits (release/4.3a0)

Author SHA1 Message Date
dellaert 64aae16b3c Fixed problem with wrapping iSAM by a hack: made vector<size_t> into KeyVector. This is not a long-term solution: we should enable wrapping of vector<T>. 2016-02-25 22:07:04 -08:00
Frank 0372a959ee Many small improvements, bug-fixes, and tests 2016-02-24 11:01:19 -08:00
dellaert 464a82cc51 Merge remote-tracking branch 'origin/develop' into feature/betterOrdering
Conflicts:
	.cproject
	gtsam/inference/Ordering.h
	gtsam/nonlinear/LevenbergMarquardtOptimizer.cpp
	gtsam_unstable/nonlinear/BatchFixedLagSmoother.cpp
	gtsam_unstable/nonlinear/ConcurrentBatchSmoother.cpp
2015-06-28 15:41:58 -07:00
Frank Dellaert 801d1fb700 Merged in feature/performance (pull request #161)
Improving performance
2015-06-23 22:27:10 -07:00
cbeall3 0e022b3b33 Values::keys now returns KeyVector instead of list. Corresponding fixes in Matlab wrapper. 2015-06-24 00:35:32 -04:00
dellaert f9ddbb1345 Eliminated linked list 2015-06-21 01:45:56 -07:00
dellaert 128bac616c Globally replaced FastSet<Key> with KeySet. 2015-06-20 18:38:25 -07:00
dellaert 79d20b6c44 GTSAM-style formatting 2015-05-13 23:44:46 -07:00
Abe 13a4da21b2 misc bugfixes and cleanup from skydio 2015-05-13 22:26:24 -07:00
dellaert 4f846ff75f No more boost::mpl needed for Expressions 2015-05-12 01:33:33 -07:00
dellaert 81b3860991 Moved all internal data structures to internal namespace 2015-05-11 21:19:40 -07:00
Thomas Schneider ebf5746987 Fix some serialization warnings. 2015-03-06 16:12:09 +01:00
zhaoyang 1d81572894 Capitalize static methods in ordering.h
This commit involves the API change. Related files in gtsam have been changed. All the tests examples run without issue.
2015-02-21 13:16:03 -05:00
dellaert 097f0fb80d Fix paths 2014-12-28 14:51:19 +01:00
dellaert c8faa102e3 Moved EexpressionFactor related files to gtsam 2014-12-28 13:48:13 +01:00
dellaert e5017984a1 traits_x -> traits 2014-12-26 16:47:51 +01:00
dellaert 5473550eea Using traits in many places (forced by loss of Point2 mojo) 2014-12-22 16:02:33 +01:00
Mike Bosse 4a708c855f fixed testExpressionFactor.cpp 2014-12-22 11:33:52 +01:00
dellaert 79d8514528 MASSIVE edit: made Testable its own concept, and moderinized Testable.h to use Testable traits. This required adding Testable traits in many classes. 2014-12-21 22:02:57 +01:00
dellaert 00b374c9e9 Merge remote-tracking branch 'origin/develop' into feature/tighteningTraits
Conflicts:
	gtsam/base/LieScalar.h
	gtsam/geometry/Point2.h
2014-12-21 14:39:23 +01:00
Mike Bosse d0e1c1a770 test compiling!! but 34 tests failed out of 198 2014-12-20 20:36:54 +01:00
dellaert 22218eafc4 We will not wrap fixed Vectors and Matrices individually. Methods that take those can just as well be wrapped with Vector or Matrix. Note const and & are ignored for those. I added a small method, insertFixed, that allows one to put in small fixed size matrices for optimization. Did not do retrieval yet. 2014-12-10 10:45:22 +01:00
Andrew Melim 1e778cf77b No longer need to cast function pointers for expressions on Windows, with Optional Jacobian 2014-12-09 11:53:35 -05:00
Andrew Melim 137ea64200 Updating with OptionalJacobian 2014-12-09 11:49:47 -05:00
Andrew Melim 3bd491bf66 Merge branch 'develop' into fix/windowsExpressions 2014-12-09 11:04:30 -05:00
Andrew Melim 701dcc1c99 Correcting VLA issue, and add template specification for between Pose2 objects. More template specifcations will be needed on windows, unless another fix is found 2014-12-08 21:39:12 -05:00
dellaert 02075b7575 Moved to project 2014-12-04 21:08:31 +01:00
dellaert 4fd2a288a2 Expressions now require OptionalJacobian 2014-12-04 21:08:15 +01:00
dellaert 96016edf85 Merge remote-tracking branch 'origin/develop' into feature/fixedSizeDerivatives
Conflicts:
	.cproject
2014-12-04 21:07:34 +01:00
cbeall3 30c4092d80 Move AdaptAutodiff and test to close issue #142 2014-12-04 12:15:53 -05:00
cbeall3 003e7a06ab 3rdparty/ceres include paths 2014-12-03 23:11:54 -05:00
cbeall3 cbaf96e28c Move and rename ceres headers 2014-12-03 23:07:26 -05:00
Chris Beall b318857216 Now valgrind error free 2014-12-02 08:37:32 -05:00
dellaert 468d1bd78a Fixed unitialized error, fixes issue #179 2014-12-02 11:10:59 +01:00
dellaert 1330d6b7f2 Removed legacy code 2014-12-02 11:10:29 +01:00
dellaert 6910c70d4b Prototype FourierDecomposition class 2014-12-01 22:30:04 +01:00
Frank Dellaert a92f9b3335 Merged in fix/unrollingReverseADInterfaceRecursionForCodeSimplicity (pull request #56)
unrolled the reverseAD recursion (issue #151)
2014-12-01 20:43:45 +01:00
Christian Forster c7ab79690b missing <limits> for std::numeric_limits 2014-12-01 12:38:17 -05:00
HannesSommer 6c62609737 - introduced CallRecordMaxVirtualStaticRows for keeping CallRecord.h and testCallRecord.cpp in sync with respect to this.
- reactivated the fully dynamically sized matrix support in CallRecord.h
- small cleanups
2014-11-29 16:03:33 +01:00
dellaert e2e29dac68 Removed #ifdef blocks and documented the AD process by numbering the methods in the order they are called 2014-11-29 13:09:17 +01:00
dellaert 7989a8c0dc Added wide test 2014-11-29 13:08:10 +01:00
HannesSommer 18a8de1f46 - unrolled the reverseAD recursion
- MaxVirtualStaticRows is now a macro and some preprocessor derictives activate and deactivate the corresponding defintions. This could be of course removed at some point.
2014-11-29 10:14:19 +01:00
dellaert c90bc5c34a Excluded Paul's test 2014-11-29 08:01:17 +01:00
dellaert 6505e602d8 FixedRef is now OptionalJacobian 2014-11-28 17:14:26 +01:00
dellaert 747071138e Use new FixedRef type in tests 2014-11-28 01:58:24 +01:00
dellaert dc40864a8f Excluded Paul's test 2014-11-28 01:58:11 +01:00
dellaert ee790839c6 Now only accept new FixedRef type 2014-11-28 01:57:45 +01:00
dellaert d5ca61972f Fixed assert 2014-11-26 17:31:46 +01:00
dellaert 72644b8ff3 Fixed headers 2014-11-26 17:31:40 +01:00
dellaert c1a10f2cf7 Moved files 2014-11-26 17:25:40 +01:00
dellaert 3307a49e65 is_constrained is now isConstrained 2014-11-26 12:33:17 +01:00
dellaert c2e38633b5 Merge remote-tracking branch 'origin/develop' into feature/BAD_custom_chart
Conflicts:
	gtsam_unstable/nonlinear/ExpressionFactor.h
2014-11-26 11:20:56 +01:00
dellaert dc4c0b54c0 Addressed code review by @hannessommer 2014-11-25 16:13:30 +01:00
dellaert df91cf7fad Made vaguely unsafe keysAndDims private (as it relies on keys and dimensions being in same order), as to not tempt people to use it. 2014-11-25 12:36:52 +01:00
dellaert 2ced73ebe1 We now use safe version in unwhitenedError 2014-11-25 11:29:50 +01:00
dellaert 2c35cda71f Yet another indirection makes public code a bit cleaner. 2014-11-25 11:23:38 +01:00
dellaert 07e5475b6b Making friends... 2014-11-25 11:02:54 +01:00
dellaert e0248c3ca7 Created keysAndDims and safe version of values 2014-11-25 10:53:34 +01:00
Paul Furgale 915c760524 cleaned up the code a bit 2014-11-25 06:43:55 +01:00
Paul Furgale 5b44ddc3e5 Merge branch 'feature/BAD_custom_chart' of https://bitbucket.org/gtborg/gtsam into feature/BAD_custom_chart 2014-11-25 06:43:45 +01:00
Paul Furgale 14b582d268 cleaned up the code a bit 2014-11-25 06:42:36 +01:00
dellaert 4790bade85 Moved and refactored testing 2014-11-25 00:19:01 +01:00
Chris Beall e34a237162 Merged in feature/ordering (pull request #34)
METIS Ordering
2014-11-24 18:04:35 -05:00
Jing Dong 6c13834260 change back to lower case, and fix another similar header issue 2014-11-24 15:51:07 -05:00
Frank Dellaert 923c5733c7 Merged in fix/BAD_alignment_issue_154 (pull request #42)
proposal to fix alignment in BAD (issue #154)
2014-11-24 21:27:50 +01:00
Paul Furgale 5b5122d15b Fixed a copy/paste error 2014-11-24 21:23:53 +01:00
Paul Furgale 07044137eb A failing unit test for a custom chart 2014-11-24 21:14:59 +01:00
Frank Dellaert c570f53e57 Merged in feature/BAD_using_charts (pull request #41)
Working on a prototype of wrapping external types
2014-11-24 19:01:58 +01:00
Frank Dellaert ea02e577f5 Merged in feature/expressions (pull request #45)
Pull request for debugging Expression<double> issue
2014-11-24 18:40:31 +01:00
Paul Furgale 9f68344abb Addressed code review 2014-11-24 12:43:30 +01:00
HannesSommer db6c9ff378 swtichted to Eigen::MatrixBase<Derived> as far as possible for dTdA to gain some performance and not to forget some types at some level :). 2014-11-24 10:48:15 +01:00
dellaert 3bf92d1a47 Force eval 2014-11-24 09:58:47 +01:00
Paul Furgale a44baac308 Added a function for testing charts 2014-11-24 09:29:14 +01:00
Paul Furgale 6fc3c450a7 Fixed the chart concept check and cleaned up a bit 2014-11-24 08:18:55 +01:00
Paul Furgale df7470866f More progress on easy Jacobian testing 2014-11-24 07:44:06 +01:00
dellaert 586ad610f8 Added more unit tests that expose compilation issue 2014-11-24 02:15:48 +01:00
dellaert 9322b3ba8b Unit test verifies Jacobian and value 2014-11-24 00:08:34 +01:00
dellaert e0f9f7a33e Fourier prototype that unfortunately does not compile 2014-11-23 23:16:04 +01:00
dellaert f40940dffe Tiny changes 2014-11-23 23:15:25 +01:00
dellaert 149bfe1729 Chery-picked Paul's changes 2014-11-23 23:15:10 +01:00
Richard Roberts f9ca07e610 Converted Vector(2|3) << ... to Vector2(...) or Vector3(...) syntax 2014-11-23 10:22:25 -08:00
dellaert 83abb4c6ed unit test with manual Fourier 2014-11-23 18:04:54 +01:00
dellaert f21fe5043a Created a new expressions.h file in nonlinear 2014-11-23 17:31:33 +01:00
HannesSommer 6cc7b17687 proposal to fix alignment in BAD (issue #154) 2014-11-23 13:51:47 +01:00
Richard Roberts aa093a35da Updated all comma initializer usages to use .finished() 2014-11-22 16:35:27 -08:00
dellaert d00aeb7e70 Formatting and some small problems 2014-11-22 21:48:36 +01:00
HannesSommer cc997dd774 adapted a view comments and friendships to the new virtual inheritance sceme
visibility fine tuning
2014-11-22 19:19:17 +01:00
Paul Furgale 3ef0eabff6 Merged in changes from develop 2014-11-22 14:55:32 +01:00
Paul Furgale aae206b308 Merge branch 'develop' into feature/BAD_using_charts 2014-11-22 14:38:55 +01:00
Paul Furgale e5fe5676b1 Working on a prototype of wrapping external types 2014-11-22 14:10:25 +01:00
HannesSommer 87ea6341f2 virtual inheritance for better readability and decoupling 2014-11-22 09:39:08 +01:00
HannesSommer b4fe033d12 added CallRecord unit test 2014-11-21 23:04:58 +01:00
HannesSommer 32992cf05e added missing overload for full dynamic matrix. 2014-11-21 23:04:58 +01:00
HannesSommer 6d0c1a44e1 - some small cleanup and improved readability.
- virtual overload warnings should not be issued anymore
2014-11-21 21:13:24 +01:00
HannesSommer f699dd26bb correct case in import 2014-11-21 21:10:12 +01:00
dellaert c238e5852c Now uses CallRecord.h 2014-11-21 15:48:29 +01:00
dellaert 2983cf33a6 Created CallRecord header 2014-11-21 15:48:10 +01:00
cbeall3 36a485169d Refactor Ordering parameters. Now compiles and passes with gcc 2014-11-17 16:16:52 -05:00
HannesSommer fb24ab586e introduced a MaxVirtualStaticRows compile time constant and realized as many static rows specific virtual reverseAD methods in the CallRecord interface to speedup the Jacobian evaluatio. 2014-11-17 11:18:09 +01:00
HannesSommer 4966f5a942 mini cleanup and improve comment TODO 2014-11-17 11:18:09 +01:00
dellaert d4b868aa12 Formatting and documentation 2014-11-14 11:20:36 +01:00
dellaert 865b0c0129 Fixed compile issue in Debug mode 2014-11-14 02:13:11 +01:00
Jing Dong 139ef0d61d fix glog macro to assert 2014-11-08 22:16:32 -05:00
Renaud Dube 90ec6b1452 reverted extra spaces which were added in last commit 2014-11-07 12:11:08 +01:00
Renaud Dube bd3f9db7df inlined a fully specialized function template defined in a .hpp 2014-11-07 11:37:27 +01:00
dellaert e0c4d84dd7 Fixed some tests/warnings in quaternion mode 2014-11-03 00:59:19 +01:00
Mike Bosse 11416cac65 Merge branch 'feature/BAD' into feature/BAD_generic_value_traits
Conflicts:
	gtsam_unstable/nonlinear/tests/testAdaptAutoDiff.cpp
	gtsam_unstable/nonlinear/tests/testExpressionFactor.cpp
2014-11-02 19:00:30 +01:00
dellaert 17d352bab4 Slight re-factor 2014-11-02 14:42:59 +01:00
dellaert d2f56b13ed Non-trivial noise models now correctly handled (at a small performance penalty, due to malloc of Vector b). 2014-11-02 14:37:52 +01:00
dellaert 90a0fa6e45 Check if active 2014-11-02 13:53:22 +01:00
dellaert a8ab910c32 Merged twio changes in: the is_constrained() flag that does away with the dynamic cast, and the changes duy made in commit a61b49d to remove the constrained noise model hack. At the same time, both linearize methods (in expressionFactor and NonlinearFactor) now make use of is_constrained(). 2014-11-02 13:45:54 +01:00
dellaert b9e3c3b116 Made unsafe constructor private, but made ExpressionFactor<T> a friend. 2014-11-02 12:01:52 +01:00
dellaert cb69f2cb82 Fastest linearize so far. Putting 'unsafe' constructor in JacobianFactor itself makes a *huge* difference. 2014-11-02 11:40:48 +01:00
dellaert 7aaf4dae8c Merge remote-tracking branch 'origin/feature/BAD_VerticalBlockMatrix' into feature/BAD_WriteableJacobianFactor
Conflicts:
	gtsam_unstable/nonlinear/ExpressionFactor.h
2014-11-01 17:45:23 +01:00
dellaert 7debde7518 Moved to ExpressionFactor that now uses it - timing seems worse ? 2014-11-01 15:12:06 +01:00
dellaert 12e38a44e4 WriteableJacobianFactor will allow ExpressionFactor to write into the factor directly, (hopefull) eliminating huge overhead. 2014-11-01 14:13:08 +01:00
dellaert a4fa61a7a4 Removed JacobianMap tests 2014-11-01 11:56:38 +01:00
dellaert f38b0b0eed Fixed unwhitenedError 2014-11-01 11:50:28 +01:00
dellaert 7b539fbb5c Make JacobianMap a wrapper around a VerticalBlockMatrix, which avoids us having to make a vector of references into it 2014-11-01 11:35:49 +01:00
dellaert 593edd1e5c Fixed asserts 2014-10-31 16:29:15 +01:00
dellaert d0c3bc0c8e Fixed tests 2014-10-31 16:27:54 +01:00
dellaert 768a4abc05 Does not need lambda 2014-10-31 16:27:46 +01:00
Sungtae An a5b8d0fd35 Modified finding method 2014-10-31 11:06:26 -04:00
Sungtae An 6a20d35a60 Modified pointer expression 2014-10-31 07:28:07 -04:00
Sungtae An 133fcf20e2 Cleaned up some commented codes 2014-10-31 07:22:19 -04:00
Sungtae An 97d4120858 Changed the type of JacobianMap as std::vector 2014-10-31 07:10:53 -04:00
Mike Bosse 80187362b8 attemping to expose ChartValue for expressions with non DefaultCharts, but needs testing 2014-10-28 11:20:02 +01:00
Mike Bosse bc094951ed all values in Values container are now a ChartValue<ValueType, Chart=DefaultChart<ValueType> >
ChartValues are GenericValues and a Chart, which defaults to DefaultChart
had to make charts functional (ie no storage of the chart origin) so that they could be zero sized base class
otherwise there would have been a double of the memory for values (ones for the value, and once for the chart origin, which default to the same)

most tests work, execept for serialization based stuff, and const filtering of values.
2014-10-28 00:57:44 +01:00
Mike Bosse 4a3dc51f85 more tests work, except for serialization based tests 2014-10-24 23:47:02 +02:00
dellaert e7ec6b3fa5 Fixed size 2014-10-23 12:04:16 +02:00
dellaert 49ff33602d Undid change 2014-10-23 01:44:04 +02:00
dellaert 0501750c7c Fixed accuracy and size issues in Quaternion mode 2014-10-22 22:54:25 +02:00
dellaert 48a6777935 Some refactoring 2014-10-22 16:26:40 +02:00
dellaert 0f53c8d5ec Timing of Ceres AutoDiff adaptor 2014-10-22 12:49:18 +02:00
dellaert f44e6f0187 Moved AdaptAutoDiff template in its own header file 2014-10-22 11:41:04 +02:00
dellaert 516bb4b0b1 Isolated Snavely example 2014-10-22 11:23:35 +02:00
dellaert 439f51ec7f test out invoke 2014-10-22 10:10:58 +02:00
dellaert 1eb5e185e5 New numericalDerivatives with traits an Charts - still some segfaults, *and* there should be no need for (a) multiple prototypes to match against c++ pointers, (b) the use of explicit template arguments. A task for someone... 2014-10-21 18:50:52 +02:00
dellaert 224b71d696 Created testManifold 2014-10-21 12:54:28 +02:00
dellaert 0acffe5ae9 Fixed bug in DefaultChart: keeping a reference s never a good idea. 2014-10-21 11:13:14 +02:00
dellaert 25ad9ade05 Moved AdaptAutoDiff into its own test 2014-10-21 10:42:30 +02:00
dellaert bf16446f92 Deal with traits changes 2014-10-21 01:26:17 +02:00
dellaert e0841fb3e6 No more Ceres dependecy, copied relevant Ceres files here (for now) 2014-10-20 23:53:56 +02:00
dellaert bce84ca4db Successfully created Expression from AutoDiff function! 2014-10-20 15:38:27 +02:00
dellaert bf5580d518 AdaptAutoDiff now works with RowMajor Eigen matrices 2014-10-20 14:39:28 +02:00
dellaert df5e584412 Compiles, but Jacobains not correct yet 2014-10-20 14:32:20 +02:00
dellaert a423f284e9 Canonical coordinates prototype, works for Snavely 2014-10-20 14:23:08 +02:00
dellaert 821f776118 Wrapper works to some extent 2014-10-20 09:43:32 +02:00
dellaert 7ebc8e969f Charts with default constructors 2014-10-20 09:29:45 +02:00
dellaert 63ae33088e Some success on the way to autodiff 2014-10-19 23:47:59 +02:00