Commit Graph

1516 Commits (b51e89c910d50ca6fd98fce1818bac77fac9da94)

Author SHA1 Message Date
krunalchande 147d174a66 test files deprecated, might be removed later 2015-02-18 07:47:49 -05:00
krunalchande 6d76b5910c added comments 2015-02-18 07:47:49 -05:00
krunalchande 2b1cc7bf22 Added Simple QP solver and test. Unit test doesn't work yet 2015-02-18 07:47:49 -05:00
krunalchande 3af06ef029 Added nonlinearconstraint and tests 2015-02-18 07:47:49 -05:00
krunalchande 7d2f69335d Added constructor 2015-02-18 07:47:48 -05:00
krunalchande b4c5237925 Added structure of test and class. Left with implementation. 2015-02-18 07:47:48 -05:00
Paul Drews 42d8e1fcb2 Working Sim3 Transform 2015-02-13 09:06:08 -05:00
cbeall3 5afc3c4cea again: overlooked Dim -> dimension because this factor has no unit test! 2015-01-28 16:48:12 -05:00
Paul Drews db73a0dd1d Working, with stub log/expmap and identity 2015-01-28 14:55:13 -05:00
Paul Drews 10b56a115c Working Similarity3 transform with unit tests. 2015-01-26 13:38:32 -05:00
Paul Drews c6b3535dda retract works, local coordiantes still broken 2015-01-25 01:28:16 -05:00
Paul Drews a87a3dd987 Rotation works, translation and scale incorrect 2015-01-24 22:42:48 -05:00
cbeall3 b1cea2bee7 overlooked Dim -> dimension because this factor has no unit test! 2015-01-23 14:29:25 -05:00
Paul Drews d28ef19b9a Merge remote-tracking branch 'origin/develop' into feature/Similarity
Partial update of Similarity to BAD

Conflicts:
	.gitignore
2015-01-23 08:10:21 -05:00
Paul Drews bade68fa33 Simple single prior optimization 2015-01-12 12:58:17 -05:00
Paul Drews a88b10eacc Working similarity3 transform with unit tests 2015-01-07 09:57:48 -05:00
Paul Drews 89460fe931 Unit tests still fail, but believed to be correct. 2015-01-02 09:02:43 -05:00
dellaert e119846280 Updated examples and test 2014-12-28 19:10:41 +01:00
dellaert c58f2c15dc Moved to gtsam 2014-12-28 19:09:12 +01:00
dellaert 3587ad4e2c Merge remote-tracking branch 'origin/develop' into feature/SoundSlam
Conflicts:
	examples/SFMExampleExpressions.cpp
2014-12-28 18:53:09 +01:00
dellaert 7c455efe50 Made Event into new-style manifold 2014-12-28 18:24:00 +01:00
dellaert 2ee192e950 Fix header 2014-12-28 18:23:22 +01:00
dellaert f9c353d4a5 Merge remote-tracking branch 'origin/develop' into feature/SoundSlam
Conflicts:
	.cproject
	gtsam/base/LieMatrix.h
	gtsam/base/LieVector.h
	gtsam/base/OptionalJacobian.h
	gtsam/base/tests/testOptionalJacobian.cpp
	gtsam/geometry/Cal3_S2Stereo.h
	gtsam/geometry/CalibratedCamera.h
	gtsam/geometry/PinholeCamera.h
	gtsam/geometry/Point2.h
	gtsam/geometry/Point3.h
	gtsam/geometry/Pose2.cpp
	gtsam/geometry/Pose2.h
	gtsam/geometry/Pose3.cpp
	gtsam/geometry/Pose3.h
	gtsam/geometry/Rot2.cpp
	gtsam/geometry/Rot2.h
	gtsam/geometry/Rot3.cpp
	gtsam/geometry/Rot3.h
	gtsam/geometry/Rot3M.cpp
	gtsam/geometry/Rot3Q.cpp
	gtsam/geometry/Unit3.cpp
	gtsam/geometry/tests/testRot3.cpp
	gtsam/nonlinear/AdaptAutoDiff.h
	gtsam/nonlinear/Expression-inl.h
	gtsam/nonlinear/Expression.h
	gtsam/nonlinear/tests/testExpression.cpp
	gtsam/slam/RangeFactor.h
	timing/timeAdaptAutoDiff.cpp
	timing/timeCameraExpression.cpp
