Commit Graph

529 Commits (release/4.3a0)

Author SHA1 Message Date
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
dellaert 8ee16c9018 Comments for Paul 2014-10-19 11:19:09 +02:00
dellaert eac76cd0f0 Some progress on defining interface 2014-10-19 11:18:36 +02:00
dellaert 6e142184cc Implemented is_manifold and dimension for all types in testExpressionFactor 2014-10-19 00:35:25 +02:00
dellaert c32d2bb3b2 Fixed comments 2014-10-18 23:48:51 +02:00
dellaert d436d99146 Moved stuff to Manifold.h 2014-10-18 23:25:25 +02:00
dellaert fcda501ee2 double as manifold. No more LieScalar ! 2014-10-18 18:13:33 +02:00
dellaert ed6a2b6eff Charts !!!! 2014-10-18 17:11:28 +02:00
dellaert 9c97b1d8a0 Some more refactoring 2014-10-18 16:45:04 +02:00
dellaert 66b3081603 localCoordinates and retract 2014-10-18 15:02:22 +02:00
dellaert 10cfd47404 TangentVector meta-function 2014-10-18 14:29:40 +02:00
dellaert ec69949f43 Point2 specialized 2014-10-18 14:22:01 +02:00
dellaert f08dc6c031 More boost-style traits 2014-10-18 14:16:24 +02:00
dellaert 4c33444415 Snavely tested 2014-10-18 13:16:44 +02:00
dellaert bdf12b14b9 Add Snavely cost function 2014-10-18 12:35:02 +02:00
dellaert 7018afdd58 Slight refactor of numerical derivatives 2014-10-18 12:34:05 +02:00
dellaert 2972671064 Use boost::bind to avoid code duplication 2014-10-18 12:29:14 +02:00
dellaert db037c96c5 Implemented manifold_traits to allow numerical derivatives wrpt Matrix arguments 2014-10-18 12:12:25 +02:00
dellaert 2cbba15573 ceres style functor 2014-10-18 00:29:18 +02:00
dellaert 02d25f6658 New tests on traceSize 2014-10-16 15:07:05 +02:00
dellaert 0bcca2c386 Drastic reduction in allocations at ExpressionFactor construction by having dims constructed imperatively, and using it for both keys_ and dimensions_ 2014-10-16 14:16:58 +02:00
dellaert 944422e295 Only ExpressionFactor needs dimensions! Also, add dimensions at construction -> speeds up linearize. 2014-10-16 11:15:47 +02:00
dellaert 3413b98331 New storage sizes 2014-10-15 14:30:36 +02:00
dellaert 79ff0c54f9 createUnknowns 2014-10-15 10:38:54 +02:00
dellaert 649478f186 Should work but seg-faults 2014-10-15 01:19:14 +02:00
dellaert 9b1c9bbf37 Allocate temporary matrix on the stack rather tahn on heap, and give VerticalBlockMatrix a view on it. 2014-10-15 00:56:06 +02:00
dellaert c88b2a5902 Fixed bizarre link erro as well as off-by-1 bug 2014-10-15 00:34:28 +02:00
dellaert 0f055f7910 Pass matrix to VerticalBlockMatrix constructor 2014-10-15 00:28:53 +02:00
dellaert 625b939b66 Another very significant speed-up of reverseAD pipeline, by template specialization of the leaf case for fixed matrices. Unfortunately, while this sped up reverse AD for our SFM kernel by 300%, reverseAD was only 6%, and is now 2% of total time. So, time to look elsewhere.
Oh, and, it is clear that the Identity matrix for Leaf only expressions is completely known at compile time: Eigen::Matrix<double, T::dimension, T::dimension>::Identity(). That should nicely speed up many a PriorFactor (replacement).
2014-10-14 23:40:21 +02:00
dellaert baaeaacabe Made dimensions constant property. Now performance is ***blazing***, way past custom factors. 2014-10-14 17:46:57 +02:00
dellaert c971207abf Switched to vector for dimensions 2014-10-14 17:16:31 +02:00
dellaert 1c3f328fb2 Successful switch to Blocks ! 2014-10-14 15:43:41 +02:00
dellaert f3e1561105 Prepare VerticalBlockMatrix for filling 2014-10-14 11:13:49 +02:00
dellaert 4c76f39009 Now uses dimensions 2014-10-14 09:55:34 +02:00
dellaert d8d94d0c34 dimensions implemented and tested 2014-10-14 09:53:47 +02:00
dellaert 781cc6daa9 keys now from expression_ 2014-10-14 08:59:01 +02:00
dellaert 0a41b0a027 Moved meta-programming tests to testExpressionMeta.cpp 2014-10-14 08:53:16 +02:00
dellaert ef5bf03c81 Clean up 2014-10-13 23:04:30 +02:00
dellaert 70f0caf0e3 Experimenting w Fusion 2014-10-13 22:50:47 +02:00
dellaert dda91df6e1 On the way to full fusion: Optional meta-function now separate from Jacobian. 2014-10-13 18:32:58 +02:00
dellaert ba0b68110f Boost Fusion needed to access values :-( 2014-10-13 13:56:51 +02:00
dellaert a52ff52941 Try some meta-transforms 2014-10-13 13:34:00 +02:00
dellaert 1c1695353e Now we can apply ExecutionTrace and Expression as meta-functions 2014-10-13 13:04:37 +02:00
dellaert c11d7885e1 Comments 2014-10-13 11:55:16 +02:00
dellaert 74269902d7 Big collapse now realized all the way through 2014-10-13 11:37:47 +02:00
dellaert da0e5fe52f The great collapse: instead of two recursively defined classes, there is now only one. The Record class is now a (recursive) inner class. 2014-10-13 10:50:05 +02:00
dellaert bc9e11f43c Pre-big collapse: prototype recursively defined inner Record2 type 2014-10-13 10:10:46 +02:00
dellaert 7fde47c48b No more JacobianTA typedefs -> all use Jacobian<T,A> now. 2014-10-13 09:25:06 +02:00
dellaert 7848d74928 Detailed explanation of recursive class composition pattern.
Jacobian type now defined in argument.
2014-10-13 08:49:12 +02:00
dellaert 7f621af54a Fixed bug 2014-10-13 00:57:11 +02:00
dellaert 2e8d868cd2 keys have been implemented 2014-10-13 00:37:46 +02:00
dellaert a9d9fcd241 FunctionalNode inherited for all three functional ExpressionNode sub-classes 2014-10-13 00:31:03 +02:00
dellaert 8100d89094 So much better as methods 2014-10-12 23:57:08 +02:00
dellaert 55cc4ba56c Switched names of fold result and meta-function that is folded over 2014-10-12 23:31:58 +02:00
dellaert ef21a4ba4a Major re-org in preparation of recursive Functional nodes 2014-10-12 23:03:33 +02:00
dellaert 408be628d2 Small change in meta-programming, big improvement in clarity 2014-10-12 22:17:21 +02:00
dellaert 107bcd8bb4 Going forwards, we default to reverse :-) 2014-10-12 22:04:40 +02:00
dellaert 4d1eb05c7d Passing JacobianMap as an argument now.. 2014-10-12 20:16:08 +02:00
dellaert dc541f1051 made traceSize an instance variable 2014-10-12 18:52:12 +02:00
dellaert 7a5f48f6dd Fixed typo in assert 2014-10-12 12:20:12 +02:00
dellaert fea2eb0b5f Inlined VerticalBlockMatrix construction 2014-10-12 11:05:43 +02:00
dellaert ed62271f81 Dealing with constrained noise model 2014-10-12 10:52:07 +02:00
dellaert 86d3e559e6 Merge branch 'feature/BAD' into feature/BAD_linearize 2014-10-11 23:07:40 +02:00
dellaert c9f80536c0 Added a constraint model 2014-10-11 23:07:23 +02:00
dellaert 3c6f7a42e6 Merge branch 'feature/BAD' into feature/BAD_linearize: easier trace/dTdA access 2014-10-11 22:31:43 +02:00
dellaert c776e87f78 Refactoring for readability/sanity 2014-10-11 21:33:07 +02:00
dellaert 0c7ea68f2f Now overwriting linearize as preparation for direct VericalBlockMatrix 2014-10-11 17:05:53 +02:00
dellaert 1bac83381f Merge remote-tracking branch 'origin/feature/BAD_meta' into feature/BAD: Now the Record structures are recursively generated using template meta-programming, basically mpl::fold
Conflicts:
	gtsam_unstable/nonlinear/Expression-inl.h
