Thomas Capricelli
b09ebe01da
* porting lmdif1 to eigen
...
* qtf was missing in lmdif signature (this is an output of the method)
2009-08-20 22:59:09 +02:00
Thomas Capricelli
8d2f6ad7e1
iwa is not really an argument, but just an old fashioned 'work array' :
...
remove it from the eigen API
2009-08-20 22:46:38 +02:00
Thomas Capricelli
b423e640a6
porting hybrj1 to eigen
2009-08-20 22:41:56 +02:00
Thomas Capricelli
6027c4bedf
porting hybrd1 to eigen
2009-08-20 22:36:24 +02:00
Thomas Capricelli
de7d14b2b3
porting lmstr1 to eigen
2009-08-20 22:16:30 +02:00
Thomas Capricelli
980c40f72c
porting lmder1 to eigen (no more wrapper)
2009-08-20 22:09:05 +02:00
Thomas Capricelli
a84dc9a5c1
coherency for scalar typename : use "Scalar" everywhere
2009-08-20 21:10:28 +02:00
Thomas Capricelli
df98e66019
oops fix hardcoded typename, which is actually provided as template
...
parameter
2009-08-20 21:06:26 +02:00
Thomas Capricelli
9a876806e1
use eigen stableNorm() instead of cminpack 'enorm'. The results are mostly
...
slightly better in tests (one test needs 15 iterations intead of 16, for
the same result). Some numerical results have improved slightly, too.
If one uses blueNorm() instead, an assert for 'overflow' is raised from
blueNorm()
2009-08-20 21:04:38 +02:00
Thomas Capricelli
6953cad81d
remove unneeded "Eigen::", we already 'use' Eigen namespace
2009-08-19 20:06:34 +02:00
Thomas Capricelli
369693aa1c
oops, forgot those ones
2009-08-19 20:02:49 +02:00
Thomas Capricelli
01622e9855
use machine precision from eigen instead of the one from cminpack. The test
...
pass though they would not if using a value of 2.220e-16 (the real value
for 'double' is 2.22044604926e-16). How sensitive those tests are :)
2009-08-19 19:56:51 +02:00
Thomas Capricelli
3093e92da5
machine_epsilon is now called epsilon in latest eigen
2009-08-19 19:53:08 +02:00
Thomas Capricelli
47ac354190
merge with the main dev branch
2009-08-19 19:46:37 +02:00
Thomas Capricelli
fb54cfb013
import main files from cminpack as *.h files:
...
* function names are changed by appending _template
* it uses basic templating : template<typename T>
* wrappers now use those versions instead of the ones from cminpack
* lot of external methods from cminpack are still used
* tests pass though they are unchanged (they use wrappers)
2009-08-19 18:38:45 +02:00
Thomas Capricelli
703198a1a6
wrapper for chkder() : this was the last wrapper missing
2009-08-19 18:32:37 +02:00
Jitse Niesen
59a0c4a0d2
Add new unsupported modules to doc/unsupported_modules.dox
2009-08-18 15:30:38 +01:00
Jitse Niesen
7262716b78
Correct syntax error in doxygen comment.
2009-08-18 11:09:20 +01:00
Gael Guennebaud
ef13c3e754
add normalize and normalized overloads in AlignedVector3
2009-08-16 11:51:46 +02:00
Thomas Capricelli
3f63d6f97f
fix BoxBOD in the first case : now all tests pass
2009-08-14 19:04:09 +02:00
Thomas Capricelli
3856c2d84d
oops, i missed one : real last difficult nist test : Eckerle4
2009-08-14 18:54:28 +02:00
Thomas Capricelli
93627fefcf
last 'hard' test from Nist : ratkowsky3
2009-08-14 18:31:04 +02:00
Thomas Capricelli
91f61f7679
fix bad urls
2009-08-14 17:48:04 +02:00
Thomas Capricelli
d8c671f475
yet another (difficult) Nist test : Thurber
2009-08-14 17:46:28 +02:00
Thomas Capricelli
e057d1ef47
tweak precision for Chwirut2 test
2009-08-14 17:25:39 +02:00
Thomas Capricelli
56127cfb1a
add yet another easy Nist test : Chwirut2
2009-08-14 17:21:31 +02:00
Thomas Capricelli
f7cd4c8923
cleaning : wa1 used in 'covar' needs not be the same as in lmder* and all.
...
it's just an old-fashioned way to re-use memory without allocation...
2009-08-13 16:29:17 +02:00
Jitse Niesen
f71f878bab
Add support for matrix exponential of floats and complex numbers.
2009-08-12 15:44:22 +01:00
Thomas Capricelli
7b922eb634
BoxBOD : oops.. shame on me, i did a mistake in the derivative.... now we need 16
...
iterations instead of 7693 ;-)
the first test still fails though.
2009-08-12 02:34:22 +02:00
Thomas Capricelli
fd307b8f3f
fix a bug in BoxBOD Nist test : we now get the actual value for 'start 2'
...
'start 1' still fails though :/
2009-08-12 02:27:44 +02:00
Thomas Capricelli
3c675609bf
add another Nist test of 'hard' difficutly : Bennett5
2009-08-12 02:13:04 +02:00
Thomas Capricelli
54d09a8122
add another Nist test of 'hard' difficutly : MGH09
2009-08-12 01:50:56 +02:00
Thomas Capricelli
5ac17b4680
add another Nist test of medium difficutly : MGH17
2009-08-11 20:24:02 +02:00
Thomas Capricelli
d1bc9144cb
wrapper for lmstr1 and lmstr + eigenization of calling tests
2009-08-10 17:37:27 +02:00
Thomas Capricelli
bb1204a145
wrapper for lmdif1 + eigenization of calling test
2009-08-10 17:16:43 +02:00
Thomas Capricelli
80372c18ee
wrapper for lmdif (+test call eigenization)
2009-08-10 16:54:53 +02:00
Thomas Capricelli
4a26baa718
wrapper for hybrj1
2009-08-10 16:32:45 +02:00
Thomas Capricelli
1d53ce8d48
wrapper for hybrj
2009-08-10 16:21:22 +02:00
Thomas Capricelli
120235deef
add another (actuallY) difficult NIST test : BoxBOD.
...
The first try fails, the second one passes, but with a very bad accuracy
(~4 digits only).
anyway, my aim is to check we do not change cminpack while portint, so i
keep this test.
2009-08-10 14:11:55 +02:00
Thomas Capricelli
bcfe874968
add another 'difficult'-rated NIST test, which passes
2009-08-10 13:47:18 +02:00
Thomas Capricelli
7d65bd42eb
fix testNistHahn1 : i had swapped x[] and y[].... :/
2009-08-10 13:46:43 +02:00
Thomas Capricelli
b71aa34946
a Nist test rated 'difficult', which passes.
2009-08-10 13:05:30 +02:00
Thomas Capricelli
9b1130b82a
another nist test with difficulty 'leverage', it passes.
2009-08-10 12:49:44 +02:00
Thomas Capricelli
7ecbbc9aa4
another nist test with difficulty 'leverage', this one passes
2009-08-10 12:34:51 +02:00
Thomas Capricelli
1045bc17f5
another nist test ('average' difficulty), which fails. It is disabled until
...
further notice.
2009-08-10 12:08:31 +02:00
Thomas Capricelli
c7a72958ba
add an easy test from the NIST set :
...
http://www.itl.nist.gov/div898/strd/nls/data/misra1a.shtml
2009-08-10 10:47:55 +02:00
Thomas Capricelli
ec2b9f90a3
hybrd : wrapper + eigenize test
2009-08-10 03:39:50 +02:00
Thomas Capricelli
953c37f8e5
i wonder how useful this really is, but others do this way. Probably
...
related to doxygen.
2009-08-09 05:14:45 +02:00
Thomas Capricelli
50c192961c
eigenize lmder + some other small fixes
2009-08-09 05:07:59 +02:00
Thomas Capricelli
a6625f22d4
eigenize the test for lmder1, clean functor stuff.
...
(and check the tests still pass, of course, that's the whole point..)
2009-08-09 03:54:36 +02:00