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