Commit Graph

1208 Commits (72bcc4f08eefd59ee9949faabae9c34f2efe11d1)

Author SHA1 Message Date
Andrew Melim cea76a2848 More template handholding for windows 2014-12-08 21:48:59 -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 468aa5d6b6 Merge remote-tracking branch 'origin/develop' into feature/fixedSizeDerivatives 2014-12-05 22:23:12 +01:00
cbeall3 a7b61373a9 Fix include path for moved Autodiff stuff 2014-12-05 13:52:49 -05:00
dellaert f71513b3bf Compiles and test runs 2014-12-05 15:50:09 +01:00
Paul Drews 51c4a50c23 Initial broken commit of Similarity Transform 2014-12-05 09:28:10 -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
dellaert d2e53d4fe9 "Fixed" AHRS 2014-12-04 12:30:41 +01: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
Natesh Srinivasan 4e557d38e6 updated Matrix.h with commonly used matrices. 2014-12-03 09:59:10 -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 0d41523725 Use new FixedRef type 2014-11-28 01:57:55 +01:00
dellaert ee790839c6 Now only accept new FixedRef type 2014-11-28 01:57:45 +01:00
thduynguyen 3aa7fd6d18 add LinearConstraint 2014-11-27 10:45:23 -05:00
dellaert 88693e2129 Comments (ineq -> inequality) 2014-11-27 11:01:45 +01:00
dellaert 3800e1f101 initials -> initialValues 2014-11-27 10:52:25 +01:00
dellaert 4871202664 identifyLeavingConstraint 2014-11-27 10:49:35 +01:00
dellaert 9ca2ba9b66 Simplified freeHessians_ using inner class 2014-11-27 10:47:45 +01:00
thduynguyen b5e8be56f3 more informative comment 2014-11-26 18:53:45 -05:00
dellaert ba911edfad Fixed up comments 2014-11-26 22:59:33 +01:00
dellaert ad07531453 Tested TestCase, fixed wrong documentation 2014-11-26 22:40:48 +01:00
Frank Dellaert 3a2b2efdbc Merged in feature/ExpressionsToBase (pull request #51)
GTSAM 4 Roadmap: Move Expressions to nonlinear
2014-11-26 21:42:46 +01:00
thduynguyen 12ca4317a2 fix namespace 2014-11-26 15:27:28 -05:00
Andrew Melim cc4cdc93a3 Correct issue with function overload ambiguity when passing function pointer to expression constructor on windows 2014-11-26 15:06:16 -05:00
dellaert e1b453b952 Fixed warning 2014-11-26 17:32:30 +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 7aaf6a1e82 Headers and standard formatting 2014-11-26 09:04:34 +01:00
Frank Dellaert 50c93ec954 Merged in feature/fixIssue165 (pull request #48)
Safer public interface
2014-11-25 16:13:50 +01:00
dellaert dc4c0b54c0 Addressed code review by @hannessommer 2014-11-25 16:13:30 +01:00
Chris Beall 7b1a9ba371 Merged in feature/TemplatedSmartFactors (pull request #39)
Templated Smart Factors
2014-11-25 07:36:14 -05: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
dellaert 867acbef6c Fixed building wrapper. 2014-11-24 20:14:56 +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
dellaert a9090fd7af Cleanup with Jing 2014-11-24 15:53:13 +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
Richard Roberts 3ba9e8f405 Updated some usages that were missed 2014-11-23 15:24:55 -08: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 77254900f2 Updated timing scripts for comma initializer 2014-11-22 18:07:27 -08: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
dellaert 620fb4566f Fixed matlab wrappers 2014-11-22 18:22:55 +01:00
dellaert a9e3545a29 Merge remote-tracking branch 'origin/release/3.2.0' into feature/quadratic_programming
This should make merging in develop easier, and it also helps me understand what changed.
I mostly avoided conflicts by keeping Duy's versions of:

Conflicts:
	gtsam/3rdparty/metis-5.1.0/CMakeLists.txt
	gtsam/linear/JacobianFactor-inl.h
	gtsam/linear/NoiseModel.cpp
	gtsam/nonlinear/NonlinearFactor.h

and a number of other files. In particular, I did not upgrade Eigen or remove metis.

The following unit tests fail in this branch:

The following tests FAILED:
	  2 - testWrap (Failed)
	 85 - testGeneralSFMFactor (SEGFAULT)
	142 - testIMUSystem (Failed)
	178 - testTSAMFactors (Failed)
2014-11-22 15:18:09 +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
thduynguyen ee52ca15dd move LPSolver and QPSolver to unstable. Add script to compile lpsolve on Mac when doing cmake if it's not found. 2014-11-21 16:04:12 -05: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 dd255eb24c Remove landmark template parameter 2014-11-19 13:07:14 -05:00
cbeall3 6529b793cc Some fixes for feedback reported in pull request #39 2014-11-19 12:51:12 -05:00
cbeall3 f3d42a8487 Move to unstable 2014-11-17 19:53:21 -05: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
cbeall3 d24b799988 Merge remote-tracking branch 'origin/develop' into feature/TemplatedSmartFactors 2014-11-14 14:35:25 -05:00
dellaert d4b868aa12 Formatting and documentation 2014-11-14 11:20:36 +01:00
Zhaoyang Lv 87ef601b66 changes revertted to 502a745 2014-11-13 21:26:33 -05:00
Zhaoyang Lv ee3ea5bfad reverse to previous MKL_BLAS defined order 2014-11-13 21:14:07 -05:00
Zhaoyang Lv c4f3a48bc9 Revert "Fixed remaining compile issues in "make timing""
This reverts commit 502a7459f9.
2014-11-13 21:07:27 -05:00
dellaert 502a7459f9 Fixed remaining compile issues in "make timing" 2014-11-14 02:30:10 +01:00
dellaert c2c1de1761 Fix compile errors in issue #147 2014-11-14 02:19:48 +01:00
dellaert 865b0c0129 Fixed compile issue in Debug mode 2014-11-14 02:13:11 +01:00
dellaert e2aef1b325 Merge remote-tracking branch 'origin/develop' into feature/BAD 2014-11-14 01:31:49 +01:00
Abhijit Kundu 1c97d1270d Changing include order so as to OpenMP flags (if used) are defined
before metis. This fixes a compilation error with testFindSeparator.cpp
2014-11-11 17:14:51 -05:00
Jing Dong 0313c46272 fix DCHECK_LT in fix/wrap 2014-11-11 12:02:53 -05:00
dellaert 265184b6c9 Avoid warning 2014-11-10 17:56:08 +01:00
dellaert e976aae38a Avoid warning and re-formatted with BORG template 2014-11-10 16:27:33 +01:00
Jing Dong 139ef0d61d fix glog macro to assert 2014-11-08 22:16:32 -05:00
Mike Bosse e4936df80a matlab wrappers compile, but need testing 2014-11-07 22:41:21 +01: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 a94835a2e4 Merge remote-tracking branch 'origin/develop' into feature/BAD
Conflicts:
	.cproject
	gtsam/geometry/Cal3DS2.cpp
	gtsam/geometry/Cal3DS2.h
	gtsam/geometry/Cal3Unified.h
	gtsam/navigation/CombinedImuFactor.h
	gtsam/navigation/ImuFactor.h
	gtsam/nonlinear/NonlinearFactor.h
	gtsam/slam/tests/testPoseRotationPrior.cpp

Modified: testGaussMarkov1stOrderFactor.cpp, testPoseRotationPrior.cpp
2014-11-04 17:04:57 +01:00
dellaert 3824fe5f90 Fixed assert_equal and warnings 2014-11-04 15:48:30 +01:00
dellaert efc2dc69fe Got rid of some concats 2014-11-04 15:44:41 +01:00
dellaert 4afe132b1a Fixed dimensions of Vectors 2014-11-04 15:41:14 +01:00
dellaert da3677e704 No more LieVector/LieScalar 2014-11-03 13:52:08 +01:00
dellaert f1dd554a9d No more LieVector (too much copy/paste here) 2014-11-03 13:38:25 +01:00
dellaert 2a745b6c26 No more LieVector/LieScalar 2014-11-03 13:32:58 +01:00
dellaert 39ce31d0cc No more LieVector 2014-11-03 13:15:41 +01:00
dellaert b5327673fb Get rid of LieVector 2014-11-03 11:02:15 +01:00
dellaert 492c607f9e No more Lie types 2014-11-03 09:27:40 +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 8a6d8bfc82 Back to single 2014-11-02 14:35:32 +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
cbeall3 699153ece9 Coding convention: convert tabs to two spaces 2014-10-30 12:44:46 -04:00
gawela 2788ec7f33 removed std::type_traits which is c++11 2014-10-29 10:23:13 +01: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
cbeall3 f916531492 remove typename from non-templated class 2014-10-24 13:06:45 -04:00
Mike Bosse 1fadda83e0 removed DerivedValue<> inheritence from classes 2014-10-24 18:34:06 +02:00
Chris Beall eeb0293f27 Merged in feature/FixQuaternion (pull request #22)
Was quaternion (somewhat) broken ?
2014-10-24 09:53:50 -04:00
dellaert e7ec6b3fa5 Fixed size 2014-10-23 12:04:16 +02:00
dellaert 77e7f0437d Merge remote-tracking branch 'origin/feature/FixQuaternion' into feature/BAD
Conflicts:
	gtsam/geometry/tests/testRot3M.cpp
	gtsam/geometry/tests/testRot3Q.cpp
2014-10-23 10:03:10 +02:00
dellaert 845697555a Fixed tests for Quaternion mode but Pose3 not in EXPMAP mode 2014-10-23 09:52:35 +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 a29f09423c Merge branch 'develop' into feature/BAD
Conflicts:
	gtsam/linear/tests/testGaussianBayesNet.cpp
2014-10-22 13:56:27 +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 113b9d2e74 Got rid of unnecessary LieVector usage that broke fixed-code 2014-10-22 01:32:59 +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 fcbc1e90cf More traits 2014-10-21 18:03:28 +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 4a854f7e22 No using namespace in headers 2014-10-15 11:01:27 +02:00
dellaert 898c06ccbb New multi-threaded, realistic SFM example (1M factors, not 1M calls on same factor) 2014-10-15 11:01:02 +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