Thomas Capricelli
71a3e96b49
rename NonLinear to NonLinearOptimization
2009-11-09 03:27:15 +01:00
Thomas Capricelli
09cb27c587
documentation + move "namespace eigen" to the main file, as others do.
2009-11-09 03:25:21 +01:00
Thomas Capricelli
cddc83752c
starting documentation
2009-11-09 03:07:36 +01:00
Thomas Capricelli
751a333491
merge with main repository
2009-11-08 22:27:32 +01:00
Gael Guennebaud
5dc02fe5e9
improve a bit AutoDiffVector, but it still not working
2009-11-06 11:34:58 +01:00
Mark Borgerding
ec70f8006b
added inlines to a bunch of functions
2009-10-31 00:13:22 -04:00
Mark Borgerding
4c3345364e
moved half-spectrum logic to Eigen::FFT
2009-10-30 23:38:13 -04:00
Mark Borgerding
d659fd9b14
moved real-half-spectrum reflection into Eigen::FFT
2009-10-30 20:26:30 -04:00
Mark Borgerding
a26b729cc9
moved scaling to Eigen::FFT
2009-10-30 19:50:11 -04:00
Benoit Jacob
e8dd552257
sync with mainline
2009-10-28 19:06:45 -04:00
Benoit Jacob
2840ac7e94
big huge changes, so i dont remember everything.
...
* renaming, e.g. LU ---> FullPivLU
* split tests framework: more robust, e.g. dont generate empty tests if a number is skipped
* make all remaining tests use that splitting, as needed.
* Fix 4x4 inversion (see stable branch)
* Transform::inverse() and geo_transform test : adapt to new inverse() API, it was also trying to instantiate inverse() for 3x4 matrices.
* CMakeLists: more robust regexp to parse the version number
* misc fixes in unit tests
2009-10-28 18:19:29 -04:00
Mark Borgerding
e3d08443dc
inlining,all namespace declaration moved to FFT, removed preprocessor definitions,
2009-10-21 20:53:05 -04:00
Mark Borgerding
d9b418bf12
merged eigen2_for_fft into eigen2 mainline
2009-10-20 15:18:01 -04:00
Gael Guennebaud
7b0c4102fa
* add a Make* expression type builder to allow the
...
construction of generic expressions working
for both dense and sparse matrix. A nicer solution
would be to use CwiseBinaryOp for any kind of matrix.
To this end we either need to change the overall design
so that the base class(es) depends on the kind of matrix,
or we could add a template parameter to each expression
type (e.g., int Kind = ei_traits<MatrixType>::Kind)
allowing to specialize each expression for each kind of matrix.
* Extend AutoDiffScalar to work with sparse vector expression
for the derivatives.
2009-10-16 13:22:38 +02:00
Gael Guennebaud
44ba4b1d6d
add operator+ scalar to AutoDiffScalar
2009-10-16 11:27:04 +02:00
Gael Guennebaud
1503043981
autodiff:
...
* fix namespace issue
* simplify Jacobian code
* fix issue with "Dynamic derivatives"
2009-10-15 18:43:15 +02:00
Thomas Capricelli
456f7d094d
merge with eigen-tip
2009-10-13 01:14:19 +02:00
Thomas Capricelli
7968737247
fix tests : we perform slightly worse because we do use one more function
...
evaluation in our numericaldiff than what (c)minpack did
2009-09-28 04:13:57 +02:00
Thomas Capricelli
d912034565
fdjac2 is not needed anymore
2009-09-28 03:49:23 +02:00
Thomas Capricelli
d3850641a1
remove some duplicated code LevenbergMarquardt::minimizeNumericalDiff*() by
...
using the generic Eigen NumericalDiff recently introduced.
LevenbergMarquardt::lmdif1(), which is provided as a convenience method for
people porting code from (c)minpack, is now a static function
2009-09-28 03:26:42 +02:00
Thomas Capricelli
87be19de4a
central sheme for numerical diff
2009-09-28 02:55:30 +02:00
Thomas Capricelli
206b5e3972
starting work on a Numerical differenciation module
2009-09-28 02:43:07 +02:00
Thomas Capricelli
de942a44c2
default argument for _jac in functor operator() : this way, we can use
...
AutoDiffJacobian::operator()(x,value) exactly as the original functor
2009-09-28 01:28:48 +02:00
Thomas Capricelli
bee14ee8e6
use operator() so that to be coherent with eigen AutoDiff functor
2009-09-28 00:32:31 +02:00
Thomas Capricelli
956d65ea63
define a generic functor and makes other ones inherit it
2009-09-28 00:18:14 +02:00
Thomas Capricelli
7a8ec4ba26
cleaning
2009-09-15 04:17:11 +02:00
Thomas Capricelli
6d8baa757e
fix indentation (and only that)
2009-09-14 23:47:44 +02:00
Thomas Capricelli
ab88ba6f7f
provide some default values for important results. So that we can read them
...
even before *Init() and do no get random values.
2009-09-13 23:55:08 +02:00
Thomas Capricelli
8c3f7d8e94
cleaning
2009-09-13 01:44:34 +02:00
Thomas Capricelli
8b84c3733a
functors need not be const
2009-09-11 20:50:01 +02:00
Thomas Capricelli
72746838ad
merge with tip
2009-09-10 02:37:08 +02:00
Jitse Niesen
2a6db40f10
Re-factor matrix exponential.
...
Put all routines in a class. I think this is a cleaner design.
2009-09-08 14:51:34 +01:00
Thomas Capricelli
c990938415
eigenization of fcn_chkder + bugfix
2009-08-29 02:46:19 +02:00
Thomas Capricelli
16d08b2b0f
check number of evaluation even in the case of *1(), now we have it..
2009-08-26 14:47:10 +02:00
Thomas Capricelli
458947af5e
move Parameters as a class member, simplify calling sequence. Convenience
...
methods from minpack ( "*1()" ) get their original name back : they are
only useful when porting, anyway. Still, i prefer to keep them.
2009-08-26 14:23:05 +02:00
Thomas Capricelli
c1be96967e
remove printfs, they are of no use and may prevent compilation
2009-08-26 01:09:23 +02:00
Thomas Capricelli
6de3f5f0e7
cleaning
2009-08-25 23:47:22 +02:00
Thomas Capricelli
eac9293449
split every algorithm in *Init() + while(running) { *OneStep() }
2009-08-25 23:43:33 +02:00
Thomas Capricelli
bbd44ef0ad
move more stuff into Parameters
2009-08-25 23:37:27 +02:00
Thomas Capricelli
a2abb4afb6
cleaning
2009-08-25 23:26:36 +02:00
Thomas Capricelli
baec4f39ab
reduce local variables so that we can split algorithms
2009-08-25 22:49:05 +02:00
Thomas Capricelli
be368c33bb
cleaning
2009-08-25 22:15:09 +02:00
Thomas Capricelli
470ea55834
put nfev/njev as internal variables as well
2009-08-25 22:13:08 +02:00
Thomas Capricelli
41b6ea81db
oops... fixing return values, some copy/paste was done far too quickly
2009-08-25 22:06:58 +02:00
Thomas Capricelli
3bca4bba87
if mode==2, the user is supposed to supply diag: do some basic check.
2009-08-25 22:02:19 +02:00
Thomas Capricelli
fa0183e7c7
make diag be an internal variable too
2009-08-25 21:59:10 +02:00
Thomas Capricelli
e465ea82e1
define and use struct Parameters
2009-08-25 21:50:01 +02:00
Thomas Capricelli
d13bcdc891
those are actually bools
2009-08-25 20:01:30 +02:00
Thomas Capricelli
84f2c451e5
cleaning
2009-08-25 19:57:42 +02:00
Thomas Capricelli
d38d4709bc
use an enum for status reporting
2009-08-25 19:48:53 +02:00