Lines Matching refs:lm

76   LevenbergMarquardt<lmder_functor> lm(functor);
77 info = lm.lmder1(x);
81 VERIFY_IS_EQUAL(lm.nfev(), 6);
82 VERIFY_IS_EQUAL(lm.njev(), 5);
85 VERIFY_IS_APPROX(lm.fvec().blueNorm(), 0.09063596);
105 LevenbergMarquardt<lmder_functor> lm(functor);
106 info = lm.minimize(x);
110 VERIFY_IS_EQUAL(lm.nfev(), 6);
111 VERIFY_IS_EQUAL(lm.njev(), 5);
114 fnorm = lm.fvec().blueNorm();
124 internal::covar(lm.matrixR(), lm.permutation().indices()); // TODO : move this as a function of lm
135 cov = covfac*lm.matrixR().topLeftCorner<n,n>();
209 LevenbergMarquardt<NumericalDiff<lmdif_functor> > lm(numDiff);
210 info = lm.minimize(x);
214 // VERIFY_IS_EQUAL(lm.nfev(), 26);
217 fnorm = lm.fvec().blueNorm();
227 internal::covar(lm.matrixR(), lm.permutation().indices()); // TODO : move this as a function of lm
238 cov = covfac*lm.matrixR().topLeftCorner<n,n>();
294 LevenbergMarquardt<chwirut2_functor> lm(functor);
295 info = lm.minimize(x);
299 // VERIFY_IS_EQUAL(lm.nfev(), 10);
300 VERIFY_IS_EQUAL(lm.njev(), 8);
302 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.1304802941E+02);
313 lm.resetParameters();
314 lm.setFtol(1.E6*NumTraits<double>::epsilon());
315 lm.setXtol(1.E6*NumTraits<double>::epsilon());
316 info = lm.minimize(x);
320 // VERIFY_IS_EQUAL(lm.nfev(), 7);
321 VERIFY_IS_EQUAL(lm.njev(), 6);
323 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.1304802941E+02);
374 LevenbergMarquardt<misra1a_functor> lm(functor);
375 info = lm.minimize(x);
379 VERIFY_IS_EQUAL(lm.nfev(), 19);
380 VERIFY_IS_EQUAL(lm.njev(), 15);
382 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.2455138894E-01);
392 info = lm.minimize(x);
396 VERIFY_IS_EQUAL(lm.nfev(), 5);
397 VERIFY_IS_EQUAL(lm.njev(), 4);
399 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.2455138894E-01);
465 LevenbergMarquardt<hahn1_functor> lm(functor);
466 info = lm.minimize(x);
470 VERIFY_IS_EQUAL(lm.nfev(), 11);
471 VERIFY_IS_EQUAL(lm.njev(), 10);
473 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.5324382854E+00);
488 info = lm.minimize(x);
492 // VERIFY_IS_EQUAL(lm.nfev(), 11);
493 VERIFY_IS_EQUAL(lm.njev(), 10);
495 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.5324382854E+00);
551 LevenbergMarquardt<misra1d_functor> lm(functor);
552 info = lm.minimize(x);
556 VERIFY_IS_EQUAL(lm.nfev(), 9);
557 VERIFY_IS_EQUAL(lm.njev(), 7);
559 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.6419295283E-02);
569 info = lm.minimize(x);
573 VERIFY_IS_EQUAL(lm.nfev(), 4);
574 VERIFY_IS_EQUAL(lm.njev(), 3);
576 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.6419295283E-02);
629 LevenbergMarquardt<lanczos1_functor> lm(functor);
630 info = lm.minimize(x);
634 VERIFY_IS_EQUAL(lm.nfev(), 79);
635 VERIFY_IS_EQUAL(lm.njev(), 72);
637 VERIFY(lm.fvec().squaredNorm() <= 1.4307867721E-25);
651 info = lm.minimize(x);
655 VERIFY_IS_EQUAL(lm.nfev(), 9);
656 VERIFY_IS_EQUAL(lm.njev(), 8);
658 VERIFY(lm.fvec().squaredNorm() <= 1.4307867721E-25);
715 LevenbergMarquardt<rat42_functor> lm(functor);
716 info = lm.minimize(x);
720 VERIFY_IS_EQUAL(lm.nfev(), 10);
721 VERIFY_IS_EQUAL(lm.njev(), 8);
723 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.0565229338E+00);
734 info = lm.minimize(x);
738 VERIFY_IS_EQUAL(lm.nfev(), 6);
739 VERIFY_IS_EQUAL(lm.njev(), 5);
741 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.0565229338E+00);
793 LevenbergMarquardt<MGH10_functor> lm(functor);
794 info = lm.minimize(x);
801 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.7945855171E+01);
810 VERIFY_IS_EQUAL(lm.nfev(), 284 );
811 VERIFY_IS_EQUAL(lm.njev(), 249 );
813 VERIFY(lm.nfev() < 284 * LM_EVAL_COUNT_TOL);
814 VERIFY(lm.njev() < 249 * LM_EVAL_COUNT_TOL);
821 info = lm.minimize(x);
828 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.7945855171E+01);
836 VERIFY_IS_EQUAL(lm.nfev(), 126);
837 VERIFY_IS_EQUAL(lm.njev(), 116);
839 VERIFY(lm.nfev() < 126 * LM_EVAL_COUNT_TOL);
840 VERIFY(lm.njev() < 116 * LM_EVAL_COUNT_TOL);
886 LevenbergMarquardt<BoxBOD_functor> lm(functor);
887 lm.setFtol(1.E6*NumTraits<double>::epsilon());
888 lm.setXtol(1.E6*NumTraits<double>::epsilon());
889 lm.setFactor(10);
890 info = lm.minimize(x);
893 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.1680088766E+03);
900 VERIFY(lm.nfev() < 31); // 31
901 VERIFY(lm.njev() < 25); // 25
908 lm.resetParameters();
909 lm.setFtol(NumTraits<double>::epsilon());
910 lm.setXtol( NumTraits<double>::epsilon());
911 info = lm.minimize(x);
916 VERIFY_IS_EQUAL(lm.nfev(), 16 );
917 VERIFY_IS_EQUAL(lm.njev(), 15 );
919 VERIFY(lm.nfev() < 16 * LM_EVAL_COUNT_TOL);
920 VERIFY(lm.njev() < 15 * LM_EVAL_COUNT_TOL);
922 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.1680088766E+03);
973 LevenbergMarquardt<MGH17_functor> lm(functor);
974 lm.setFtol(NumTraits<double>::epsilon());
975 lm.setXtol(NumTraits<double>::epsilon());
976 lm.setMaxfev(1000);
977 info = lm.minimize(x);
980 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.4648946975E-05);
989 // VERIFY_IS_EQUAL(info, 2); //FIXME Use (lm.info() == Success)
990 VERIFY(lm.nfev() < 700 ); // 602
991 VERIFY(lm.njev() < 600 ); // 545
998 lm.resetParameters();
999 info = lm.minimize(x);
1003 VERIFY_IS_EQUAL(lm.nfev(), 18);
1004 VERIFY_IS_EQUAL(lm.njev(), 15);
1006 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.4648946975E-05);
1063 LevenbergMarquardt<MGH09_functor> lm(functor);
1064 lm.setMaxfev(1000);
1065 info = lm.minimize(x);
1068 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 3.0750560385E-04);
1076 VERIFY(lm.nfev() < 510 ); // 490
1077 VERIFY(lm.njev() < 400 ); // 376
1084 lm.resetParameters();
1085 info = lm.minimize(x);
1089 VERIFY_IS_EQUAL(lm.nfev(), 18);
1090 VERIFY_IS_EQUAL(lm.njev(), 16);
1092 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 3.0750560385E-04);
1149 LevenbergMarquardt<Bennett5_functor> lm(functor);
1150 lm.setMaxfev(1000);
1151 info = lm.minimize(x);
1155 VERIFY_IS_EQUAL(lm.nfev(), 758);
1156 VERIFY_IS_EQUAL(lm.njev(), 744);
1158 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.2404744073E-04);
1168 lm.resetParameters();
1169 info = lm.minimize(x);
1173 VERIFY_IS_EQUAL(lm.nfev(), 203);
1174 VERIFY_IS_EQUAL(lm.njev(), 192);
1176 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.2404744073E-04);
1236 LevenbergMarquardt<thurber_functor> lm(functor);
1237 lm.setFtol(1.E4*NumTraits<double>::epsilon());
1238 lm.setXtol(1.E4*NumTraits<double>::epsilon());
1239 info = lm.minimize(x);
1243 VERIFY_IS_EQUAL(lm.nfev(), 39);
1244 VERIFY_IS_EQUAL(lm.njev(), 36);
1246 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.6427082397E+03);
1261 lm.resetParameters();
1262 lm.setFtol(1.E4*NumTraits<double>::epsilon());
1263 lm.setXtol(1.E4*NumTraits<double>::epsilon());
1264 info = lm.minimize(x);
1268 VERIFY_IS_EQUAL(lm.nfev(), 29);
1269 VERIFY_IS_EQUAL(lm.njev(), 28);
1271 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 5.6427082397E+03);
1328 LevenbergMarquardt<rat43_functor> lm(functor);
1329 lm.setFtol(1.E6*NumTraits<double>::epsilon());
1330 lm.setXtol(1.E6*NumTraits<double>::epsilon());
1331 info = lm.minimize(x);
1335 VERIFY_IS_EQUAL(lm.nfev(), 27);
1336 VERIFY_IS_EQUAL(lm.njev(), 20);
1338 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.7864049080E+03);
1350 lm.resetParameters();
1351 lm.setFtol(1.E5*NumTraits<double>::epsilon());
1352 lm.setXtol(1.E5*NumTraits<double>::epsilon());
1353 info = lm.minimize(x);
1357 VERIFY_IS_EQUAL(lm.nfev(), 9);
1358 VERIFY_IS_EQUAL(lm.njev(), 8);
1360 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 8.7864049080E+03);
1415 LevenbergMarquardt<eckerle4_functor> lm(functor);
1416 info = lm.minimize(x);
1420 VERIFY_IS_EQUAL(lm.nfev(), 18);
1421 VERIFY_IS_EQUAL(lm.njev(), 15);
1423 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.4635887487E-03);
1434 info = lm.minimize(x);
1438 VERIFY_IS_EQUAL(lm.nfev(), 7);
1439 VERIFY_IS_EQUAL(lm.njev(), 6);
1441 VERIFY_IS_APPROX(lm.fvec().squaredNorm(), 1.4635887487E-03);