90 double lambda0,
double tol_grad,
double tol_inc,
102 Eigen::Matrix<double, Eigen::Dynamic, 1>
run(
103 Eigen::Matrix<double, Eigen::Dynamic, 1> alpha,
104 std::vector<std::vector<double>>& y_obs,
105 std::vector<std::vector<double>>& dy_obs);
108 Eigen::SparseMatrix<double> jacobian;
109 Eigen::Matrix<double, Eigen::Dynamic, 1> residual;
110 Eigen::Matrix<double, Eigen::Dynamic, 1> delta;
111 Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> mat;
112 Eigen::Matrix<double, Eigen::Dynamic, 1> vec;
126 void update_gradient(Eigen::Matrix<double, Eigen::Dynamic, 1>& alpha,
127 std::vector<std::vector<double>>& y_obs,
128 std::vector<std::vector<double>>& dy_obs);
130 void update_delta(
bool first_step);
LevenbergMarquardtOptimizer(Model *model, int num_obs, int num_params, double lambda0, double tol_grad, double tol_inc, int max_iter)
Construct a new LevenbergMarquardtOptimizer object.
Definition LevenbergMarquardtOptimizer.cpp:7
Eigen::Matrix< double, Eigen::Dynamic, 1 > run(Eigen::Matrix< double, Eigen::Dynamic, 1 > alpha, std::vector< std::vector< double > > &y_obs, std::vector< std::vector< double > > &dy_obs)
Run the optimization algorithm.
Definition LevenbergMarquardtOptimizer.cpp:28