Commit Graph

326 Commits

Author SHA1 Message Date
Thomas Capricelli
746c787a76 computes column norms outside of ei_qrfac() 2009-11-26 02:53:58 +01:00
Thomas Capricelli
9cbfdbad22 cleaning 2009-11-26 02:42:27 +01:00
Thomas Capricelli
dca80b5f22 use typedef 2009-11-25 23:08:46 +01:00
Thomas Capricelli
a6380ae272 silent warnings 2009-11-25 23:08:39 +01:00
Thomas Capricelli
06f11f3379 fix important typo 2009-11-21 02:00:47 +01:00
Benoit Jacob
b5f4636d42 * eigen2->eigen3
* bump version to 2.91.0
* add FindEigen3.cmake
2009-11-19 12:09:04 -05:00
Thomas Capricelli
a89b22f352 rename test for coherency with previous renaming of the module 2009-11-16 04:34:04 +01:00
Jitse Niesen
d07c05b3a5 Build tests for unsupported modules if EIGEN_LEAVE_TEST_IN_ALL_TARGET 2009-11-13 13:05:57 +00:00
Benoit Jacob
ff7fbc9431 * use standard CMAKE_BUILD_TYPE
* remove debug_xxx targets
* runtest.sh: don't run make
2009-11-11 16:11:33 -05:00
Thomas Capricelli
e06aa749a4 doxygen : exclude diff files 2009-11-10 22:17:23 +01:00
Thomas Capricelli
2612bbdf8b make the complex module appear in doxygen + small documentation 2009-11-10 22:02:10 +01:00
Thomas Capricelli
d47a723a6e make FFT appear in doxygen doc, and provide a mininum of documentation 2009-11-10 21:58:17 +01:00
Thomas Capricelli
2c9f46d151 fix Skyline module doxygen stuff 2009-11-10 21:47:57 +01:00
Thomas Capricelli
df117a64c7 merge with main repository 2009-11-10 21:34:43 +01:00
Thomas Capricelli
ae76c97704 documentation fixes 2009-11-10 21:33:36 +01:00
Gael Guennebaud
f647fb8dd4 fix compilation and removed some unused stuff in skyline 2009-11-10 21:22:55 +01:00
Thomas Capricelli
6a56262bf4 merge with main repository 2009-11-10 20:31:07 +01:00
Gael Guennebaud
1879403562 mv the Skyline module to unsupported/ 2009-11-10 12:47:42 +01:00
Thomas Capricelli
42b92c2022 merge with main repository 2009-11-09 19:02:52 +01:00
Benoit Jacob
92749eed11 * merge
* remove a ctor in QuaternionBase as it gives a strange error with GCC 4.4.2.
2009-11-09 09:08:03 -05:00
Thomas Capricelli
087df89e20 few doc fixes 2009-11-09 06:45:27 +01:00
Thomas Capricelli
d1cc2745f7 Reduce general diff with eigen-tip. Moreover, this test now seems to pass
again.
2009-11-09 05:12:50 +01:00
Thomas Capricelli
17f3e8571c more documentatin 2009-11-09 04:52:47 +01:00
Thomas Capricelli
de195e0e78 some more documentation 2009-11-09 04:21:45 +01:00
Thomas Capricelli
ac8f7d8c9c various fixes in headers 2009-11-09 03:32:40 +01:00
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
103f741619 initialize Eigen::Complex arrays 2009-11-09 14:08:44 -05: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
Mark Borgerding
7911df4b6e improved selftest for Eigen::Complex -- mainly a documentation of what does not work 2009-10-28 23:22:10 -04:00
Mark Borgerding
288ba155f1 forgot Complex test file 2009-10-28 23:05:18 -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
0167f5ef43 added inline to many functions 2009-10-22 23:06:19 -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
78a53574b7 merge branches 2009-10-21 10:28:56 -04:00
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
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
Thomas Capricelli
d59cc0ad82 merge files 2009-08-25 17:25:56 +02:00
Thomas Capricelli
493c72ac38 rename files 2009-08-25 17:21:16 +02:00
Thomas Capricelli
858acfcc64 remove the boring, old-school nprint option, we'll have a dedicated
method for 'one iteration' anyway.
2009-08-25 17:11:14 +02:00
Thomas Capricelli
613a464320 cleaning 2009-08-25 16:48:09 +02:00
Thomas Capricelli
6c1a9703b1 move most of results vectors/matrices inside respective classes. 2009-08-25 16:08:09 +02:00