2884 Commits

Author SHA1 Message Date
Mark Borgerding
85f8d1f0c6 renamed 'Traits' to 'Impl', added vim modelines for syntax highlighting 2009-10-21 10:27:17 -04:00
Benoit Jacob
c3180b7ffb MatrixBase:
* support resize() to same size (nop). The case of FFT was another case where that make one's life far easier.
   hope that's ok with you Gael. but indeed, i don't use it in the ReturnByValue stuff.

FFT:
 * Support MatrixBase (well, in the case with direct memory access such as Map)
 * adapt unit test
2009-10-20 23:25:49 -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
977ed615a6 be sure that there's no name clash between NumericalDiff::df and the
original functor df()
2009-09-28 17:45:45 +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
a453298322 cleaning doc 2009-09-28 02:42:19 +02:00
Thomas Capricelli
52026eb800 cleaning 2009-09-28 02:35:42 +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
8e8997d403 use dynamic type in functor, as NonLinear only knows about this currently 2009-09-28 01:19:29 +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
251c0f45ac remove references to adolc and split tests functions for clarity 2009-09-27 23:54:06 +02:00
Benoit Jacob
92480ffd26 * Introduce make targets btest (build tests), blas (build blas lib), demos (build demos).
* remove EIGEN_BUILD_TESTS and siblings
* add summary at the end of cmake run, hopefully not too verbose
* fix build of quaternion demo
* kill remnants of old binary library option
2009-09-27 17:48:53 -04:00
Thomas Capricelli
b1637df4f4 update URL for adol-c 2009-09-27 01:56:50 +02:00
Gael Guennebaud
432fcefcb1 fix warning with gcc 4.2 2009-09-15 11:27:31 +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
Mark Borgerding
a39de276a9 added the test case for FFTW 2009-09-14 01:52:26 -04: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
Jitse Niesen
9f14d72927 Remove no-op statement in AlignedVector3. 2009-09-10 09:22:06 +01: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
e3db42611b fix warning about unused variable 2009-08-29 02:48:44 +02:00
Thomas Capricelli
c990938415 eigenization of fcn_chkder + bugfix 2009-08-29 02:46:19 +02:00
Thomas Capricelli
c1265ebbfe fix bounds using c standard instead of fortran's 2009-08-29 02:36:13 +02:00
Thomas Capricelli
4f7daf942c fix indentation for fcn_chkder 2009-08-29 02:30:18 +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