minpack
minpack copied to clipboard
Modernized Minpack: for solving nonlinear equations and nonlinear least squares problems
SciPy contains minpack: https://github.com/scipy/scipy/tree/main/scipy/optimize/minpack; we should develop this fortran-lang/minpack in a way so that SciPy could use it. We should add some improvements (perhaps some new minimization algorithms), and then...
Closes #36. Was not sure whether I should remove `enorm` entirely, so I put it in a separate file for now. I also haven't run any tests to analyze if...
Currently, MINPACK exports 3 API's: * the original Fortran API * the C API * the Python API There are some minimal tests for each of the API's and a...
There is a MINPACK wrapper for R called [minpack.lm](https://cran.r-project.org/package=minpack.lm). It might be interesting to check how many times it has been downloaded and how many R packages depend on it....
In the newly added Python bindings, the expected callback is of form `fcn(x, fvec) -> None` where `fvec` is an output vector, of the same size as `x`, which is...
From [Recommendations To Write (Slightly More) Readable And (Thus) Robust Code 7](https://www.netmeister.org/blog/readability-counts.html): > Exit early to avoid waterfall code. Especially for longer code blocks, this minimizes cognitive overhead. (originally a...
One of the suggestions in https://github.com/fortran-lang/minpack/issues/14#issuecomment-1132723542 was to port the MINPACK tests from SciPy to our test suite. I've tried to locate some of the relevant files: * https://github.com/scipy/scipy/blob/820fe86bf3ad8ba1c5647632b131659ed7bd447e/scipy/optimize/tests/test_nonlin.py (nice...
Currently the Python bindings can be built with setuptools or meson, the latter is preferred since we have more control with meson over the build environment. For building the Python...
The upload of the release artifacts should be automatic, except for the `minpack-2.0.0-source.tar.xz`, which can be created by `meson dist` all other artifacts are already created and available via CI.
Tracking issue for first release of the modernized minpack [v2.0.0](https://github.com/fortran-lang/minpack/milestone/1).