# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
maintainers {gmail.com:tlockhart1976 @lockhart} openmaintainer
description Levenberg-Marquardt nonlinear least squares algorithm
long_description levmar is a native ANSI C implementation of the Levenberg-Marquardt \
optimization algorithm. Both unconstrained and constrained (under linear \
equations, inequality and box constraints) Levenberg-Marquardt variants are \
included. The LM algorithm is an iterative technique that finds a local \
minimum of a function that is expressed as the sum of squares of nonlinear \
functions. It has become a standard technique for nonlinear least-squares \
problems and can be thought of as a combination of steepest descent and the \
Gauss-Newton method. When the current solution is far from the correct on, \
the algorithm behaves like a steepest descent method: slow, but guaranteed \
to converge. When the current solution is close to the correct solution, it \
becomes a Gauss-Newton method.
homepage http://www.ics.forth.gr/~lourakis/levmar/
master_sites http://www.ics.forth.gr/~lourakis/levmar/
checksums rmd160 2b29daea12804050c8d3939b8c142d27d36bffc8 \
sha256 3bf4ef1ea4475ded5315e8d8fc992a725f2e7940a74ca3b0f9029d9e6e94bad7
# Patch taken from levmar RPM by Eric Smith <eric@brouhaha.com>
patchfiles patch-Makefile.so.diff
variant atlas description {Use MacPorts' ATLAS instead of Accelerate Framework} {
depends_lib-append port:atlas
if {! [variant_isset atlas]} {
set makefile ${worksrcpath}/Makefile.so
set ver_major [lindex [split ${version} "."] 0]
set ver_minor [lindex [split ${version} "."] 1]
set fl [open ${makefile}]