2014-10-11 15:20:12 +02:00
dellaert 88f9a423c5 Numbered types avoid ambiguity 2014-10-11 14:19:39 +02:00
dellaert ecf6462a25 Victory!! Unit tests work! 2014-10-11 13:07:58 +02:00
dellaert 599e232d1d traceSize, two tests work 2014-10-11 12:11:22 +02:00
dellaert 9585823d5d ...but works with correct size ! 2014-10-11 11:32:52 +02:00
dellaert deed7b8018 Unary prints, but still-faults downstream 2014-10-11 11:30:06 +02:00
dellaert 05f78b6dca Re-factor, allow traceExecution 2014-10-11 11:29:42 +02:00
dellaert 1f692638f5 Accessing matrices works 2014-10-11 11:04:39 +02:00
dellaert 69b69a0bc8 placement new works! And sophisticated Trace::print 2014-10-11 11:03:35 +02:00
dellaert eef2d49e8d First prototype, segfaults 2014-10-11 10:27:30 +02:00
dellaert e09e24964a No need to have all of T as template parameter 2014-10-11 09:00:03 +02:00
dellaert 820988b04e Do casting inside Trace 2014-10-11 08:52:24 +02:00
dellaert 52fc6f2db4 Testing old trace 2014-10-11 08:41:39 +02:00
dellaert 820e9553ee TestBinaryExpression friend 2014-10-11 08:17:46 +02:00
dellaert a2d2d82e0e some namespace management 2014-10-11 07:39:13 +02:00
dellaert 23485a0e71 New and consistent naming: ExecutionTrace = whole tree, CallRecord = local information left by the function. 2014-10-10 17:45:39 +02:00
dellaert ae93dd9869 Commented out repeated arguments 2014-10-10 13:57:37 +02:00
dellaert 58bbce482d Ternary works, same caveat 2014-10-10 13:33:13 +02:00
dellaert 406467e341 Binary works, but it's ugly and does not work for repeated types 2014-10-10 13:29:56 +02:00
dellaert 24714e48c5 Works for Unary ! 2014-10-10 12:38:26 +02:00
dellaert f8468bd596 Recursion done 2014-10-10 12:31:40 +02:00
dellaert 40fc6f5c03 Working prototype 2014-10-10 12:29:01 +02:00
dellaert dd1b931802 Successfully defined Jacobian 2014-10-10 12:03:13 +02:00
dellaert 732ff54b83 More experiments 2014-10-10 11:41:01 +02:00
dellaert 8e264f4289 Attempt at defining Trace recursively 2014-10-09 14:38:16 +02:00
dellaert 5e5457b390 Renamed entry point to startReverseAD to emphasize it is only called once 2014-10-09 13:42:43 +02:00
dellaert 563c4d214c Renamed BADFactor -> ExpressionFactor 2014-10-09 13:00:56 +02:00
dellaert 7e069191e5 Slight refactor 2014-10-09 10:58:46 +02:00
dellaert a38a0ae9e1 Some comments 2014-10-09 00:21:10 +02:00
dellaert 9ebe1e6d10 Super-speedup by specializing to 2-dimensional output (for now). Using some template magic. 2014-10-08 23:50:17 +02:00
dellaert abb92632b8 Empty derived destructors are not needed 2014-10-08 17:32:46 +02:00
dellaert 6a1bc6e242 Documentation 2014-10-08 17:28:33 +02:00
dellaert ce2dcaeb3b Tagged union, lightweight 2014-10-08 15:39:59 +02:00
dellaert 390842e1f7 Put Trace in front 2014-10-08 13:58:15 +02:00
dellaert ba9faa68b6 New Leaf/noise tests 2014-10-08 13:56:54 +02:00
dellaert c4a92acde1 Avoid argument temporaries 2014-10-07 19:35:44 +02:00
dellaert 3c1c9c6d12 Switch to pointers - nice improvement 2014-10-07 18:11:12 +02:00
dellaert e4392c0a3b JacobianTrace no longer templated 2014-10-07 16:11:55 +02:00
dellaert 83d77271d9 Ternary now fixed 2014-10-07 13:04:04 +02:00
dellaert 613cb0bb12 Binary functions now take fixed Jacobians 2014-10-07 01:01:46 +02:00
dellaert e48b38ca21 Fixing uncalibrate (does not yet compile) 2014-10-06 15:45:26 +02:00
dellaert e5c3f4228a Some fixed size in UnaryExpression 2014-10-06 14:22:18 +02:00
dellaert 5c96b7f38d Made naming more suggestive of AD process rather than generic H1,H2... 2014-10-06 13:19:01 +02:00
dellaert 0ed96dda33 Avoid alloc and copy 2014-10-06 12:14:15 +02:00
dellaert c748fdb404 Re-did with move semantics. Dangerously imperative. 2014-10-06 12:13:52 +02:00
Sungtae An 69f74014aa add traceExecution in TernaryExpression 2014-10-05 17:40:11 -04:00
Sungtae An cc3c0fcfec add trace structure for reverse AD in TernaryExpression 2014-10-05 17:38:09 -04:00
Sungtae An 0421d05d44 add forward() in TernaryExpression 2014-10-05 17:36:53 -04:00
Sungtae An 0a7db2d252 Merge remote-tracking branch 'origin/feature/BAD' into feature/BAD 2014-10-05 16:16:19 -04:00
Sungtae An 40565564f5 TernaryExpression is added 2014-10-05 16:09:24 -04:00
dellaert 632810ff9a Now only inline add, for performance 2014-10-05 21:53:40 +02:00
dellaert 33c1d072a4 Add switch between inline add and JacobianMap as a new class. 2014-10-05 21:49:30 +02:00
dellaert 5b13306104 Split out starting the AD process vs. propagating it, is more efficient than starting with a useless identity matrix 2014-10-05 19:27:52 +02:00
dellaert ff9dd8eb8d Removed some obsolete code 2014-10-05 19:09:16 +02:00
dellaert caf742d5e1 Better names 2014-10-05 17:20:55 +02:00
dellaert 001504a432 JacobianTrace base, and avoid copying JacobianMaps. 2014-10-05 17:12:38 +02:00
dellaert 2718662467 Removed debug printing 2014-10-05 15:01:36 +02:00
dellaert fdf9c10b42 Implemented value and now testBADFactor also runs 2014-10-05 15:00:10 +02:00
dellaert 8db2cd17fc Finished constant Trace and *everything* just works!!! Amazing :-) 2014-10-05 13:41:20 +02:00
dellaert 7c19542245 Leaf Trace compiles 2014-10-05 13:37:51 +02:00
dellaert 75445307b2 Unary Trace done 2014-10-05 13:33:23 +02:00
dellaert 8e527a2251 Binary Trace compiles, runs 2014-10-05 13:27:41 +02:00
dellaert 303d37a716 Separate hierarchy 2014-10-05 11:22:14 +02:00
dellaert 6fb10a5de9 Rename, emphasizing is forward AD 2014-10-03 21:13:34 +02:00
dellaert a5b92f0342 MUCH simpler by just using boost::bind to turn methods into functions 2014-10-03 13:18:25 +02:00
dellaert bdf5451565 Typedefs 2014-10-03 12:52:35 +02:00
dellaert c8dd361080 Common base class BinaryExpression 2014-10-03 12:48:28 +02:00
dellaert 987b123ec9 NullaryMethodExpression and UnaryFunctionExpression, derived from UnaryExpression 2014-10-03 12:40:26 +02:00
dellaert aefad1e548 MAJOR refactor: I now use separate functions for value (only) and "augmented", for combined value-derivatives. The latter returns a new templated class, Augmented<T>. 2014-10-03 10:25:02 +02:00
dellaert da4cfe6fdc ternary test 2014-10-02 23:39:17 +02:00
dellaert 59af1c4b6d Major refactor that does not ask for derivatives when argument is constant. Also split combine into double add, added print, and moved those two statics to ExpressionNode. 2014-10-02 23:28:19 +02:00
dellaert 166396d6f6 Added tests with constant Expression 2014-10-02 23:26:59 +02:00
dellaert e7e7b3806f New test with constant argument 2014-10-02 20:28:37 +02:00
dellaert df17758469 Assume H pre-allocated as usual, and *move* Jacobians to avoid allocations 2014-10-02 13:30:16 +02:00
dellaert ebb091d390 BadFactor is now a functioning NoiseModelFactor 2014-10-02 11:01:39 +02:00
dellaert ce53346a9e Added Symbol versions 2014-10-01 13:12:07 +02:00
dellaert 0d94eeb480 Created expressions.h header 2014-10-01 11:25:49 +02:00
dellaert 254f8c5f75 Possible naming convention 2014-10-01 11:01:38 +02:00
dellaert a6c1ba19cc Concise version 2014-10-01 10:53:35 +02:00
dellaert d45250a989 Fixed dim 2014-10-01 10:45:57 +02:00
dellaert d935172ac5 Tightened 2014-10-01 10:43:03 +02:00
dellaert 8f6eae922a Tightened/cleaned up 2014-10-01 10:36:24 +02:00
Paul Furgale 837b2a6bc0 Fixed the member function with very ugly syntax 2014-09-30 23:13:07 +02:00
dellaert c68c2d2dac Prototype code for passing methods. Does not work (uncomment line 61) 2014-09-30 13:19:44 +02:00
dellaert ae17f8a82f Some refactoring, new static method "combine" 2014-09-30 13:00:37 +02:00
dellaert 374140abb8 Moved all BAD stuff to nonlinear 2014-09-30 12:34:03 +02:00
dellaert 1aa7b570f9 Added BADFactor header and created new test 2014-09-30 12:30:15 +02:00
cbeall3 0450c58d66 silence warning 2014-05-06 12:06:07 -04:00
Richard Roberts ed8b1eeaa1 Converted another loop to use insert like was fixed in the previous commit (wasn't a problem this time but am matching the style to the other file) 2014-02-24 09:29:30 -05:00
cbeall3 3e0904e250 remove unneeded/wasteful loop 2014-02-23 23:12:25 -05:00
Richard Roberts 1770f44ad9 Fixed a number of clang warnings 2014-02-23 18:53:48 -05:00
Richard Roberts 661a157553 Working on standardizing/simplifying building unit tests and examples. Much simpler cmake function to add a glob of tests, doing away with convenience libraries, and removing other options that we never change from their defaults. 2014-02-13 01:34:31 -05:00
Richard Roberts 4b8c17ec77 Changed target name to 'gtsam' instead of 'gtsam-shared' and 'gtsam-static'. Modified CMake options to only allow building either static or shared, but not both. Enabled GTSAM_BUILD_TYPE_POSTFIXES by default on all platforms. 2014-01-30 14:41:25 -05:00
Frank Dellaert d7dc390130 Particle factor scaffold 2013-12-19 17:14:40 +00:00
Richard Roberts 880d9a8e3c Switched to new Eigen built-in special comma initializer 2013-12-16 21:33:12 +00:00
Richard Roberts 5f87cbea7f New SymmetricBlockMatrix interface - should be safer as all exposed functions use symmetric matrix expressions and the internal uninitialized values below the diagonal are never exposed. 2013-11-26 23:49:53 +00:00
Richard Roberts a27f97dec4 Fix in ConcurrentFilteringAndSmoothing - one elimination call was using the default elimination function instead of the one from the parameters. 2013-11-21 15:42:17 +00:00
Richard Roberts ec78d54f37 Removed old Index typedef and IndexFormatter 2013-11-08 16:35:28 +00:00
Richard Roberts 5defdbe73f Fixed compile problems on windows 2013-11-05 16:06:10 +00:00
Frank Dellaert fccdc46180 Fixed some compile errors related to rename 2013-10-25 19:16:15 +00:00
Frank Dellaert def9b84e45 Added virtual solve method to NonlinearOptimizer that you can override, e.g., with Ceres
See example in testNonlinearOptimizer
As part of this, I also merged SuccessiveLinearizationParams into NonlinearOptimizerParams, which is now in its own separate file NonlinearOptimizerParams.h
2013-10-25 18:27:43 +00:00
Jing Dong 87f9a2ab03 Fix Vector_() to Vec() in gtsam_unstable/nonlinear 2013-10-22 04:35:21 +00:00
Chris Beall e799c9ffa9 tabs converted to two spaces 2013-10-10 17:52:57 +00:00
Richard Roberts 43d56b120a From Hmf6_unordered: getISAM2 and variables Reeliminated/Relinearized (d97dcacf186900d12003c399e7fe55e03ca34e3f) 2013-10-03 19:52:05 +00:00
Richard Roberts 0c7b2ec062 From Hmf6_unordered: Public isam2 - to be changed (10834edc1698d941be3203e8e6bea0bd4a573443) 2013-10-03 19:52:01 +00:00
Richard Roberts bf40956592 Merged from Hmf6_unordered 970392249a8c50153f24594c9c81acb740cedd06 2013-10-03 19:51:56 +00:00
Richard Roberts ae958ad0f5 Fixed testConcurrentIncrementalFilter 2013-08-19 22:07:32 +00:00
Luca Carlone 568335d21f In progress fixing filter/smoother unit tests 2013-08-19 21:33:13 +00:00
Alex Cunningham c6cf4d2dab Removed use of convenience libraries for tests - wasn't really supported in current version 2013-08-19 15:32:21 +00:00
Alex Cunningham 4b12d6f794 Moved Symbol and LabeledSymbol to inference as they are no longer specific to nonlinear optimization 2013-08-19 15:32:16 +00:00
Alex Cunningham f9dcf31c2b Fixing examples and some tests for gtsam_unstable/nonlinear. testConcurrentIncrementalFilter doesn't compile and is disabled, testIncrementalFixedLagSmoother is enabled and builds, but fails. 2013-08-19 15:32:08 +00:00
Richard Roberts ce9e9b4a91 Added "TODO: correct?" comments 2013-08-16 21:16:07 +00:00
Richard Roberts 192962d96f Fixed a couple problems in converted ConcurrentIncrementalFilter and ConcurrentIncrementalSmoother 2013-08-16 21:16:06 +00:00
Luca Carlone 3701dc6322 Changes in CFS for unordered (still work in progress) 2013-08-15 22:12:09 +00:00
Luca Carlone 6337a65ce7 Updated Incremental Smoother to unordered 2013-08-15 22:12:07 +00:00
Luca Carlone e4f65eacf8 Updating ConcurrentIncrementalSmoother/Filter to work with unordered (work in progress) 2013-08-14 19:12:24 +00:00
Luca Carlone 4dfa2506ab ConcurrentFilterAndSmoother updated and working with the unordered version of GTSAM 2013-08-13 22:30:08 +00:00
Richard Roberts d9c9682f6e Merge branch 'svn/trunk'
Conflicts:
	gtsam_unstable/slam/BetweenFactorEM.h
	gtsam_unstable/slam/tests/testBetweenFactorEM.cpp
2013-08-12 21:47:36 +00:00
Richard Roberts f1c9322d37 Removed old VerticalBlockView and SymmetricBlockView (replaced with VerticalBlockMatrix and SymmetricBlockMatrix) 2013-08-12 21:41:05 +00:00
Richard Roberts 7a027be7e5 Fixed unit tests compiling on windows 2013-08-12 16:25:13 +00:00
Richard Roberts 0db8e446d5 Disabled gtsam_unstable/nonlinear filters and smoothers 2013-08-11 18:40:39 +00:00
Richard Roberts 4585fd1caa Merge branch 'svn/trunk'
Conflicts:
	gtsam/navigation/tests/testInertialNavFactor_GlobalVelocity.cpp
	gtsam/nonlinear/ISAM2.cpp
	gtsam/nonlinear/ISAM2.h
	gtsam/slam/tests/testBetweenFactor.cpp
	gtsam_unstable/nonlinear/ConcurrentBatchFilter.cpp
	gtsam_unstable/nonlinear/tests/testConcurrentBatchFilter.cpp
	gtsam_unstable/nonlinear/tests/testConcurrentBatchSmoother.cpp
	gtsam_unstable/slam/SmartProjectionFactor.h
2013-08-11 18:16:56 +00:00
Stephen Williams f41d4b879b Added the ability to remove factors from ConcurrentIncrementalFilter 2013-08-10 17:16:47 +00:00
Stephen Williams 34a3a6ea49 Added the ability to remove factors from the ConcurrentBatchFilter 2013-08-10 17:16:38 +00:00
Stephen Williams ebc6a66c3a Updated to the marginal factor calculation in BatchFixedLagSmoother to
be more efficient
2013-08-10 17:16:31 +00:00
Stephen Williams 12d003229a Fixed missing '}' 2013-08-10 17:16:19 +00:00
Stephen Williams c33c6e2c70 Added unit tests for Concurrent Incremental Filter and Smoother 2013-08-10 17:15:48 +00:00
Stephen Williams 915dc98bd2 Updated unit tests for Concurrent Batch Filter and Smoother 2013-08-10 17:15:38 +00:00
Stephen Williams f656e93202 Created Concurrent Incremental Filter and Smoother 2013-08-10 17:15:31 +00:00
Stephen Williams 663c598591 Updated Concurrent Batch Filter and Smoother to the latest versions 2013-08-10 17:15:20 +00:00
Stephen Williams 1dc0e6192b Added accessor functions for internal data structures to
IncrementalFixedLagSmoother
2013-08-10 17:15:03 +00:00
Alex Cunningham 4a4e16485c Making more things in gtsam_unstable compile 2013-08-08 20:08:54 +00:00
Alex Cunningham 883c870dff Removed unnecessary summarization files in gtsam_unstable, restricted compilation of gtsam_unstable for components needing iSAM2 - core gtsam_unstable library builds 2013-08-08 20:08:52 +00:00
Richard Roberts e2f8dd866d Merge branch 'svn/trunk'
Conflicts:
	gtsam/linear/GaussianBayesTree.cpp
	gtsam/linear/GaussianBayesTree.h
	gtsam/linear/VectorValues.h
	gtsam/linear/tests/testVectorValues.cpp
	gtsam_unstable/nonlinear/sequentialSummarization.cpp
2013-08-06 18:33:24 +00:00