储油罐的变位识别与罐容表标定摘要
本文通过对储油罐中油位高度及变位参数之间的不同情形的储油量进行分析并建立相应的数学模型,在该过程中先利用投影法、截面法及微元法得出储油量与油位高度及变位参数的函数关系。再由Matlab编程可知各高度储油量的理论数据,最后分析误差及评价模型的合理性。
对于问题一的任一种情形,我们均建立笛卡尔坐标系,当储油罐无变位时,利用微元法得到体积关于的公式,当储油罐发生变位时,根据储油罐中油量的多少分成三种情形,就每一类利用微元法得到体积关于的公式。代人附件1实验数据中的高度得到储油罐中的理论油量。根据理论油量及实际油量得出误差,判断误差所服从的分布,再利用相对误差进行误差分析并评价模型的合理性。由上述得到储油罐发生变位时体积关于的公式我们给出了罐体变位后油位高度间隔为1cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。
对于问题二中的储油罐,我们先将问题进行简化考虑,得出了储油罐水平卧放时油量与浮油子高度的函数关系;再考虑储油量与油位高度及变位参数(纵向倾斜角度和横向偏转角度)的一般情况,在该过程中,我们进行近似处理,利用投影法和截面法得出了储油量关于油位高度及变位参数的函数关系;并在固定的横向偏转角度条件下,就纵向倾斜角度的变化进行分成三类讨论,这三类又可以分成八种情形,得到了每一种情形下实际储油罐罐内储油量与油位高度的函数关系。
在模型的改进中,我们就问题二储油量与油位高度及变位参数的一般情况进行了仔细的考虑,将含油部分的体积分成四个部分,每一个部分将上述所提到的积分方法相结合,得到了各个部分的储油量与油位高度及变位参数的函数关系,从而可得总储油量与油位高度及变位参数的函数关系;并据此利用Matlab编程和实际测量的数据求得和值;与此同时我们可以得出在固定、值时各高度下的理论储油量;根据理论油量及实际油量得出误差,判断误差所服从的分布再利用相对误差进行误差分析并评价模型的合理性。由上述得到储油罐发生变位时体积关于的公式我们给出了罐体变位后油位高度间隔为10cm的罐容表标定值。
【关键词】投影法 截面法 微元法 Matlab编程
§1 问题重述
通常加油站都有若干个储存燃油的地下储油罐,并且一般都有与之配套的“油位计量管理系统”,采用流量计和油位计来测量进/出油量与罐内油位高度等数据,通过预先标定的罐容表(即罐内油位高度与储油量的对应关系)进行实时计算,以得到罐内油位高度和储油量的变化情况。
许多储油罐在使用一段时间后,由于地基变形等原因,使罐体的位置会发生纵向倾斜和横向偏转等变化(以下称为变位),从而导致罐容表发生改变。按照有关规定,需要定期对罐容表进行重新标定。
请你们用数学建模方法研究解决储油罐的变位识别与罐容表标定的问题。
(1)为了掌握罐体变位后对罐容表的影响,利用如图4的小椭圆型储油罐(两端平头的椭圆柱体),分别对罐体无变位和倾斜角为的纵向变位两种情况做了实验,实验数据如附件1所示。请建立数学模型研究罐体变位后对罐容表的影响,并给出罐体变位后油位高度间隔为1cm的罐容表标定值。
(2)对于图1所示的实际储油罐,试建立罐体变位后标定罐容表的数学模型,即罐内储油量与油位高度及变位参数(纵向倾斜角度和横向偏转角度)之间的一般关系。请利用罐体变位后在进/出油过程中的实际检测数据(附件2),根据你们所建立的数学模型确定变位参数,并给出罐体变位后油位高度间隔为10cm的罐容表标定值。进一步利用附件2中的实际检测数据来分析检验你们模型的正确性与方法的可靠性。(以上涉及的图1~4均在附录中)
§2 模型的假设与符号的约定
§2.1 模型的假设与说明
(1)在储油罐倾斜的情况下,忽略油浮子高度为0时油所占的体积;
(2)在储油罐倾斜的情况下,假设当油浮子高度达到最大后不再进油;
(3)油的挥发速度很慢,忽略因油的挥发而造成储油量的减少;
(4)储油罐的材料为钢体,忽略因渗出油而造成储油量的减少;
(5)储油罐管理妥当,不会因特殊情况而造成储油量的变化。
§2.2符号的约定与说明
§3 问题的分析
§3.1 问题一的分析
当储油罐无变位时,储油罐圆柱体的接地一端为原点,以圆柱体高方向为轴,建立笛卡尔坐标系,利用微元法得到体积关于的公式,代人附件1实验数据中的高度得到储油罐中的理论油量。利用附件1实验数据中得到储油罐中的实际油量,根据理论油量及实际油量就可以得出误差,判断误差所服从的分布,利用相对误差进行误差分析。
当储油罐发生变位时,以储油罐圆柱体的接地一端为原点,圆柱体高方向为轴,建立笛卡尔坐标系。根据储油罐中油量的多少分成三类,然后就每一类利用微元法得到体积关于的公式,代人附件1实验数据中的高度得到储油罐中的理论油量。利用附件1实验数据中得到储油罐中的实际油量,根据理论油量及实际油量就可以得出误差,判断误差所服从的分布,利用相对误差进行误差分析。
由上述得到储油罐发生变位时体积关于的公式可以给出罐体变位后油位高度间隔为1cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。
§3.2 问题二的分析
对于实际储油罐,我们首先将问题进行简化考虑,得出了当实际储油罐水平卧放时实际储油罐中油量与浮油子高度的函数关系;
然后我们先考虑实际储油罐罐内储油量与油位高度及变位参数(纵向倾斜角度和横向偏转角度)的一般情况,在该过程中,我们进行近似处理,利用投影法和截面法得出了储油量关于油位高度及变位参数的函数关系,再在固定的横向偏转角度条件下,就纵向倾斜角度的变化进行分类讨论,一共有三种情形,得到了每一种情形下实际储油罐罐内储油量与油位高度的函数关系。
最后我们先利用附件2中的少量实际数据得出了附件2所处状态下的纵向倾斜角度和横向偏转角度,再利用附件2中给定各高度进行代人,得到实际储油罐理论的储油量,与实际储油量进行比较,求出误差及相对误差。
由上述得到储油罐发生变位时体积关于的公式可以给出罐体变位后油位高度间隔为10cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。
§4 模型的建立与求解
§4.1 问题一
§4.1.1 模型一
当储油罐体无变位时,储油罐圆柱体的接地一端为原点,以圆柱体高方向为轴,建立笛卡尔坐标系,如图4-1所示,在高度为时,利用微元法过垂直轴的方向做截面,对关于进行积分,得到体积关于的公式。
图4- 1
利用Matlab中的命令subs代人附件1实验数据中的各高度得到储油罐中的理论油量。
由附件1实验数据中进油量、出油量及储油罐罐内油量初值可以得到储油罐中的实际储油量,根据理论油量及实际油量就可以得出误差。
由附录中的程序youliang1,我们得到了理论储油量,误差及相对误差。
进油后理论储油量与实际储油量随高度的变化规律如图4-2所示:
图4- 2
出油后理论储油量与实际储油量随高度的变化规律如图4-3所示:
图4- 3
无变位进油和无变位出油的储油理论量和储油实际量及误差和相对误差的数据如表4-1所示:
表4- 1
由上述的表格可以得出相对误差稳定,不会随高度发生变化。
当储油罐体发生变位时,我们就油面及油浮子的位置与倾斜角度的变化情况分成将该问题三类,然后就每一类进行分析,找出了储油罐中油的体积与油浮子位置的函数关系,其立体图如图4-4所示:
图4- 4
(1)当油浮子的高度在时,如图4-5所示,截面图如图4-6所示
图4- 5 图4- 6截面图
截面面积为:
所以油罐体积为:
(1.1)
将代入公式(1.1)
,则公式(1.1)
(2)当油浮子的高度在,如图4-7所示,
图4- 7
截面面积为:
所以油罐装油的体积为;
将公式,
:
,则
(3)当油浮子的高度时,如图4-8所示,
图4- 8
其中,,此时截面面积为:
所以油罐装油的体积为
则上式公式变为:
利用Matlab中的命令subs代人附件1实验数据中的各高度得到储油罐中的理论油量。
由附件1实验数据中进油量、出油量及储油罐罐内油量初值可以得到储油罐中的实际油量,根据理论油量及实际油量就可以得出误差。
由附录中的程序youliang2,我们得到了理论油量,误差及相对误差。
倾斜时进油后理论储油量与实际储油量随高度的变化规律如图4-9所示:
图4- 9
倾斜时出油后理论储油量与实际储油量随高度的变化规律如图4-10所示:
图4- 10
将倾斜进油和倾斜变位出油的储油理论值和储油实际值及误差和相对误差的数据如表4-2所示:
表4- 2
由上述的程序还可以描绘出倾斜时储油量的误差随罐内油位高度的变化情况,如图4-11所示:
图4- 11
由上述图我们可以知道倾斜时不管是进油后储油量的误差还是出油后储油量的误差均随罐内油位高度的变化呈正态分布,说明该模型建立得贴合实际。
由上述得到储油罐发生变位时体积关于的公式我们可以给出罐体变位后油位高度间隔为1cm的罐容表标定值(即进/出油量与罐内油位高度的表格),如表4-3所示:
表4- 3罐体变位后油位高度间隔为1cm的罐容表标定值
§4.2 问题二
我们一开始考虑当储油罐水平放置时油量与浮油子高度的函数关系。
当储油罐水平放置无横向与纵向倾斜时,设油高为h,所建立的空间直角建立坐标系如图4-12所示:
图4- 12
储油罐中储油的体积可分为两部分,圆柱体中储存油的体积与两端的球罐体中油的体积,根据对称性,两端的球罐体中油的体积相等。用垂直于z轴 的平面截储油罐,根据截面法求体积公式可求出储油的体积。
第一种情况:
1、对于圆柱体部分:
2、,如图4-13所示:
图4- 13 图4- 14
由图4-13可看出,根据几何关系:
用平面截球罐体,设截得小圆半径为,所图4-14所示,根据几何关系得:
截面圆的油高为,
积分解得:
第二种情况:
对于圆柱体的部分同第一种情况
对于球罐体体积
截面圆的油高为
这种情况与第一种情况相同,因此与第一种情况相同。
模型的建立:
V与h的函数关系为:
我们就油所占的体积进行初步讨论,建立笛卡尔坐标系如图4-15,可以得出球冠体的球面方程为:
图4- 15
如图4-15所示,油罐体中所含油的部分分成两份,分别计算它们的体积。
因为
右半部分的体积利用投影法可以由以下约束公式算出
由上述第一个公式可以得出曲顶柱体的盖面方程为
左半部分的体积近似利用截面法可以由以下公式算出,由图4-15可以得出点的坐标为;过垂直于轴做截面,设过的截面面积为;
由图4-15可知
过的截面面积为近似可表示如下:
有上述的可以得到储油罐中油量与油位高度及变位参数的函数关系:
以下为在固定的横向偏转角度条件下,就纵向倾斜角度的变化进行分类讨论。
令
情形Ⅰ.当时,
(1)该情况的图4-16所示:
图4- 16
由图4-16可知
和式代入式,得:
由此可得:
(2)该情况如图4-17所示:
图4- 17
同上可得
(3)该情况如图4-18所示:
图4- 18
,
设实际储油罐总体积为,
情形Ⅱ.当时,
(1)该情况的图示如下:
图4- 19
(2)该情况如图4-20所示:
图4- 20
(3)该情况如图4-21所示:
图4- 21
,
情形Ⅲ.当时,
(1)该情况如图4-22所示:
图4- 22
(2)该情况如图4-23所示:
图4- 23
§5 模型的进一步讨论
就第二问我们在上述讨论一般情况分析的基础上对左半部分进行了详细的分析。
以下方程用来求:
首先我们求出截面和球冠体的交线:
§6 模型的优缺点
§6.1 优点
(1)对于问题一,从储油罐无变位与变位两个方面建立了模型,求得的储油量理论值与储油量实际值吻合得较好,相对误差小;特别是水平时相对误差稳定,符合要求,因此能准确的预测出罐体变位后油位高度间隔为1cm的罐容表标定值。
(2)对于问题二,先就一般情况考虑,再细分成8种情形,思维缜密,考虑周到。利用Matlab软件求出 值,求得各高度下的储油量理论值与储油量实际值吻合得较好,相对误差小,符合要求,因此能准确的预测出罐体变位后油位高度间隔为10cm的罐容表标定值。
(3)模型实用性好,具有很强的现实应用指导意义,数学推导严谨,理论性强。
§ 6.2缺点
模型的假设不够充分,对误差的检验不够详细,没有从多方面进行误差诊断。
§7 参考文献
[1]韩中庚.数学建模竞赛-获奖论文精选与点评[M].北京:科学出
社,2007.
[2]王文波.数学建模及其基础知识详解[M].武汉:武汉大学出版社,2006.
[3]王庚,王敏生.现代数学建模方法[M].北京:科学出版社,2006.
[4]赵静,但琦.数学建模与数学实验[M].北京:高等教育出版社,2007.
[5]姜启源,谢金星,叶俊.数学模型[M].北京:高等教育出版社,2003.
[6]冯杰,黄力伟,王勤,尹成义.数学建模原理与案例[M].北京:科学出版
社,2007.
§7 附录
§7.1 附件1
表7-1无变位进油
注: (1)罐体无变位进油,罐内油量初值262L;
(2)第三列累加进油量是每次加入一定量油后的累加值;
(3)第四列是原罐内初始油量加入相应油量后油位高度值。
表7-2无变位出油
注: (1)罐体无变位出油;
(2)第三列的累加出油量是每次抽出一定量油后的累加值;
(3)第四列是从罐内抽出相应油量后油位高度值。
表7-3倾斜变位进油
注: (1)罐体纵向倾斜变位进油,纵向倾斜角4.1°,罐内油量初值215L;
(2)第三列累加进油量是每次加入一定量油后的累加值;
(3)第四列是原罐内油量加入相应油量后油位高度值。
表7-4倾斜变位出油
注: (1)罐体纵向倾斜变位出油,纵向倾斜角4.1°;
(2)第三列累加出油量是每次抽出一定量油后的累加值;
(3)第四列是原罐内油量抽出一定量油后的油位高度值。
§7.2附件2
表7-5实际储油罐的采集数据
注: (1)第三列进油量;
(2)第四列出油量是加油机不同时段的出油量vi;
(3)第五列显示油高是进/出油vi后对应的罐内,油位显示高度hi;
(4)第六列显示油量容积是进/出油vi后,罐内,油位显示高度为hi时系统的显示储油量Vi。
§7.3图形
图1储油罐正面示意图
图2储油罐纵向倾斜变位后示意
图3储油罐截面示意图
图4小椭圆油罐示意图
§7.4程序
程序youliang1
load jinyou1.txt
load chuyou1.txt
g1=jinyou1(:,2)*10^(-2);
g2=chuyou1(:,2)*10^(-2);
syms a b h l
a=0.89*10;b=0.6*10;l=2.45*10;
V=(a*l/b).*((h-b).*((2.*h.*b-h.^2).^0.5)+b.^2.*asin((h-b)./b)+0.5.*b.^2*pi);
V1=subs(V,h,g1)
V2=subs(V,h,g2)
h1=jinyou1(:,1)+262;
h2=3706.91+262-chuyou1(:,1);
c1=V1-h1
c2=V2-h2
x1=abs(V1-h1)./V1
x2=abs(V2-h2)./V2
plot(g1,V1,'.r',g1,h1,'.c')
xlabel('进油后储油量');
ylabel('罐内油位高度');
title('罐内油位高度随进油后储油量的变化情况')
legend('储油理论量','储油实际量')
grid on
figure(2)
plot(g2,V2,'.r',g2,h2,'.c')
xlabel('出油后储油量');
ylabel('罐内油位高度');
title('罐内油位高度随出油后储油量的变化情况')
legend('储油理论量','储油实际量')
grid on
figure(3)
subplot(2,1,1)
plot(g1,c1,'.b')
xlabel('罐内油位高度');
ylabel('进油后储油量的误差');
title('进油后储油量的误差随罐内油位高度的变化情况')
grid on
subplot(2,1,2)
plot(g2,c2,'.b')
xlabel('罐内油位高度');
ylabel('出油后储油量的误差');
title('出油后储油量的误差随罐内油位高度的变化情况')
grid on
程序youliang2
load jinyou2.txt
load chuyou2.txt
g1=jinyou2(:,2)*10^(-2);
g2=chuyou2(:,2)*10^(-2);
syms a b h m a1
a=0.89*10;
b=0.6*10;
a1=0.4*10;
L=2.45*10;
m=4.1*pi/180;
k=(a1*tan(m)/b)-1;
p=(h+a1*tan(m)-b)/b;
q=(h+a1*tan(m)-b-L*tan(m))/b;
V=-((-1/3)*(1-q.^2).^(3/2)+(1-q.^2).^(1/2)+q.*asin(q)+1/3.*(1-p.^2).^(3/2)-(1-p.^2).^(1/2)-p.*asin(p)+pi*(q-p)*0.5).*a*b^2./tan(m)
V1=subs(V,h,g1)
V2=subs(V,h,g2)
h1=jinyou2(:,1)+215;
h2=3299.74+215-chuyou2(:,1);
c1=V1-h1
c2=V2-h2
x1=abs(V1-h1)./V1
x2=abs(V2-h2)./V2
plot(g1,V1,'.r',g1,h1,'.c')
xlabel('倾斜时进油后储油量');
ylabel('罐内油位高度');
title('倾斜时罐内油位高度随进油后储油量的变化情况')
legend('储油理论量','储油实际量')
grid on
figure(2)
plot(g2,V2,'.r',g2,h2,'.c')
xlabel('倾斜时出油后储油量');
ylabel('罐内油位高度');
title('倾斜时罐内油位高度随出油后储油量的变化情况')
legend('储油理论量','储油实际量')
grid on
figure(3)
subplot(2,1,1)
plot(g1,c1,'.b')
xlabel('罐内油位高度');
ylabel('倾斜时进油后储油量的误差');
title('倾斜时进油后储油量的误差随罐内油位高度的变化情况')
grid on
subplot(2,1,2)
plot(g2,c2,'.b')
xlabel('罐内油位高度');
ylabel('倾斜时出油后储油量的误差');
title('倾斜时出油后储油量的误差随罐内油位高度的变化情况')
grid on
本文来源:https://www.2haoxitong.net/k/doc/578b956958fafab069dc0299.html
文档为doc格式