如何用matlab进行二次指数拟合?拟合模型为y=exp(a(1)*x^2+a(2)*x+a(3))+a(4) 数据如下:

x=1:1:11;y=[1306137316571919218123362525.12816.92950.72959.13603.0];急!先谢!模型中x后面少了一个点,... x=1:1:11;
y=[1306 1373 1657 1919 2181 2336 2525.1 2816.9 2950.7 2959.1 3603.0];
急!先谢!
模型中x后面少了一个点,问题已经解决了!
展开
周永红_ZYH
2011-07-09 · TA获得超过2912个赞
知道大有可为答主
回答量:1455
采纳率:90%
帮助的人:692万
展开全部
x = 1:1:11;
y = [1306 1373 1657 1919 2181 2336 2525.1 2816.9 2950.7 2959.1 3603.0] ;

opts = fitoptions('Method','Nonlinear','Normalize','On');
ftype = fittype('exp(a * x.^2 + b * x + c)+d','options',opts);

[fresult,gof] = fit(x',y',ftype)

plot( x, fresult(x), x, y, '* ')
追问
程序也很给力!灰常感谢了!
追答
就选本答案为标准答案吧!  ):(

参考资料: http://hi.baidu.com/zzz700/blog/item/f313a3f5869659b5a40f52d7.html

victoriajll
2011-07-09 · TA获得超过4884个赞
知道大有可为答主
回答量:654
采纳率:100%
帮助的人:1054万
展开全部
function my11
x=1:11;
y=[1306 1373 1657 1919 2181 2336 2525.1 2816.9 2950.7 2959.1 3603.0];
plot(x,y,'o')
hold on
A=nlinfit(x,y,@fun,[0.04 0.6 -4.3 1800]);%%%方程系数矩阵
disp(A)
xx=min(x):0.1:max(x);
yy=exp(A(1)*xx.^2+A(2)*xx+A(3))+A(4);%%%方程形式
plot(xx,yy)
end
function y=fun(A,x)
y=exp(A(1)*x.^2+A(2)*x+A(3))+A(4);
end
追问
很给力,但还有点不懂,就是方程系数矩阵中的系数[0.04 0.6 -4.3 1800]是如何确定的?
灰常感谢了先!
追答
有个曲线拟合工具箱,cftool,我做拟合时就是在那里先确定系数,在编代码的,你可以用一下,那里面有好多系统函数,也可以自定义函数,你找一下自定义选项,有问题再说
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式