MATLAB曲线拟合 50

x=[100;1000;5000;10000;30000;60000;10000;170000];y=[6.00;5.92;4.60;3.02;0.963;0.343;0... x=[100;1000;5000;10000;30000;60000;10000;170000];
y=[6.00;5.92;4.60;3.02;0.963;0.343;0.139;0.051];
求用MATLAB进行曲线拟合并且作出曲线的代码,感谢!
展开
 我来答
lhmhz
高粉答主

2018-05-04 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7263 获赞数:16990

向TA提问 私信TA
展开全部

根据散点图的趋势,数据基本符合双重指数函数,即f(x) = a*exp(b*x) + c*exp(d*x)。该函数求解过程如下:

x=[100;1000;5000;10000;30000;60000;10000;170000];

y=[6.00;5.92;4.60;3.02;0.963;0.343;0.139;0.051];

func =@(a,x) a(1)*exp(a(2)*x) + a(3)*exp(a(4)*x);

x0=[0,0,0,0]; 

a=nlinfit(x,y,func,x0);

x1=100:100:170000;

y1=func(a,x1);

plot(x,y,'*'),hold on,plot(x1,y1)

求解结果及图形:

a=0.62667,b=-9.1745e-06,c=5.8438,d=-0.00013264

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式