levmar Changelog

What's new in levmar 2.6

Nov 30, 2011
  • This version adds support for diagonal scaling to xlevmar_bc_der(), which can improve convergence when the starting point is far from the true minimizer.
  • A linear systems solver supporting parallel Cholesky decomposition with PLASMA, the linear algebra library for multi-core processors.
  • Linear solvers have been fixed so that they operate on lower triangles of symmetric matrices, which results in better cache performance.
  • The CMake configuration files for building the project have been revised.
  • Several other minor changes have been made.

New in levmar 2.5 (Dec 10, 2009)

  • CAUTION FOR PREVIOUS VERSIONS USERS: For better consistency and avoidance of conflicts, the name of levmar's header file was changed from lm.h to levmar.h; please update your source files accordingly.
  • Added support for minimization under simultaneous box, linear equation and inequality constraints (see functions xlevmar_bleic_der() & xlevmar_bleic_dif()).
  • Implemented convenience wrappers to xlevmar_bleic_der() & xlevmar_bleic_dif() dealing with simpler constrained cases, e.g. xlevmar_blic_der() & xlevmar_blic_dif() support minimization under box and linear inequality constraints only.
  • Added a linear systems solver based on the UDUt decomposition (i.e., sqrt-free Cholesky).
  • Removed some unnecessary memory copying from most linear solvers.
  • Added a new data-fitting test problem (Osborne).
  • Made a few other minor changes.

New in levmar 2.4 (Apr 29, 2009)

  • CAUTION FOR PREVIOUS VERSIONS USERS: The size of the info argument (i.e., LM_INFO_SZ) was increased by one to accomodate a new return field (i.e., info[9]) that corresponds to the total number of linear systems solved during the course of the minimization. The indices of previously returned fields in the info array remain unchanged.
  • Implemented a more cache-efficient scheme for computing the approximate Hessian J^T*J and J^T*e for small-sized minimization problems.
  • Ensured that any working memory retained between invocations of the linear solvers is released upon the termination of levmar routines.
  • Ensured that linear solvers employ the minimum required amount of auxiliary memory, avoiding occasional over-allocations.
  • Implemented a loop unrolling scheme for speeding up the computation of e=x-hx.
  • Fixed a couple of issues with memory alignment on 64 bit systems.
  • Added functions for the computation of the coefficient of determination.
  • Dealt with a few minor issues.