数据的峰值拟合不到怎么办?
我用matlab自带的拟合工具cftool对数据进行拟合时,发现数据的峰值拟合不到,请教各位高手这个问题如何解决?谢谢!我用的拟合函数类型(type of fit)是傅立叶函数(fourier)类型(我发现也只有这个函数类型拟合出来最接近),拟合函数是:
y=a0 + a1*cos(x*w) + b1*sin(x*w)
+a2*cos(2*x*w) + b2*sin(2*x*w)
+a3*cos(3*x*w) + b3*sin(3*x*w)
+a4*cos(4*x*w) + b4*sin(4*x*w)
+a5*cos(5*x*w) + b5*sin(5*x*w)
+a6*cos(6*x*w) + b6*sin(6*x*w)
+a7*cos(7*x*w) + b7*sin(7*x*w)
+a8*cos(8*x*w) + b8*sin(8*x*w);
拟合图为:
http://forum.vibunion.com/forum/images/linstyle_free1/attachimg.gif
得到的值为:a0 = -0.7164; a1 = 42.43;b1 =-55.18; a2 = 98.55; b2 = -33.82; a3 = 106.8; b3 = 9.419;
a4 = 91.37; b4 = 35.08; a5 = 73.57; b5 = 45.34; a6 = 59.13; b6 = 47.79; a7 = 48.3;
b7 = 46.79; a8 = 40.27; b8 =44.41;
w = 1464;
数据为:(横坐标 t, 纵坐标 x)
[ 本帖最后由 zhoutianyue 于 2008-5-31 11:34 编辑 ]
页:
[1]