估计水塔水流量的求解模型摘要由所给的题目可知,本问题是一个关于如何计算居民用水的问题,由题目给出的表格,可知不同时刻的水位,根据所要求的不同时刻水位的不同入手,此计算问题就可以转化为插值或拟合问题。
这里主要考虑采用插值的方法,可以利用MATLAB软件进行插值和曲线拟合计算并解决一些具体的实际问题。
根据题目建立模型并采用插值的方法进行求解,推算出任何时刻(包括水泵正供水时)从水塔流出的水流量,及一天的总用水量。
关键词:用水规律与水泵的工作功率原始数据用水规律与水泵的工作功率一、问题重述1.1基本情况某居民区有一供居民用水的圆柱形水塔,一般可以通过测量其水位来估计水的流量。
面临的困难是,当水塔水位下降到设定的最低水位时,水泵自动启动向水塔供水,到设定的最高水位的时候停止供水,这段时间无法测量水塔的水位和水泵的供水量。
通常水泵每天供水一两次,每次约3h. 已知水塔是一个高为12.2m,直径为17.4m的正圆柱。
1.2 所要解决的问题现在需要了解该居民区用水规律与水泵的工作功率。
按照设计,当水塔的水位降至最低水位,约8.2米时,水泵自动启动加水;当水位升高到一个最高水位,约10.8米时,水泵停止工作。
可以考虑采用用水率(单位时间的用水量)来反映用水规律,并通过间隔一段时间测量水塔里的水位来估算用水率。
表1是某一天的测量记录数据,测量了28个时刻,但是由于其中有4个时刻遇到水泵正在向水塔供水,而无水位记录(表中用符号//表示)。
所要解决的问题就是,要估计任何时刻(包括水泵正供水时)从水塔流出的水流量,及一天的总用水量。
表1水位测量记录(符号//表示水泵启动)二、问题背景1991年的美国大学生数学建模竞赛A题(AMCM1991A),由于它是水库调度、自来水管理、公共场所的人流量估计等问题的代表,因此有许多文献对其进行了研究,但一般都是采用差分与拟合的方法。
而由于居民何时用水是无法准确的预报的,可能引起的水位的变化是随机事件,因此,可以以水容量作为随机变量,建立一个随机数学模型,不仅可以给出了水塔流量函数,同时还可以讨论水容量函数的数学期望。
现在越来越多的人开始研究居民区的用水问题,已知居民的用水是由一个圆柱形的水塔提供,要算出任何时刻(包括水泵正供水时)从水塔流出的水流量,及一天的总用水量,根据题目所给的信息和表格,需要建立合适的数学模型,推算任何时刻的用水率和水泵工作功率,从而计算出一天的总用水量。
三、 问题分析问题要求任意时刻的用水率,即求单位时间流出的水的体积,一般称为水流速度或流量。
由于水塔是一个圆柱体,体积 h D V 24π=可以很容易地通过水位高度h 计算出来,这样在水泵不工作的时间段,水流速度就可以从体积对时间的导数计算出来,由于没有水的体积关于时间的函数表达式,而只能利用问题中给定的原始数据表公式h D V 24π=,计算出离散的在测量时刻的体积V ,因此可以考虑用差商代替微商,也就是用离散代替连续的思想。
为提高计算精度,采用二阶差商,即i i v t f 2)(-∇=由于所有数据被水泵两次供水分割成三组数据对每组数据的中间数据采用中心差商,前后两个数据不能采用中心差商,改用向前差商、向后差商或用中点公式进行差商。
1.中心差商公式:)(1288121122i i i i i i i t t v v v v v -+-+-=∇+--++2.向前差商公式:)(2341122i i ii i i t t v v v v --+-=∇+++3.向后差商公式:)(23431212----+-=∇i i i i i i t t v v v v4.中心公式:)1()1()1()1(--+--+=∇i t i t i v i v v i以上分析了水泵不工作的时段,用水率的计算。
对于水泵供水时段的用水率,计算难度较大,我们只好用供水时间段前后的用水率进行插值或拟合而得到。
有了任何时刻的用水率,可以采用数值积分计算一天的总用水量。
四、 模型假设与约定为建模的需要,给出如下假设:(1)影响水从水塔中流出的流量的唯一因素是公众对水的传统要求.因为表1给出的数据没有提及任何其他的影响因素,我们假定所给数据反映了有代表性的一天,而不包括任何特殊情况,如自然灾害、火灾、水塔溢水、水塔漏水等对水的特殊要求.(2)水塔中的水位不影响水流量的大小,气候条件、温度变化等也不影响水流量.因为物理学的Torricelli 定律指出:水塔的最大水流量与水位高度的平方根成正比,题目中给出水塔的最高和最低水位分别为10.82米和8.22米,所以对于这两种高度,最大水流速的比约为 , 说明最高水位和最低水位的两个流量几乎相等.(3)水泵工作起止时间由它的水位决定,每次充水时间大约为,3个小时.水泵工作性能效率总是一定的,没有工作时需维修、使用次数多影响使用效率问题,水泵充水量远大于水塔水流量.(4)水泵工作时单位时间的供水量大致为常数,这个常数大于单位时间内从水塔中流出的水流的最大流速,这是因为居民区内一直需要用水,不允许水塔中的水用光。
(5)水塔中水流量是时间的连续光滑函数,与水泵工作与否无关。
这是因为虽然就个别用户而言可能用水量有较大的变化,但由于个人的用水量与整个居民区用水量相比是非常小的,从统计意义上来讲,不太可能同时整个社区的用水量增长或减少。
(6)水塔的水流量曲线可以用一条光滑的曲线来逼近.这时,水流量曲线的两阶导数是连续的.(7)水泵工作与否完全取决于水塔内水位的高度,且每次加水的工作时间为3小时,根据表1中的数据可知,水泵第一次供水时间段为[8.97,10.95],第二次供水时间段为 [20.84, 23.88].122 .8 82. 10五、 符号说明及名词定义符号说明t :测量的时刻, 单位为小时;h :水塔中水位的高度,是时间的函数,单位为米; v :水塔中水的体积, 是时间的函数,单位为立方米;f (t ):水塔中水流速度,即水流量,是时间的函数,单位为米/小时; yi (i =1~3):第i 时段用水量,即没有供水时间段用水量; y 12:第1和第2供水时间段用水量之和; y :一天中总用水量;p :水泵工作时充水的水流量,是时间的函数,单位为米/小时。
六、 模型建立与分析通过以上对问题的分析,现在的问题已转化为根据某一天已测量的时刻水塔中水的流速,产生在整个区间(24小时)上的函数或函数值,一般来说插值和拟合是两种最常用的方法。
(1)由体积公式:h D V 24π=可以计算各时刻所对应的水塔中水的体积如下:时刻0 0.92 1.84 2.95 3.87 4.98 5.90 7.01 7.93 8.97 体积2302 2254 2214 2171 2135 2095 2066 2026 1995 1955 时刻9.98 10.92 10.95 12.03 12.95 13.88 14.98 15.90 16.83 17.93 体积// // 2573 2497 2428 2364 2295 2238 2183 2121 时刻19.04 19.96 20.84 22.01 22.96 23.88 24.99 25.91 体积2059 2005 1955 // // 2518 2461 2421 整理成表格:表2 水塔中水的体积:时刻(小时),体积 (立方米)(2)计算水流速度并画出散点图MATLAB程序如下:% 估计水塔流量% 计算流速,并画流速散点图% 文件名:ch1.mt=[0,0.92,1.84,2.95,3.87,4.98,5.90,7.01,7.93,8.97,...10.95,12.03,12.95,13.88,14.98,15.90,16.83,17.93,...19.04,19.96,20.84,23.88,24.99,25.91]h=[9.68,9.48,9.31,9.13,8.98,8.81,8.69,8.52,8.39,...8.22,10.82,10.50,10.21,9.94,9.654,9.41,9.18,...8.92,8.66,8.43,8.22,10.59,10.35,10.18]%计算水塔中水的体积v=(pi*17.4^2/4)*h%对每组数据的中间数据计算中心差商%对每组数据不能计算中心差商的计算向前或向后差商for i=1:2f(i)=-(-v(i+2)+4*v(i+1)-3*v(i))/(2*(t(i+1)-t(i))) % 计算向前差商endfor i=3:8f(i)=-(-v(i+2)+8*v(i+1)-8*v(i-1)+v(i-2))/ (12*(t(i+1)-t(i))) % 计算中心差商endfor i=9:10f(i)=-(3*v(i)-4*v(i-1)+v(i-2))/(2*(t(i)-t(i-1))) % 计算向后差商endfor i=11:12 f(i)=-(-v(i+2)+4*v(i+1)-3*v(i))/(2*(t(i+1)-t(i))) % 计算向前差商endfor i=13:19f(i)=-(-v(i+2)+8*v(i+1)-8*v(i-1)+v(i-2))/(12*(t(i+1)-t(i))) %计算中心差商endfor i=20:21f(i)=-(3*v(i)-4*v(i-1)+v(i-2))/(2*(t(i)-t(i-1))); % 计算向后差商endi=22; f(i)=-(-v(i+2)+4*v(i+1)-3*v(i))/(2*(t(i+1)-t(i))) % 计算向前差商i=23; f(i)=-(v(i+1)-v(i-1))/((t(i+1)-t(i-1))) % 用中点方法计算差商i=24; f(i)=-(3*v(i)-4*v(i-1)+v(i-2))/(2*(t(i)-t(i-1))) % 计算向后差商d isp(‘水塔流速’)fplot(t,f,‘b*’)title(‘流速散点图’);xlabel(‘时间(小时)’);ylabel(‘流速(立方米/小时)’)执行文件ch1.m后的结果如下:t =Columns 1 through 100 0.9200 1.8400 2.9500 3.8700 4.9800 5.9000 7.01007.9300 8.9700Columns 11 through 2010.9500 12.0300 12.9500 13.8800 14.9800 15.9000 16.8300 17.930019.0400 19.9600Columns 21 through 2420.8400 23.8800 24.9900 25.9100h =Columns 1 through 109.6800 9.4800 9.3100 9.1300 8.9800 8.8100 8.6900 8.5300 8.3900 8.9200Columns 11 through 168.6600 8.4300 8.2200 10.5900 10.3500 10.1800v =1.0e+003 *Columns 1 through 102.3018 2.2542 2.2138 2.1710 2.1353 2.0949 2.0664 2.0283 1.9950 2.1211Columns 11 through 162.0592 2.0045 1.9546 2.5182 2.4611 2.4207f =55.5698f =55.5698 42.6466f =55.5698 42.6466 37.4890f =55.5698 42.6466 37.4890 42.4312f =55.5698 42.6466 37.4890 42.4312 34.6327f =55.5698 42.6466 37.4890 42.4312 34.6327 37.0465f =55.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556f =55.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621f =55.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004f =Columns 1 through 955.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004Column 10-197.7749f =Columns 1 through 955.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004Columns 10 through 11-197.7749 52.8416f =Columns 1 through 955.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004Columns 10 through 12-197.7749 52.8416 387.6964f =Columns 1 through 955.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004Columns 10 through 13-197.7749 52.8416 387.6964 -332.1776f =Columns 1 through 955.5698 42.6466 37.4890 42.4312 34.6327 37.0465 29.4556 54.0621 33.6004Columns 10 through 14-197.7749 52.8416 387.6964 -332.1776 -275.4368a)由上述实验结果可得水塔中水的流速,经整理成表格如下:表3水塔中水的流速(水流量):时刻(小时),流速 (立方米/小时)b)散点图如下所示:七、模型的进一步讨论水泵供水时段的流量只能靠供水时段前后的流量拟合得到。