2014-12-28 17:45:41 +01:00
dellaert 9b5136d35c Moved examples 2014-12-28 17:15:14 +01:00
dellaert 401ee70364 Fixed overload resoltion error in template matching by removing overloads in traits 2014-12-28 17:14:04 +01:00
dellaert c4457682bc Fixed header file 2014-12-28 17:13:20 +01:00
dellaert a454327e7b Moved include file 2014-12-28 16:44:32 +01:00
dellaert 111b9511ac Moved timing files 2014-12-28 16:40:40 +01:00
dellaert 3ebcfc5ce0 make timing compiles 2014-12-28 16:37:54 +01: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 aaf4588f20 Improved simple helicopter 2014-12-26 00:53:36 +01:00
dellaert 902e7e57e5 Fixing helicopter 2014-12-26 00:21:33 +01:00
thduynguyen 11858da42b fix testSimpleHelicopter 2014-12-25 17:25:42 -05:00
dellaert afe20d83bd Dealing with Pose3 mojo loss 2014-12-25 20:04:28 +01:00
dellaert 47ff09f6c8 Pose3 lost its mojo! But there are errors in Expmap/Logmap derivatives around identity... 2014-12-25 19:43:32 +01:00
dellaert 5c0db68152 Fixed compile error from develop 2014-12-25 18:16:47 +01:00
dellaert 78386ad144 Merge ExmapeDerivative/LogmapDerivative changes from 'origin/develop' into feature/tighteningTraits
Conflicts:
	gtsam/base/LieScalar.h
	gtsam/geometry/Point2.h
	gtsam/geometry/Point3.h
	gtsam/geometry/Rot3.h
	gtsam/geometry/Rot3M.cpp
	gtsam/geometry/Rot3Q.cpp
	gtsam/geometry/tests/testRot3.cpp
