2010年国赛高教杯数学建模A题储油罐的变位识别与罐容表标定解题全过程文档及程序

server/2024/10/25 2:41:26/

2010年国赛高教杯数学建模

A题 储油罐的变位识别与罐容表标定

  通常加油站都有若干个储存燃油的地下储油罐,并且一般都有与之配套的“油位计量管理系统”,采用流量计和油位计来测量进/出油量与罐内油位高度等数据,通过预先标定的罐容表(即罐内油位高度与储油量的对应关系)进行实时计算,以得到罐内油位高度和储油量的变化情况。
  许多储油罐在使用一段时间后,由于地基变形等原因,使罐体的位置会发生纵向倾斜和横向偏转等变化(以下称为变位),从而导致罐容表发生改变。按照有关规定,需要定期对罐容表进行重新标定。图1是一种典型的储油罐尺寸及形状示意图,其主体为圆柱体,两端为球冠体。图2是其罐体纵向倾斜变位的示意图,图3是罐体横向偏转变位的截面示意图。
  请你们用数学建模方法研究解决储油罐的变位识别与罐容表标定的问题。
  (1)为了掌握罐体变位后对罐容表的影响,利用如图4的小椭圆型储油罐(两端平头的椭圆柱体),分别对罐体无变位和倾斜角为=4.10的纵向变位两种情况做了实验,实验数据如附件1所示。请建立数学模型研究罐体变位后对罐容表的影响,并给出罐体变位后油位高度间隔为1cm的罐容表标定值。
  (2)对于图1所示的实际储油罐,试建立罐体变位后标定罐容表的数学模型,即罐内储油量与油位高度及变位参数(纵向倾斜角度和横向偏转角度 )之间的一般关系。请利用罐体变位后在进/出油过程中的实际检测数据(附件2),根据你们所建立的数学模型确定变位参数,并给出罐体变位后油位高度间隔为10cm的罐容表标定值。进一步利用附件2中的实际检测数据来分析检验你们模型的正确性与方法的可靠性。

  附件1:小椭圆储油罐的实验数据
  附件2:实际储油罐的检测数据
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

整体求解过程概述(摘要)

  本文通过对储油罐中油位高度及变位参数之间的不同情形的储油量进行分析并建立相应的数学模型,在该过程中先利用投影法、截面法及微元法得出储油量与油位高度及变位参数的函数关系。再由Matlab编程可知各高度储油量的理论数据,最后分析误差及评价模型的合理性。
  对于问题一的任一种情形,我们均建立笛卡尔坐标系,当储油罐无变位时,利用微元法得到体积关于 的公式,当储油罐发生变位时,根据储油罐中油量的多少分成三种情形,就每一类利用微元法得到体积关于 的公式。代人附件1实验数据中的高度得到储油罐中的理论油量 。根据理论油量及实际油量得出误差,判断误差所服从的分布,再利用相对误差进行误差分析并评价模型的合理性。由上述得到储油罐发生变位时体积关于 的公式我们给出了罐体变位后油位高度间隔为1cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。
  对于问题二中的储油罐,我们先将问题进行简化考虑,得出了储油罐水平卧放时油量与浮油子高度的函数关系;再考虑储油量与油位高度及变位参数(纵向倾斜角度 和横向偏转角度 )的一般情况,在该过程中,我们进行近似处理,利用投影法和截面法得出了储油量关于油位高度及变位参数的函数关系;并在固定的横向偏转角度 条件下,就纵向倾斜角度 的变化进行分成三类讨论,这三类又可以分成八种情形,得到了每一种情形下实际储油罐罐内储油量与油位高度的函数关系。
  在模型的改进中,我们就问题二储油量与油位高度及变位参数的一般情况进行了仔细的考虑,将含油部分的体积分成四个部分,每一个部分将上述所提到的积分方法相结合,得到了各个部分的储油量与油位高度及变位参数的函数关系,从而可得总储油量与油位高度及变位参数的函数关系;并据此利用Matlab编程和实际测量的数据求得 和 值;与此同时我们可以得出在固定 、 值时各高度下的理论储油量;根据理论油量及实际油量得出误差,判断误差所服从的分布再利用相对误差进行误差分析并评价模型的合理性。由上述得到储油罐发生变位时体积关于 的公式我们给出了罐体变位后油位高度间隔为10cm的罐容表标定值。

模型假设:

  (1)在储油罐倾斜的情况下,忽略油浮子高度为0时油所占的体积;
  (2)在储油罐倾斜的情况下,假设当油浮子高度达到最大后不再进油;
  (3)油的挥发速度很慢,忽略因油的挥发而造成储油量的减少;
  (4)储油罐的材料为钢体,忽略因渗出油而造成储油量的减少;
  (5)储油罐管理妥当,不会因特殊情况而造成储油量的变化。

