运用matlab进行曲线拟合,求出参数

H=a(0)+a(1)*G+a(2)*G^2+a(3)*G^3,已经知道五组数据,怎么拟合出来这个曲线,[H,G]=[17.4,15993.288],[21.98,138... H = a(0 )+ a(1)* G + a(2)*G^2 + a(3) *G^3,已经知道五组数据,怎么拟合出来这个曲线,[H,G]=[17.4,15993.288],[21.98,13851],[26.0295,11637.46656],[28.86149,9794.567412],[30.737328,8352.9348], 展开
 我来答
wxhhq0226
2013-04-22 · TA获得超过1696个赞
知道小有建树答主
回答量:496
采纳率:66%
帮助的人:482万
展开全部

m程序为:

g=[15993.288 13851 11637.46656 9794.567412 8352.9348];

h=[17.4  21.98 26.0295  28.86149 30.737328];

p=polyfit(g,h,3);

p

g2=5000:1000:20000;

h2=polyval(p,g2);

plot(g,h,'o',g2,h2);

xlabel('g');

ylabel('h')

title('H = a(0 )+ a(1)* G + a(2)*G^2 + a(3) *G^3拟合曲线')


 

运行上面m文件得到结果如下:

p =

    0.0000   -0.0000    0.0000   35.5845

 

也就是H= 35.5845*G^3

更多追问追答
追问
实在是太感谢了!!再麻烦问下:可不可以再加一个条件,就是z=1,,[H,G]=[17.4,15993.288];
z=2,[H,G]=[21.98,13851];
z=3,[H,G]=[26.0295,11637.46656];
z=4,[H,G]=[28.86149,9794.567412];
z=5,[H,G]=[30.737328,8352.9348],
谢谢了 ,必须要多给分的
追答
跟Z没关系啊。你要拟合的是二元函数。估计你的Z是指第几组数的意思吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式