永发信息网

MATLAB函数拟合后推测函数值

答案:2  悬赏:20  手机版
解决时间 2021-03-08 20:10
  • 提问者网友:世勋超人
  • 2021-03-08 15:54
例如:x=1:11
p=[261900 417400 447100 444700 410500 397600 369300 430500 209800 353500 503200];这是11个月的销售额函数拟合后得出函数,求出未来一年的每月的销售
最佳答案
  • 五星知识达人网友:七十二街
  • 2021-03-08 17:17
数值拟合问题吧,先根据所给数值拟合出一条曲线,然后求函数在指定点的数值就行了
全部回答
  • 1楼网友:动情书生
  • 2021-03-08 17:48
曲线拟合的例题 1、 关于y=f(x)有一些观测数据 x=-2*pi:0.1*pi:2*pi,时 相应的函数值为 y =[ 0.0000 0.8726 1.3803 1.3876 1.0490 0.6667 0.4612 0.4365 0.4293 0.2848 -0.0000 -0.2848 -0.4293 -0.4365 -0.4612 -0.6667 -1.0490 -1.3876 -1.3803 -0.8726 0 0.8726 1.3803 1.3876 1.0490 0.6667 0.4612 0.4365 0.4293 0.2848 0.0000 -0.2848 -0.4293 -0.4365 -0.4612 -0.6667 -1.0490 -1.3876 -1.3803 -0.8726 -0.0000 ]; 2、 通过plot(x,y)绘图 x = -2*pi:0.1*pi:2*pi; y = [0.0000 0.8726 1.3803 1.3876 1.0490 0.6667 0.4612 ... 0.4365 0.4293 0.2848 -0.0000 -0.2848 -0.4293 -0.4365 ... -0.4612 -0.6667 -1.0490 -1.3876 -1.3803 -0.8726 0 ... 0.8726 1.3803 1.3876 1.0490 0.6667 0.4612 0.4365 ... 0.4293 0.2848 0.0000 -0.2848 -0.4293 -0.4365 -0.4612 ... -0.6667 -1.0490 -1.3876 -1.3803 -0.8726 -0.0000]; plot(x,y,'+') hold on plot(x,y,'g') 3、观察图形,,发现很像sin,cos那样的周期振荡函数 尝试选择拟合函数 f(x)=c1*sin(x)+c2*sin(2*x)+c3*sin(3*x) 希望选择合适的c1,c2,c3, s.t. δ=∑(f(xi)-yi)^2达到最小。 注意,这里的x,y 均是已知数构成的向量;c1,c2,c3才是待定的。 即 δ=∑(f(xi)-yi)^2=g(c1,c2,c3). 拟合问题转化为 求min{δ=g(c1,c2,c3)} 4、因为 δ=g(c1,c2,c3)是c1,c2,c3的元函数,所以可通过求偏导数 δ'c1,δ'c2,δ'c3,并令 δ'c1=0 δ'c2=0 δ'c3=0,联立解出c1,c2,c3. 5、使用matlab求解 第一步:建立m文件 function p=stu(c,x) p=c(1)*sin(x)+c(2)*sin(2*x)+c(3)*sin(3*x); 第二步:在工作区输入,c1,c2,c3的估计值,如 c=[1 1 1] 第三步:调用 p=lsqcurvefit('stu',c,x,y) 第四步:绘图检验拟合函数与观测数据的接近程度 plot(x,y,'r+',x,p(1)*sin(x)+p(2)*sin(2*x)+p(3)*sin(3*x),'g')
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