将Powerlaw指数拟合到数据matlab

时间:2017-05-30 18:23:00

标签: matlab curve-fitting

我有两组数据:y和x。例如

y=[5,4,2,1,3,4,...];
x=[1,2,3,4,5,6,...];

我想让它们适合函数,找到系数a,b,c,a0,b0,c0,a1,b1和c1。 我怎样才能做到这一点? 功能是:

y= a x^b exp(-x/c)

y= a0 x^b0 exp(-x/c0)+ a1 x^b1 exp(-x/c1).

1 个答案:

答案 0 :(得分:1)

foo_fit = fittype('a*x^b*exp(-x/c)',...
                  'dependent',{'y'},'independent',{'x'},...
                  'coefficients',{'a','b','c'});
res = fit(x',y',foo_fit);

您还可以在n中指定递归problem作为fittype参数(因此您无需明确说明每个系数(c0,c1,...,cn) ))但我不确定如何/如果这是可能的