diff options
author | 2009-08-25 21:59:10 +0200 | |
---|---|---|
committer | 2009-08-25 21:59:10 +0200 | |
commit | fa0183e7c7b84cf2a83b9f377bc8923e03be117d (patch) | |
tree | 64a5d9972fcaf0ce274a01aefea13a0792ce0277 /unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h | |
parent | e465ea82e16230f738114cc20a1334ad21b07e5c (diff) |
make diag be an internal variable too
Diffstat (limited to 'unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h')
-rw-r--r-- | unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h b/unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h index e6536cb89..35b6e3ee2 100644 --- a/unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h +++ b/unsupported/Eigen/src/NonLinear/LevenbergMarquardt.h @@ -43,7 +43,6 @@ public: Matrix< Scalar, Dynamic, 1 > &x, int &nfev, int &njev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode=1 ); @@ -56,7 +55,6 @@ public: Status minimizeNumericalDiff( Matrix< Scalar, Dynamic, 1 > &x, int &nfev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode=1, const Scalar epsfcn = Scalar(0.) @@ -71,7 +69,6 @@ public: Matrix< Scalar, Dynamic, 1 > &x, int &nfev, int &njev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode=1 ); @@ -80,6 +77,7 @@ public: Matrix< Scalar, Dynamic, Dynamic > fjac; VectorXi ipvt; Matrix< Scalar, Dynamic, 1 > qtf; + Matrix< Scalar, Dynamic, 1 > diag; private: const FunctorType &functor; }; @@ -94,9 +92,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimize( const int n = x.size(); const int m = functor.nbOfFunctions(); int nfev=0, njev=0; - Matrix< Scalar, Dynamic, Dynamic > fjac(m, n); - Matrix< Scalar, Dynamic, 1> diag, qtf; - VectorXi ipvt; Parameters parameters; /* check the input parameters for errors. */ @@ -112,7 +107,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimize( return minimize( x, nfev, njev, - diag, parameters, 1 ); @@ -125,7 +119,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimize( Matrix< Scalar, Dynamic, 1 > &x, int &nfev, int &njev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode ) @@ -137,7 +130,8 @@ LevenbergMarquardt<FunctorType,Scalar>::minimize( fvec.resize(m); ipvt.resize(n); fjac.resize(m, n); - diag.resize(n); + if (mode != 2) + diag.resize(n); qtf.resize(n); /* Local variables */ @@ -376,9 +370,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeNumericalDiff( const int n = x.size(); const int m = functor.nbOfFunctions(); int nfev=0; - Matrix< Scalar, Dynamic, Dynamic > fjac(m, n); - Matrix< Scalar, Dynamic, 1> diag, qtf; - VectorXi ipvt; Parameters parameters; /* check the input parameters for errors. */ @@ -394,7 +385,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeNumericalDiff( return minimizeNumericalDiff( x, nfev, - diag, parameters, 1, Scalar(0.) @@ -406,7 +396,6 @@ typename LevenbergMarquardt<FunctorType,Scalar>::Status LevenbergMarquardt<FunctorType,Scalar>::minimizeNumericalDiff( Matrix< Scalar, Dynamic, 1 > &x, int &nfev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode, const Scalar epsfcn @@ -419,7 +408,8 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeNumericalDiff( fvec.resize(m); ipvt.resize(n); fjac.resize(m, n); - diag.resize(n); + if (mode != 2 ) + diag.resize(n); qtf.resize(n); /* Local variables */ @@ -658,7 +648,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeOptimumStorage( const int m = functor.nbOfFunctions(); int nfev=0, njev=0; Matrix< Scalar, Dynamic, Dynamic > fjac(m, n); - Matrix< Scalar, Dynamic, 1> diag, qtf; VectorXi ipvt; Parameters parameters; @@ -675,7 +664,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeOptimumStorage( return minimizeOptimumStorage( x, nfev, njev, - diag, parameters, 1 ); @@ -687,7 +675,6 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeOptimumStorage( Matrix< Scalar, Dynamic, 1 > &x, int &nfev, int &njev, - Matrix< Scalar, Dynamic, 1 > &diag, const Parameters ¶meters, const int mode ) @@ -699,7 +686,8 @@ LevenbergMarquardt<FunctorType,Scalar>::minimizeOptimumStorage( fvec.resize(m); ipvt.resize(n); fjac.resize(m, n); - diag.resize(n); + if (mode != 2) + diag.resize(n); qtf.resize(n); /* Local variables */ |