当前位置 :
matlab2012,求出一组满足条件的方程如果已知x轴对应y轴的值,请求y=f(x)的方程.这样以后我得到x的值以后就可以直接利用方程求出y了,虽然会有误差,再请问怎样可以缩小误差呢?
更新时间: 2025-08-18 06:01:32
13人问答
问题描述:

matlab2012,求出一组满足条件的方程

如果已知x轴对应y轴的值,请求y=f(x)的方程.

这样以后我得到x的值以后就可以直接利用方程求出y了,虽然会有误差,再请问怎样可以缩小误差呢?

厉星星回答:
  是不是知道几组点是数据,然后求出方程来?   这是拟合问题   例子:   x=0:0.1:1;   y=[-.447,1.978,3.11,5.25,5.02,4.65,4.01,4.58,3.45,5.35,9.22];   p=polyfit(x,y,3)%3表示3次   可以画图看看效果
秦硕回答:
  为什么我直接报错呢,新建的时候选哪一个?刚才我写成x=[1234234]y=[123343434555]成功了。x、y数量不对应就报p=polyfit(x,y,n)报错!这样的格式,两者有什么差别吗?
厉星星回答:
  x,y表示点的横坐标和纵坐标,数量不等就构不成完整的点,所以会报错>>x=0:0.1:1;y=[-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22];p=polyfit(x,y,3)pp=poly2str(p,'z')%装换格式xx=0:0.01:1;yy=polyval(p,xx);%多项式求值plot(xx,yy,'-b',x,y,'.r')p=56.6915-87.117440.0070-0.9043pp=56.6915z^3-87.1174z^2+40.007z-0.90431图片上传不起,你在试试
秦硕回答:
  我还是执行错误,你把输入格式完整的再写一遍吧,新建的是脚本、函数还是类,谢了!不管行不行我也要采纳了,完事儿!
厉星星回答:
  x=0:0.1:1;y=[-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22];p=polyfit(x,y,3)%拟合pp=poly2str(p,'z')%装换格式xx=0:0.01:1;yy=polyval(p,xx);%多项式求值plot(xx,yy,'-b',x,y,'.r')直接在命令窗口或者脚本运行就可以啊你错误提示是什么
秦硕回答:
  出现p的数值和红色的错误提示全部黏贴到commandwindow提示Undefinedfunction'poly2str'forinputargumentsoftype'double'.新建函数和脚本窗口下面加上ErrorinUntitled3(line4)pp=poly2str(p,'z')%装换格式
厉星星回答:
  应该对poly2str不识别,这个问题不是很大,p的值和我的值一样吗,一样就呗
秦硕回答:
  那请你把上面你求出来的p和pp所对应的方程写一下吧
厉星星回答:
  上面有啊p=56.6915-87.117440.0070-0.9043pp=56.6915z^3-87.1174z^2+40.007z-0.90431
秦硕回答:
  写成方程式,p啊就是y=56.6915x^3-87.1174x^2+40.0070X-0.9043,我也不知道啊是这个意思?我的目的就是求y=f(x).若果对的话,顺便再说说pp
厉星星回答:
  p就是你要求的f(x),当然拟合并不一定是完全百分之百拟合,pp就是让p转换下格式,写成让人一目了然的格式
秦硕回答:
  哥,我知道不会百分之百拟合,但请你说说我刚才那么表达我对啊,其实我是门外汉啊,以后要怎么求y呢?
厉星星回答:
  对的,f(x)就是=56.6915x^3-87.1174x^2+40.0070X-0.9043,用指令polyval(p,x)调用,比如算f(1):poly(p,1)ans=8.6768
最新更新
保卡通(baokatong.com)汇总了汉语字典,新华字典,成语字典,组词,词语,在线查字典,中文字典,英汉字典,在线字典,康熙字典等等,是学生查询学习资料的好帮手,是老师教学的好助手。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
Copyright©2009-2021 保卡通 baokatong.com 版权所有