1、0020:20:8:水流量18001900210022002300240025002600265027002720含沙量32607585909810010210811211511657.677.897.10200018501820175015001000900118120105805026208注:以上数据主要是根据媒体公开报道的结果整理而成。现在,根据试验数据建立数学模型研究下面的问题:(1)给出估算任意时刻的排沙量及总排沙量的方法;(2)确定排沙量与水流量的变化关系.关键词:拟合,SAS,Matlab,线性回归,调水调沙实验问题分析:1、对于问题一,所给数据中水流量x和含沙量h的乘积即为该
2、时刻的排沙量y即:y=hx。2、对于问题二,研究排沙量与排水量的关系,从实验数据中可以看出,开始排沙量随水量增加而增加,而后随水流量的增加而减少,显然变化关系并非线性的关系,为此,把问题分为两部分,从水流量增加到最大值为第一阶段,从水流量最大值到结束为第二阶段,分别来研究水流量与排沙量之间的函数关系。模型假设:1、水流量和排沙量都是连续的,不考虑上游泄洪所带来的含沙量和外界带来的含沙量。2、时间是连续变化的,所取时间点依次为1,2,3,,24,单位时间为12h。模型的建立与求解:对于第二个问题,两个阶段的数据如表三、表四所示表三:第一阶段试验数据序号水流量x含沙量h表四:第二阶段的试验观测数据
3、对于第一阶段,有表四用MATLAB作图(如图三)可以看出其变化趋势,我们用多项式做最小二乘拟合.设三次拟合函数关系h=a0+a1x+a2x2+a3x3其中a0,a1,a2,a3,为待定系数.四次拟合函数关系h= a0+a1x+a2x2+a3x3+a4x4其中a0,a1,a2,a3,a4为待定系数.图三:第一阶段水流量与排沙量之间的关系图三次多项式拟合由MATLAB拟合函数求解出a0=a1=0,a2=0.0032,a3=-2。4929.则拟合函数h=0。0032x2-2.4929x3,拟合效果如图四所示图四:三次多项式拟合效果,红线为拟合曲线类似的四次多项式拟合由MATLAB拟合函数求解出a0=
4、a1=a2=0,a3=0.0121,a4= -7。4347则拟合函数0121x3-7。4347x4,拟合效果如图五所示图五:四次多项式拟合效果,蓝线线为拟合曲线对于第二阶段,有表五用MATLAB作图可以看出其变化趋势,我们用多项式做最小二乘拟合。其中a0,a1,a2,a3,为待定系数.其中a0,a1,a2,a3,a4为待定系数。三次多项式拟合由MATLAB拟合函数求解出a0=a1=0,a2=0.9475,a3= 464.9601。则拟合函数h=0.9475x2+464。9601x3,拟合效果如图图六所示图六:三次拟合函数拟合效果类似的四次多项式拟合由MATLAB拟合函数求解出a0=a1=0,a
5、2=-0。0013,a3= 1。1219 a4=-354。5952则拟合函数h=-0。0013x2+1.1219x3-354.5952x4,拟合效果如图七所示图七:四次拟合函数拟合效果结论以及分析检验:一用SAS软件做线性回归得到排沙量与时间的函数关系式为:再利用所求函数在区间0,24上进行积分得到总排沙量1。93962亿吨,这与现实情况基本相符.对于第一阶段三次多项式拟合由MATLAB拟合函数求解a0=a1=0,a2=0.0032,a3=-2。4929则拟合函数h=0.0032x2-2。4929x3对于第一阶段四次多项式拟合由MATLAB拟合函数求解出a0=a1=a2=0,a3=0.0121
6、,a4= -7.4347则拟合函数h=0。0121x37.4347x4对于第二阶段三次多项式拟合由MATLAB拟合函数求解出a0=a1=0,a2=-0。9475,a3= 464。9601则拟合函数h=-0。9475x2+464。9601x3对于第二阶段四次多项式拟合由MATLAB拟合函数求解出a0=a1=0,a2=0.0013,a3= 1。5952则拟合函数h=-0.0013x2+1.1219x3-354.5952x4讨论与推广:1、对于第一个问题排沙量与时间不是严格的正态函数关系可能与实际有些偏差,此外还可以用SAS软件进行高次的多向式回归2、对于第二个问题,由于MATLAB软件的计算可能有
7、些偏差导致拟合的函数关系可能与实际有稍微偏差,此外,还可以进行高次的拟合。附录:1、排沙量与时间的关系图像的MATLAB程序:t=1:1:24;y=57600,114000,157500,187000,207000,235200,250000,265200,2862000,2400,312800,307400,306800,300000,271400,231000,160000,111000,91000,54000,45500,30000,8000,4500; plot(t,y,r2、对排沙量求自然对数的MATLAB程序与结果:y3=log(y)y3 = Columns 1 through 1
8、7 10。9613 11。6440 11。9672 12.1389 12.2405 12。3682 12.4292 12。4882 12.5644 12.6195 12.6533 12。6359 12.6340 12.6115 12。5113 12.3502 11。9829 Columns 18 through 24 11.6173 11.4186 10。8967 10。7255 10。3090 8.9872 8。41183、第一阶段的排沙量与水流量之间的关系MATLAB程序:x=1800,1900,2100,2200,2300,2400,2500,2600,2650,2700,2720; h
9、=32,60,75,85,90,98,100,102,108,112,115; x1=2650,2600,2500,2300,2200,2000,1850,1820,1800,1750,1500,1000,900; h1=116,118,120,118,105,80,60,50,40,32,20,8,5; plot(x,h,r:)4、第一阶段三次多项式拟合函数以及拟合效果程序与结果: A1=polyfit(x,h,3) in polyfit at 80A1 = 0。0000 -0。0000 0。0032 2.4929 z1=polyval(A1,x);plot(x,h,k+,x,z1,5、第一
10、阶段四次多项式拟合函数以及拟合效果程序与结果:A2=polyfit(x,h,4) In polyfit at 80A2 = 0。0000 -0.0000 0。0121 7.4347 z2=polyval(A2,x); plot(x,h,,x,z2,r)6、第二阶段三次多项式拟合函数以及拟合效果程序与结果:A3=polyfit(x1,h1,3) In polyfit at 80A3 =0006 0.9475 464.9601 z3=polyval(A3,x1); plot(x,h,,x1,z3,b)7、第二阶段四次多项式拟合函数以及拟合效果程序与结果:A4=polyfit(x1,h1,4) In polyfit at 80A4 = 0.0000 0.0000 0.0013 1.1219 -354。5952 z4=polyval(A4,x1); plot(x1,h1,k,x1,z4,r:参考文献:【1】姜启源,数学模型(第三版),高等教育出版社【2】楼顺天,MATLAB程序设计语言(第二版),西安电子科技大学出版社【3】刘娜,在SAS中拟合ARCH/GARCH模型
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1