问题分析:

  问题一的分析
  当储油罐无变位时,储油罐圆柱体的接地一端为原点,以圆柱体高方向为 轴,建立笛卡尔坐标系,利用微元法得到体积关于 的公式,代人附件1实验数据中的高度得到储油罐中的理论油量 。利用附件1实验数据中得到储油罐中的实际油量,根据理论油量及实际油量就可以得出误差,判断误差所服从的分布,利用相对误差进行误差分析。
  当储油罐发生变位时,以储油罐圆柱体的接地一端为原点,圆柱体高方向为 轴,建立笛卡尔坐标系。根据储油罐中油量的多少分成三类,然后就每一类利用微元法得到体积关于 的公式,代人附件1实验数据中的高度得到储油罐中的理论油量 。利用附件1实验数据中得到储油罐中的实际油量,根据理论油量及实际油量就可以得出误差,判断误差所服从的分布,利用相对误差进行误差分析。
  由上述得到储油罐发生变位时体积关于 的公式可以给出罐体变位后油位高度间隔为1cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。
  问题二的分析
  对于实际储油罐,我们首先将问题进行简化考虑,得出了当实际储油罐水平卧放时实际储油罐中油量与浮油子高度的函数关系;
  然后我们先考虑实际储油罐罐内储油量与油位高度及变位参数(纵向倾斜角度 和横向偏转角度 )的一般情况,在该过程中,我们进行近似处理,利用投影法和截面法得出了储油量关于油位高度及变位参数的函数关系,再在固定的横向偏转角度 条件下,就纵向倾斜角度 的变化进行分类讨论,一共有三种情形,得到了每一种情形下实际储油罐罐内储油量与油位高度的函数关系。
  最后我们先利用附件2中的少量实际数据得出了附件2所处状态下的纵向倾斜角度 和横向偏转角度 ,再利用附件2中给定各高度进行代人,得到实际储油罐理论的储油量,与实际储油量进行比较,求出误差及相对误差。
  由上述得到储油罐发生变位时体积关于 的公式可以给出罐体变位后油位高度间隔为10cm的罐容表标定值(即进/出油量与罐内油位高度的表格)。

模型的建立与求解整体论文缩略图

在这里插入图片描述
在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

部分程序代码:

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
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
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

http://www.ppmy.cn/server/134580.html

相关文章

Linux Redis查询key与移除日常操作

维护老项目Express node 编写的后端程序、有这么一个方法、没有设置redis过期时间(建议设置过期时间,毕竟登录生产服务器并不是每个人都有权限登录的!!!)。如果变动只能通过登录生产服务器、手动修改… 于…

【Qt】信号和槽——信号和槽的概念、信号和槽的使用、信号和槽的优缺点、自定义信号和槽、信号和槽的断开

文章目录 Qt1. 信号和槽的概念2. 信号和槽的使用3. 信号和槽的优缺点4. 自定义信号和槽5. 信号和槽的断开 Qt 1. 信号和槽的概念 信号是什么: 在Linux中,我们知道信号是一种异步的事件通知机制,用于通知进程某个事件已经发生。它是进程间通信…

【开发语言】c++的发展前景

C作为一种历史悠久且功能强大的编程语言,在软件开发领域一直保持着其独特的地位和广泛的应用前景。尽管近年来出现了许多新的编程语言和技术趋势,但C由于其高性能、低层访问能力以及广泛的生态系统,在多个领域依然具有不可替代的优势。以下是…

Pandas分组与分箱

目录 分组 df.groupby分组函数返回分组对象 去除每组第一条或最后一条数据 获取分组后的每组名称 get_group()按组依据获取其中一组 分组聚合 分组后直接聚合 分组后指定单列或多列聚合 分组后使用多个聚合函数 分组后对多列分别使用不同的聚合函数 分组后使用自定义…

体验先行者平台的一键生成ai神器

各种AI工具层出不穷。我有幸试用了一款功能强大的AI工具,它大大提高了我的工作效率和产能,让我能够将精力集中在最有价值的部分。 文字处理助手:无论是快速创作文章、博客等内容,还是提升文字质量,让表达更精准&#x…

【SpringCloud】基础问题

文章目录 spring-cloud-dependencies和spring-cloud-alibaba-dependencies的区别<dependencyManagement>和<dependencies>的区别<dependencyManagement><dependencies> 为什么在主函数上加上SpringBootApplication注解就可以扫描到对象为什么bootstrap…

无人机初识及应用概览

随着科技的飞速发展&#xff0c;无人机作为一种新兴技术产品&#xff0c;逐渐走进了我们的日常生活和学习中。以下是对该文内容的全面总结&#xff0c;旨在帮助读者更好地理解和认识无人机的基本概念、分类、应用领域、国产标杆品牌以及四旋翼无人机的具体组成。 一、无人机的概…

一文掌握异步web框架FastAPI(三)-- 依赖注入(Depends)、中间件(日志记录、错误处理、身份验证、压缩响应、添加响应头)

接:一文掌握异步web框架FastAPI(二)-CSDN博客 目录 六、依赖注入 1、基本用法 2、使用依赖注入传递配置参数 3、使用依赖注入进行权限验证 4、使用依赖注入管理资源 5、使用依赖注入进行依赖项缓存 6、使用依赖注入进行跨模块依赖管理 7、使用依赖注入进行请求上下文…