我现在已成为IDL程序员,并希望过渡到Python。我发现MPFIT的IDL版本存在于Python中。但是,我正在寻找Python(http://www.physics.wisc.edu/~craigm/idl/down/mpfitfun.pro)中的MPFITFUN版本或类似的东西。
基本上,我正在寻找一个Python函数,它采用用户定义的函数,并使用类似Levenberg-Marquardt的最小平方拟合(如MPFIT)。
谢谢,
答案 0 :(得分:1)
SciPy中内置了拟合函数,但我不知道MPFITFUN的数据存在哪些不确定因素。 我发现Sherpa是Python的一个优秀的建模和拟合软件包,它解决了不确定性并取代了MPFITFUN:http://cxc.harvard.edu/contrib/sherpa/
由于夏尔巴是由天文学家制作的,它有很多内置的天体物理模型,但你可以建立自己的功能,以适应夏尔巴的Levenberg-Marquardt,Nelder-Mead或Monte Carlo算法。我使用了pysherpa博客中的模板: http://pysherpa.blogspot.com/2010/06/user-defined-sherpa-model-types-using.html
答案 1 :(得分:1)
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/
答案 2 :(得分:0)
我偶然发现Python中也存在MPFITEXPR。这是代码的链接。您也可以通过Astrolibpy项目下载它。
链接: