有200多个实验数据 要怎么求出一个比较精确的符合这些数据的函数式?请告诉方法步骤数据是实验数据 不会完全符合某一个函数式.所求函数应该是在第一象限单调递减的.如果要用到C++,MATLAB
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/16 20:36:03
有200多个实验数据 要怎么求出一个比较精确的符合这些数据的函数式?请告诉方法步骤数据是实验数据 不会完全符合某一个函数式.所求函数应该是在第一象限单调递减的.如果要用到C++,MATLAB
有200多个实验数据 要怎么求出一个比较精确的符合这些数据的函数式?请告诉方法步骤
数据是实验数据 不会完全符合某一个函数式.所求函数应该是在第一象限单调递减的.如果要用到C++,MATLAB之类的软件 请把方法步骤接受的详细一点 本人菜鸟- -
有200多个实验数据 要怎么求出一个比较精确的符合这些数据的函数式?请告诉方法步骤数据是实验数据 不会完全符合某一个函数式.所求函数应该是在第一象限单调递减的.如果要用到C++,MATLAB
个人之见:
(数据是实验数据 不会完全符合某一个函数式.所求函数应该是在第一象限单调递减的.)已经知道有这样的单调性,拟合结果就会精确许多.
假设实验数据200个把.以下方法是在matlab环境下:
》x=[x1 x2 x3 .x200];
y=[y1 y2 y3 .y200];
plot(x,y)
这三条语句将绘制200个数据的曲线,从中可以大体看到曲线走势.
之后:
p=polyfit(x,y,n) ps:这条语句返回所拟合公式的系数.这里的n就是说,你希望拟合的曲线是几次的,n的数值自己选择,如果曲线单调性明显,通常n取3-5应该可以.公式形式是:y=a1*x^n+a2*x^(n-1)...+b;
ok.当然如果你提前知道公式的形式,只是要确定系数,另论.
然后:
yy=polyval(p,x);
plot(x,y);
hold on
plot(x,yy,'m')
以上语句返回两条曲线,原始数据曲线(蓝色曲线)和拟合曲线(红色曲线),可以对照拟合的效果.