怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式

怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式,第1张

编写程序如下:

x = (0: 5);

y = rand(1,6);

p = polyfit(x,y,3)%p是多项式系数

f = polyval(p,x);

plot(x,y,'o',x,f,'-')

一、x=[175,225,25,2875,2686,2563];y=[026,032,044,057,050,046];plot(x,y,'g','markersize',25);%%%有这个是先描点,看出大致是什么图,这里看到像二次曲线的。hold on ;p3=polyfit(x,y,2)。

二、同理x=[026,032,044,057,050,046];y=[175,225,25,2875,2686,2563];plot(x,y,'g','markersize',25);hold on ;p3=polyfit(x,y,1);x2=0:05:2;y2=33237x2+10247;plot(x2,y2,'b')。

三、代码:clear all;clc;close all;x=[175,225,25,2875,2686,2563];y=[026,032,044,057,050,046];plot(x,y,'r')[p,s]=polyfit(x,y,5)  %参数改为1就是线性拟合y1=polyval(p,x)hold on;plot(x,y1,'b')五次多项式拟合生成的函数值与原数据基本重合。

在Matlab中分别输入上述三个矩阵,各题的答案如下:

1)计算C=b'-AX',若C的单元中出现负数,说明相应的食物供给不足。但实际计算得到C=[300,200,150],所以食物供给充足。

2)计算for i=1:4

D(i)=min(C/A(:,i))

end

最后算得结果分别是200,150,100,100。

3)记Y=X(1:3)=[1000,500,350],B=A(:,1:3),计算结果为min(B\b'-Y')

注意斜杠的方向哦。/和\在矩阵计算中是不同的。另外,点除“/”和除“/”也是不一样的。

以上就是关于怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式全部的内容,包括:怎样用matlab产生一组实验数据,并求这组数据的3阶拟合多项式、matlab编程应用题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10116725.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存