【发布时间】:2015-07-08 08:59:39
【问题描述】:
我有一个数据集 (x,y),我用三个项拟合高斯 (gauss3):
[gaussianFit,gof]=fit(x,y,'gauss3');
现在,我想找到这个函数的最大值。我知道对于gauss1,最大值只是b1 参数,但是当它是多个高斯的总和时,我不知道如何找到最大值。这些术语似乎是加权的(否则,我的想法只是三个b-terms 的平均值)。我的第二个想法是用所有参数解决整个微分函数:
syms x
diff(a1.*exp(-((x-b1)./c1).^2) + a2.*exp(-((x-b2)./c2).^2) + a3.*exp(-((x-b3)./c3).^2)==0);
solve(dEqn,x)
...但这给了我一些非常奇怪的参数值,它们不是原始值。而且我觉得这只是简单的事情的繁琐解决方案。
我希望有人可以帮助我,因为我没有想法。
【问题讨论】:
标签: matlab curve-fitting gaussian data-fitting