3

我成为 IDL 程序员已经有一段时间了,并希望过渡到 Python。我发现 Python 中存在 MPFIT 的 IDL 版本。但是,我正在寻找 Python 中的 MPFITFUN 版本(http://www.physics.wisc.edu/~craigm/idl/down/mpfitfun.pro)或类似的东西。

基本上,我正在寻找一个 Python 函数,它采用用户定义的函数并使用 Levenberg-Marquardt 最小二乘拟合(如 MPFIT)。

谢谢,

4

3 回答 3

2

mpfit.py 可从https://code.google.com/p/astrolibpy/获取,旧版本托管在http://cars.uchicago.edu/software/python/mpfit.html

一个不错的选择是 lmfit:https : //pypi.python.org/pypi/lmfit/、https : //github.com/lmfit/lmfit-py、http : //lmfit.github.io//lmfit-py/

于 2014-01-30T20:06:35.703 回答
2

SciPy 中内置了一些拟合函数,但我不知道有什么可以像 MPFITFUN 那样解释数据的不确定性。我发现 Sherpa 是一个出色的 Python 建模和拟合包,它解决了不确定性并取代了 MPFITFUN:http ://cxc.harvard.edu/contrib/sherpa/

由于 Sherpa 是由天文学家生产的,它有很多内置的天体物理模型,但您可以构建自己的函数以适应 Sherpa 的 Levenberg-Marquardt、Nelder-Mead 或 Monte Carlo 算法。我使用了 pysherpa 博客中的模板:http: //pysherpa.blogspot.com/2010/06/user-defined-sherpa-model-types-using.html

于 2013-03-20T18:54:34.150 回答
0

我偶然发现Python中也存在MPFITEXPR。这是代码的链接。您也可以通过 Astrolibpy 项目下载它。

关联:

https://code.google.com/p/astrolibpy/source/browse/mpfit/mpfitexpr.py?r=3545675a0662392e3e09c88beaf275c9e7881cf6

于 2013-04-25T15:40:03.213 回答