问题标签 [lmfit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-2.7 - Python lmfit 自定义模型:设置固定参数并分配前缀
我对lmfit包中的参数有 2 个问题。
1.
有没有办法为自定义模型预设参数值?
例如。
例如,在倒数第二行中,amp=2000
初始化参数amp
。如果我想在内置模型中修复这个参数(例如这个):
问题 1
是否可以在自定义模型的行或其他地方将参数的值固定amp
为 2000 ?mod.fit()
2.
我正在尝试为自定义复合模型分配前缀,如下所示:
当我尝试上述行时,我得到了:
如果有很多自定义模型,那么初始化其中的所有参数mod.make_params()
(如我在上面的 1. 中所示)可能会很乏味。该问题似乎在此处讨论(1 , 2),但它们并没有真正说明如何为复合模型的单独组件实际分配前缀。
问题2
是否可以为复合自定义模型分配前缀lmfit
?
python-2.7 - Python lmfit 在加权拟合后减少卡方太小
我正在lmfit
使用带有以下代码的一些测试数据来运行 Python 2.7。1/y
我需要权重为(使用 Leven-Marq. 例程)的加权拟合。我已经定义了权重并在这里使用它们:
输出是:
最后一行(就在此处上方,或紧接在 之前plt.plot(xd, yd, 'bo', label='raw')
)是 R^2 并且结果拟合附在此处。.
R^2 和输出的目视检查表明这是一个合理的拟合。我期待减少 1.00 阶的卡方(来源)。但是,减少的卡方值的返回值比 1.00 小几个数量级。
由于默认情况下没有权重并且lmfit
我需要加权拟合,因此我已经定义了权重,但我认为我需要以不同的方式指定它们。我怀疑这种权重规范可能导致减少的卡方变得如此之小。
是否有不同的方法来指定权重或其他一些参数,以便曲线拟合后减少的卡方接近或等于 1.00 的大小?
python - Non-linear fitting with weighted errorbars - Minimizer/scipy.curve_fit/model.fit
I am working on a Python fitting code for Michaelies-Menten, a non-linear equation, able to include weighted errorbars. At the moment I have tried using Minimizer
and model.fit
from lmfit
. Though Minimizer
does not include weighted errorbars and model.fit
seems to be less statistical than Minimizer
.
Is there a way to include weighted errorbars in Minimizer
?
Would scipy.optimize.curve_fit
be a better way to fit this code?
Or is there another fitting program that would be better?
My code is below
Hope you can help me! Cheers
python - 使用 lmfit LognormalModel 时出现 ValueError
我已经使用 lmfit 大约一天了,不用说我对图书馆知之甚少。我一直在使用几个内置模型进行曲线拟合,除了对数正态模型外,它们都可以完美地处理数据。
这是我的代码:
错误输出是:
python - 非线性磁模型拟合 - 使用 scipy.integrate.quad 和 lmfit
我想使用包括朗之万函数和对分布函数 [ 1 ]的磁模型来拟合具有超顺磁行为的磁滞曲线。为了适应这个方程,我必须求解一个定积分。我试图为此目的使用 scipy.integrate.quad 和 lmfit 的功能,但我没有得到 - 至少 - 来模拟合理的曲线(参见下面的代码)。可以用来模拟这个方程的一些实际物理参数是:Dm = 3.2E-9 m,w = 0.26,NT = 1.7E12,kB=1.38E-23 J/K 和 T=300K。使用此值进行模拟必须产生超顺磁曲线,如下面的链接中包含的那样。我将不胜感激任何使此代码工作并改进它的建议。
www.dropbox.com/pri/get/superpara.dat?_subject_uid=197016565&w=AADkHqW1w-gE9pQkG0oLoE7tNG1J-rWxN0lcIM9ioXWiLA
python - Python - 使用 lmfit 将高斯拟合到噪声数据
我正在尝试对这些数据进行高斯拟合
我已经尝试了Python gaussian fit on simulation gaussian noise data和Fitting (a gaussian) with Scipy vs. ROOT et al中给出的示例 ,但没有运气。
我正在寻找这样做,lmfit
因为它有几个优点。这个尝试是按照lmfit
文档完成的,这里是代码和情节
所以绿色是与初始参数的拟合,蓝色是最好的拟合,正如你所看到的,我得到一个从我的点和一条直线偏移的高斯。
此外,我的数据的第三行是 y 轴上的误差。在拟合数据时如何考虑错误lmfit
?
python - 使用 lmfit minimize 在 3D 点的数据集上拟合 3D 线
我正在使用 lmfit minimize 在 3D 点的数据集上拟合 3D 线。
错误是 TypeError: Improper input: N=4 must not超过 M=1。
我知道这是因为只有 1 个残差(距离)和 4 个参数,但这正是我所需要的。我想优化 4 个参数以获得最小的距离总和。