2014-12-24 13:55:15 +01:00
dellaert d9f5681dc2 Fixed warning 2014-12-24 11:34:53 +01:00
dellaert 3d15868ece Renamed internal::LieGroup -> internal::LieGroupTraits 2014-12-24 01:34:33 +01:00
dellaert ea3b4624d8 Testable concept prereqs check 2014-12-23 14:56:48 +01:00
Mike Bosse 52ec4f0784 fixed serialization tests 2014-12-23 12:35:49 +01:00
dellaert c6ae119414 Tightened what is needed for Lie, i.e., fewer versions of retract/localCoordinates 2014-12-22 23:42:52 +01:00
dellaert f5c9c24330 Corrected sillyness 2014-12-22 23:41:42 +01:00
dellaert 355b938f3a Point3 loses its mojo (superfluous Lie/Manifold stuff) 2014-12-22 17:22:45 +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
Mike Bosse a6f612844f fixed testTSAMFactors.cpp 2014-12-22 09:39:51 +01:00
dellaert 06c3696176 Fixed more problems so everything compiles now after splitting up concepts into Group/Manifold/Lie/VectorSpace. Still 25 tests that fail. 2014-12-22 02:52:31 +01:00
dellaert 99a50a2f87 Split up concepts into Group/Manifold/Lie/VectorSpace. Also fixed some implementations and put in exceptions elsewhere, rather than CONCEPT_NOT_IMPLEMENTED macro. 2014-12-22 02:50: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
Mike Bosse b7204b100d PoseRTV 2014-12-20 20:22:34 +01:00
thduynguyen b39d14872a remove lpsolve 2014-12-16 11:27:20 -05:00
Mike Bosse 07bcc18d43 fixed testTSAMFactors 2014-12-15 23:23:40 +01:00
krunalchande 44477e12f2 Fixed initialization error for active_ 2014-12-15 11:47:04 -05:00
Paul Furgale c0e4f76d94 More manifolds...more numerical differentiation...more. 2014-12-14 18:59:57 +01:00
Paul Furgale da4c44e12d More progress 2014-12-14 15:26:43 +01:00
dellaert 2225c10fc0 use ExpressionFactorGraph 2014-12-13 08:35:22 +01:00
thduynguyen 48b08bd58e more informative print for LinearInequality showing its active/inactive state 2014-12-13 01:04:46 -05:00
thduynguyen c4b574774a remove LinearConstraint. It is replaced by LinearEquality 2014-12-13 01:04:08 -05:00
krunalchande da318184ae sync with develop branch commit c1f048d 2014-12-12 18:46:54 -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
krunalchande 181bfb4f0f Added support for compiling lpsolve on linux. Windows not tested 2014-12-12 17:21:07 -05:00
thduynguyen e12add2739 Merged in develop (pull request #71). Resolve conflicts. 2014-12-12 15:34:53 -05:00
thduynguyen 593795f65b use Eigen's predefined RowVector typedef 2014-12-12 12:51:19 -05:00
thduynguyen ac6f10ea74 enforce RowVector as Jacobian for single-valued linear inequalities 2014-12-12 12:43:07 -05:00
thduynguyen a26ef7b7a2 refactor QPSolver to work with single-valued linear inequality factors. Unit tests passed. 2014-12-12 12:03:00 -05:00
thduynguyen 6d68f5ffff equality constraints are always active 2014-12-12 12:02:06 -05:00
thduynguyen 4f28eace7e LinearInequality now only supports single-valued function. Add active/activate/inactivate function to use in the qp active set method. 2014-12-12 12:01:16 -05:00
Paul Drews a7b8e60272 Unit test failure, either retraction or localCoordinates is wrong for rotation 2014-12-12 10:38:59 -05:00
Paul Drews c6e4cd5e03 Operational Sim3 with basic unit tests 2014-12-12 10:12:58 -05:00
Paul Drews 69f27b9488 Additional unit test 2014-12-12 08:43:57 -05:00
dellaert 8f27b048f1 Moved experiment to doubleExpresso project 2014-12-12 08:53:32 +01:00
dellaert 541217175c Added ExpressionFactorGraph (should go away with move of ExpressionFactor to gtsam) 2014-12-12 08:00:02 +01:00
dellaert fa7071bdd8 Comments, renaming 2014-12-12 07:45:09 +01:00
dellaert 8cc813f03e Removed misguided Factory attempt in favor of direct expressions 2014-12-12 07:31:33 +01:00
Paul Drews 8c4468185a Take a stab at localCoordinates 2014-12-11 22:54:02 -05:00
dellaert a9121fc3fc Now it's super-easy to create priors on pieces of state. 2014-12-11 13:45:15 +01:00
dellaert 31ca0d76db Added unary version 2014-12-11 13:44:47 +01:00
dellaert cedf2647d2 Use handy dandy Factor Factory 2014-12-11 13:19:37 +01:00
dellaert 29dc382c22 Fixed small bug 2014-12-11 13:19:19 +01:00
dellaert f588a3928a Added handy dandy Factor Factory 2014-12-11 13:19:08 +01:00
dellaert d37216cde3 TOAFactor header 2014-12-10 22:50:41 +01:00
dellaert bb00e375da Print for MATLAB 2014-12-10 21:44:56 +01:00
dellaert dc84b6589e Added in real experimental data gathered by Jay at KU Leuven 2014-12-10 21:12:38 +01:00
dellaert d17caa5487 Event header and test file 2014-12-10 19:14:18 +01:00
dellaert 5d6e0bc753 Optimization test succeeds, but only with 5th microphone... 2014-12-10 19:00:52 +01:00
dellaert 2dcbc72d8d Derivatives work !!! 2014-12-10 17:58:35 +01:00
dellaert 0ceb09262c Put in prototype derivatives, needs unit test 2014-12-10 16:06:34 +01:00
dellaert cca1a54544 Everything done, except derivatives !!! 2014-12-10 16:02:13 +01:00
dellaert d54c70202a TOAFactor compiles and can be put into a factor graph 2014-12-10 15:43:31 +01:00
dellaert ba1a2685bc Not-working yet, but lots of progress towards TOAFactor 2014-12-10 15:10:59 +01:00
dellaert 5ce007446d Merge remote-tracking branch 'origin/develop' into feature/SoundSlam
Conflicts:
	.cproject
2014-12-10 14:47:58 +01:00
dellaert 777aa005b4 Developing time of arrival factor with Jay at KU Leuven 2014-12-10 14:24:10 +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
thduynguyen ba903536c8 fix ACTIVE/INACTIVE constants as Frank suggested 2014-12-09 22:29:21 -05:00
thduynguyen 565eb99948 remove a TODO as it's done. 2014-12-09 22:28:39 -05:00
thduynguyen 85397223ef fix QPSolver unit tests 2014-12-09 16:27:11 -05:00
thduynguyen 9b418c98ca fix LPSolver unittest 2014-12-09 16:26:19 -05: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
thduynguyen 001794ac84 refactor QPSolver inprogress... Compiled but tests failed. 2014-12-09 06:13:57 -05:00
thduynguyen 8c4705b905 check testable concept 2014-12-09 06:13:01 -05:00
thduynguyen a4f8ead2a6 add print 2014-12-09 06:12:41 -05:00
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
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 5cfe761f27 Timing multi-threaded code 2014-10-10 17:17:20 +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 31c138d0d6 Profile Bin(Leaf,Un(Bin(Leaf,Leaf))) by default 2014-10-08 17:52:46 +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 4ac065fab4 Show explanation of timing 2014-10-08 17:27:46 +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 d7022a21c7 More samples to average 2014-10-07 20:11:19 +02:00
dellaert c4a92acde1 Avoid argument temporaries 2014-10-07 19:35:44 +02:00
dellaert 84987aa351 Deal with Rot3 changes 2014-10-07 19:35:20 +02:00
dellaert 3c1c9c6d12 Switch to pointers - nice improvement 2014-10-07 18:11:12 +02:00
dellaert 982dc29d2f Time ternary version as well 2014-10-07 18:10:53 +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 921b79f446 No more default argument 2014-10-07 01:01:16 +02:00
dellaert 0a6fe0f0a8 No more default argument 2014-10-07 00:44:40 +02:00
Luca 7a4f307342 moved biasedGPS and GaussMarkov to unstable 2014-10-06 13:11:40 -04: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 51eab1068f Time the most common SFM expression 2014-10-06 13:57:37 +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 3f017bf51f An optimized version 2014-10-03 14:35:39 +02:00
dellaert c20b588fe0 timing, is pretty bleak for Expressions 2014-10-03 14:19:23 +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