【2023高教社杯】B题 多波束测线问题 问题分析、数学模型及参考文献

news2024/12/25 23:39:18

【2023高教社杯】B题 多波束测线问题 问题分析、数学模型及参考文献

在这里插入图片描述

1 题目

1.1 问题背景

多波束测深系统是利用声波在水中的传播特性来测量水体深度的技术,是在单波束测深的基础上发展起来的,该系统在与航迹垂直的平面内一次能发射出数十个乃至上百个波束,再由接收换能器接收由海底返回的声波。多波束测深系统克服了单波束测深的缺点,在海底平坦的海域内,能够测量出以测量船测线为轴线且具有一定宽度的全覆盖水深条带。

多波束测深条带的覆盖宽度 𝑊 随换能器开角 𝜃 和水深 𝐷 的变化而变化。若测线相互平行且海底地形平坦,则相邻条带之间的重叠率定义为 𝜂 = 1 − 𝑑 ,其中 𝑑 为相邻两条测线的间𝑊距,𝑊 为条带的覆盖宽度。若 𝜂 < 0,则表示漏测。为保证测量的便利性和数据的完整性,相邻条带之间应有 10%~20% 的重叠率。但真实海底地形起伏变化大,若采用海区平均水深设计测线间隔,虽然条带之间的平均重叠率可以满足要求,但在水深较浅处会出现漏测的情况(图 5),影响测量质量;若采用海区最浅处水深设计测线间隔,虽然最浅处的重叠率可以满足要求,但在水深较深处会出现重叠过多的情况(图 6),数据冗余量大,影响测量效率。

问题

问题 1: 与测线方向垂直的平面和海底坡面的交线构成一条与水平面夹角为 𝛼 的斜线(图7),称 𝛼 为坡度。请建立多波束测深的覆盖宽度及相邻条带之间重叠率的数学模型。
在这里插入图片描述

图 7 问题 1 的示意图

若多波束换能器的开角为 120∘,坡度为 1.5∘,海域中心点处的海水深度为 70 m,利用上述模型计算表 1 中所列位置的指标值,将结果以表 1 的格式放在正文中,同时保存到 result1.xlsx 文件中。

表1 问题1 的计算结果

测线距中心点处的距离/m−800−600−400−2000200400600800
海水深度/m70
覆盖宽度/m
与前一条测线的重叠率/%

问题 2: 考虑一个矩形待测海域(图 8),测线方向与海底坡面的法向在水平面上投影的夹角为 𝛽,请建立多波束测深覆盖宽度的数学模型。

在这里插入图片描述

图 8 问题 2 的示意图

若多波束换能器的开角为 120∘,坡度为 1.5∘,海域中心点处的海水深度为 120 m,利用上述模型计算表 2 中所列位置多波束测深的覆盖宽度,将结果以表 2 的格式放在正文中,同时保存到 result2.xlsx 文件中。

表 2 问题 2 的计算结果

覆盖宽度/m测量船距海域中心点处的距离/海里
00.30.60.91.21.51.82.1
测线方向夹角/°0
45
90
135
180
225
270
315

问题 3: 考虑一个南北长 2 海里、东西宽 4 海里的矩形海域内,海域中心点处的海水深度为 110 m,西深东浅,坡度为 1.5∘,多波束换能器的开角为 120∘。请设计一组测量长度最短、可完全覆盖整个待测海域的测线,且相邻条带之间的重叠率满足 10%~20% 的要求。

问题 4: 海水深度数据(附件.xlsx)是若干年前某海域(南北长 5 海里、东西宽 4 海里)
单波束测量的测深数据,现希望利用这组数据为多波束测量船的测量布线提供帮助。在设计测线时,有如下要求:
(1) 沿测线扫描形成的条带尽可能地覆盖整个待测海域;
(2)相邻条带之间的重叠率尽量控制在 20% 以下;
(3) 测线的总长度尽可能短。在设计出具体的测线后,请计算如下指标:a.测线的总长度;b. 漏测海区占总待测海域面积的百分比;c. 在重叠区域中, 重叠率超过 20% 部分的总长度。
注 在附件中,横、纵坐标的单位是海里,海水深度的单位是米。1 海里=1852 米。附件 海水深度数据

2 问题分析

2.1 问题一

这个题需要建立多波束测深的覆盖宽度及相邻条带之间重叠率的数学模型。首先,需要确定多波束测深系统中每个波束所覆盖的区域。由于多波束测深系统能够在与航迹垂直的平面内发射数十个乃至上百个波束,因此可以将整个海域划分为若干个小区域,每个小区域都有自己的覆盖宽度W和重叠率 η \eta η
其次,覆盖宽度W的大小与换能器开角 θ \theta θ和水深D有关。可以根据实际数据和测深原理来建立覆盖宽度W与 θ \theta θ 和D的关系模型。最后,相邻条带之间的重叠率$\eta $可以通过计算相邻两条测线的间距d,并根据d和覆盖宽度W的关系来确定。

2.2 问题二

建立多波束测深覆盖宽度的数学模型,以求解在矩形待测海域中,测线方向与海底坡面的法向在水平面上投影的夹角为 β \beta β时,覆盖宽度 W 的数学表达式。

由题设可知,多波束测深覆盖宽度 W 与换能器开角 θ \theta θ 和水深 D 相关,并且相邻条带之间应有一定的重叠率 η \eta η。要构建数学模型,可以考虑以下几点因素:

(1)换能器开角 θ \theta θ :换能器开角的大小将影响覆盖宽度 W 的大小。一般情况下,换能器开角越大,覆盖宽度也会相应增大。

(2)水深 D :水深越大,覆盖宽度也会相应增大。这是因为,在水深较大的区域,声波传播的距离更长,因此覆盖宽度需要更大才能实现全覆盖。

(3)相邻条带之间的重叠率 η \eta η :根据题设要求,相邻条带之间应有一定的重叠率,一般为10%~20%。通过调整测线间隔,可以控制重叠率的大小。

2.3 问题三

根据问题背景,需要设计一组测量长度最短、可完全覆盖整个待测海域的测线,并且要求相邻条带之间的重叠率满足 10%~20% 的要求。考虑到海域中心点处的海水深度为 110 m,海域的南北长为 2 海里,东西宽为 4 海里,海底的坡度为 1.5 ∘ \circ ,多波束换能器的开角为 120 ∘ \circ 。为了设计满足要求的测线,可以采用以下方法:

(1)利用海域的南北长和东西宽来确定需要的测线条数。

(2)根据海底坡度和海水深度,在每条测线上确定一定间距的测点。

(3)在第一条测线上选择一个起点,在该起点的水平投影上选择第一个测点,然后根据换能器开角确定下一个测点的位置,并以此类推,直到覆盖整个待测海域。

(4)计算每个测线的长度,并根据重叠率的要求进行调整。

2.4 问题四

这是一个优化问题,需要考虑三个指标:测线总长度、漏测海区占比、重叠率超过20%的总长度。为了达到这些指标,需要设计一个合理的多波束测线。由于海底地形变化复杂,而且数据只有单波束测量的海深信息,因此需要通过数学模型来解决该问题。

数学模型过程的话,可以按照以下的思路

(1)建立坐标系和网格
通过题目背景描述和文件附件中提供的数据,可以建立一个坐标系和网格,使得整个希望测量的海域被覆盖。同时,为了方便处理问题,可以将网格等分成大小相同的子区域。

(2)设计波束扫描范围和扫描方向
根据多波束测线的原理,可以将船体在水平方向上的扫描范围分为若干个波束,每个波束的扫描范围为一条扇形区域,扇形区域的中心在测线上,开始和结束角度通过设计波束的开角确定。同时,需要确定波束的扫描方向,可以采取等角度分布或等角度间距分布。

(3)优化测线设计
在确定了波束的扫描范围和方向后,可以使用数学优化方法来设计测线。需要依据要求,设计出一种测线布局方式,可以覆盖整个测量区域,并使相邻条带之间的重叠率尽量控制在20%以下,同时使总长度最短。可以采取贪心算法或遗传算法等优化方法。

(4)计算指标
根据所设计的测线布局方式,可以计算出测线总长度和漏测海区占比。同时,为了计算重叠率超过20%的总长度,需要对相邻条带之间的区域进行计算,并判断是否超过20%。

3 数学模型

3.1 问题一

多波束测深的覆盖宽度及相邻条带之间重叠率的数学模型可以表示为:
W = 2 ( D t a n ( θ i ) − ( d / 2 ) t a n ( θ 0 ) )   W = 2(D tan(\theta_i)-(d/2) tan(\theta_0)) \ W=2(Dtan(θi)(d/2)tan(θ0)) 

η = 1 − d / W \eta = 1 -d/W η=1d/W

其中, α \alpha α 为坡度,g ≥ 0为任意波束编号, θ g \theta_g θg为波束 g 的发射角度,W 为波束的覆盖宽度,d 为波束间距,D 为水深, η \eta η 为相邻条带之间的重叠率。

(1)对于每个测线位置x,根据海水深度D和坡度α计算出每个波束的发射角度 θ g \theta_g θg
θ g = t a n − 1 ( ( x + d / 2 ) t a n ( α ) − D t a n ( o p e n a n g l e / 2 − g π / 180 ) ) \theta_g = tan^{-1}((x+d/2)tan(\alpha) - D tan(open_angle/2-g\pi /180)) θg=tan1((x+d/2)tan(α)Dtan(openangle/2gπ/180))

(2)根据模型公式依次计算每个波束的覆盖宽度 W g W_g Wg
W g = 2 ( D t a n ( θ g ) − ( d / 2 ) t a n ( θ 0 ) ) W_g = 2(D tan(\theta_g)-(d/2)tan(\theta_0)) Wg=2(Dtan(θg)(d/2)tan(θ0))

(3)依次计算每个测线与前一条测线的重叠率 η g \eta_g ηg

η g = 1 − d / W g , η 0 = 0 \eta_g = 1-d/W_g,\eta_0 = 0 ηg=1d/Wgη0=0

3.2 问题二

多波束测深覆盖宽度的数学模型可表示为:

W = D × t a n ( θ / 2 ) × ( 1 − η ) W = D × tan(\theta/2)×(1-\eta) W=D×tan(θ/2)×(1η)

其中,
W 为多波束测深的覆盖宽度;
D 为水深;
θ \theta θ 为换能器开角;
η \eta η 为相邻条带之间的重叠率( η \eta η = 1 - d,d 为相邻两条测线的间距)。

3.3 问题三

设 n 为测线条数, d 为相邻两条测线的间距。根据问题背景,将问题转化为求解 n 和 d 的最优解,使得满足以下条件:
请下载完整资料

3.4 问题四

需要设计的多波束测深系统需要对 m m m个点进行测量。建立二维直角坐标系,令点 i i i的坐标为 ( x i , y i ) (x_i, y_i) (xi,yi),对海域进行网格化处理,将整个海域分成 n × n n\times n n×n个小网格,每个小网格的边长为 d d d。设扫描的总宽度为 W W W,每个波束的宽度为 w w w,角度间距为 α \alpha α(即相邻波束之间的角度度数),开角为 θ \theta θ。则有:
W = m w α ( 1 ) W = \frac{mw}{\alpha} \qquad (1) W=αmw(1)

请下载完整资料

4 完整资料

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/988868.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从gles,vulkan到metal(二)-- 同步和内存

无论以任何形式本篇文章内容&#xff0c;请注明来自leonnwei的csdn blog 在第一章节中我们讨论了图形API的基本数据结构和图形指令的提交机制&#xff0c;在指令的生成&#xff0c;提交&#xff0c;执行过程中&#xff0c;在复杂而又高度并行的GPU管线中&#xff0c;必然存在着…

安全模型中的4个P

引言&#xff1a;在安全模型中&#xff0c;经常会碰到PDR,PPDR&#xff0c;IPDRR&#xff0c;CARTA-PPDR等模型&#xff0c;其中的P&#xff0c;是predicet&#xff1f;是prevent&#xff1f;还是protect&#xff1f;还是policy呢&#xff1f; 一、4P字典意思解释 1、predict&…

【C++基础】3. 数据类型

文章目录 【 1. 数据类型分类 】1.1 字符型1.2 整型1.3 浮点型1.4 布尔型1.5 无类型1.6 枚举类型1.7 其他类型1.8 类型占用大小输出 【 2. typedef 类型声明 】 使用编程语言进行编程时&#xff0c;我们需要用到各种变量来存储各种信息。变量保留的是它所存储的值的内存位置&am…

iOS创建Category类别(扩展类)

我要为UIButton扩展其他系统提供以外的方法&#xff0c;这就要用到扩展类了 创建步骤如下图&#xff1a; 步骤一&#xff1a;New File 步骤二&#xff1a;选中Objective-c File 步骤三&#xff1a;File名称随便起(这里写了AaaBtn)&#xff0c;继承Class为UIButton 步骤四&…

4. xaml Button按钮

1.运行图片 2.源码 <Grid><!--BorderBrush="BlueViolet" 边框颜色--><!--BorderThickness="2" 边框线的粗细--><

软件测试适合零基础学么

零基础学习软件测试不失为一个好的选择&#xff0c;虽然IT行业里对小白最友好的非软件测试莫属了&#xff0c;但是也要看你个人在学习软件测试这件事上面花费了多少的时间和努力了~ 每年毕业季&#xff0c;IT行业依然是比较热门且收入是最高的行业。对于应届毕业生来说想要进入…

【python自动化】七月PytestAutoApi开源框架学习笔记(二)

执行流程 注&#xff1a;请先阅读作者的README.md文档https://gitee.com/yu_xiao_qi/pytest-auto-api2/blob/master/README.md 本节内容目录如下&#xff1a; 文章目录 执行流程目录结构参数配置入口文件-run.pypytest.ini test_case初始化数据缓存解析yaml测试数据 测试用例…

学习Bootstrap 5的第八天

目录 加载器 彩色加载器 实例 闪烁加载器 实例 加载器大小 实例 加载器按钮 实例 分页 分页的基本结构 实例 活动状态 实例 禁用状态 实例 分页大小 实例 分页对齐 实例 面包屑&#xff08;Breadcrumbs&#xff09; 实例 加载器 彩色加载器 在 Bootstr…

微信个人号如何实现自动回复,秒回客户消息?

企业在开展私域运营沉淀用户的过程中&#xff0c;免不了要与来自各个渠道的用户打交道。在客户关注公众号、视频号或者发送QQ消息后&#xff0c;通过设置欢迎语&#xff0c;主动推送内容。 那么微信是不是也可以通过设置像它们一样可以自动欢迎语呢&#xff1f; 其实是可以的。…

谷歌为什么不收录你的网站?

答案是&#xff1a;因为你的文章质量太差&#xff0c;建议使用GPC爬虫池促收录。 谷歌作为全球最大的搜索引擎&#xff0c;对于许多网站主、营销人员和SEO专家来说&#xff0c;确保自己的网站被谷歌收录是至关重要的。 但有时&#xff0c;即使我们做了很多努力&#xff0c;我…

Mybatis中 collection 和 association 标签 的区别

<collection> 和 <association> 是 MyBatis 中用于定义映射关系的标签&#xff0c;它们的区别如下&#xff1a; 目标对象类型&#xff1a; <collection> 用于表示集合属性&#xff0c;即一个属性对应多个关联对象。<association> 用于表示关联属性&…

深入了解vue2没有在data中定义的属性非响应式的问题

关于vue2没有在data中定义的属性非响应式的问题 vue2 响应式的原理及实现vue2 解决此类的部分 vue2 响应式的原理及实现 vue2 响应式数据 是通过 es5 中的 Object.defineProperty 方法来实现&#xff0c;把 data 定义的所有属性&#xff0c;转换为 get/set 方法&#xff0c;使…

java应用CPU飙高的排查思路及解决方案

1、使用top命令查看系统cpu占用情况&#xff0c;找出占用最高的进程pid top 2、使用如下命令查找进程内占用cpu最高的线程id ps H -eo pid,tid,%cpu | grep 最高的进程pid查询出进程内2276这个线程占用cpu最高 # pid&#xff08;进程id&#xff09;、tid&#xff08;线程id&…

移动和pc端的微信支付和支付宝支付(持续更新)

最近开发了一个web商城,需要支持pc端,手机端,且需要支持微信支付和支付宝支付。 pc端,pc端用户点击支付,直接用弹窗弹出一个支付二维码即可手机端的支付宝支付,现在自己尝试了下微信内打开一个支付宝支付链接,发现是可以打开,如图: 问了一下,说是工信部反垄断的政策,…

【设计模式】组合模式实现部门树实践

1.前言 几乎在每一个系统的开发过程中&#xff0c;都会遇到一些树状结构的开发需求&#xff0c;例如&#xff1a;组织机构树&#xff0c;部门树&#xff0c;菜单树等。只要是需要开发这种树状结构的需求&#xff0c;我们都可以使用组合模式来完成。 本篇将结合组合模式与Mysq…

激光切割机在船舶行业的的应用有哪些

我国享有世界工厂的美誉&#xff0c;是全球制造业的主力。然而&#xff0c;在船舶制造的关键技术领域&#xff0c;我国的研发投入不足&#xff0c;技术进步仍滞后&#xff0c;我国高端船舶制造的实力仍显不足。 在我国制造业全面复苏的当前背景下&#xff0c;“精准制作”正构成…

苹果上架app备案流程介绍

摘要&#xff1a;本文将为iOS技术博主介绍苹果上架App备案流程的详细步骤&#xff0c;包括注册开发者账号、创建App ID、创建证书、创建Provisioning Profile、开发应用程序、提交应用程序、审核和上架。了解这一流程对于想要将应用程序上架到App Store供用户下载使用的博主来说…

靶场溯源第二题

关卡描述&#xff1a;1. 网站后台登陆地址是多少&#xff1f;&#xff08;相对路径&#xff09; 首先这种确定的网站访问的都是http或者https协议&#xff0c;搜索http看看。关于http的就这两个信息&#xff0c;然后172.16.60.199出现最多&#xff0c;先过滤这个ip看看 这个很…

FAT32文件系统f_mkfs函数详解

1.f_mkfs参数 参数path&#xff1a;要挂载/卸载的逻辑驱动器号;使用设备根路径表示。 参数opt&#xff1a;系统的格式&#xff0c;如图所示&#xff0c;选择FM_FAT32即可&#xff0c;选择其他的可能无法格式化。 参数au&#xff1a;每簇的字节数&#xff0c;以字节为单位&#…

无涯教程-JavaScript - IMDIV函数

描述 IMDIV函数以x yi或x yj文本格式返回两个复数的商。 $$IMDIV(z1,z2) \frac {(a bi)} {(c in)} \frac {{ac bd)(bc-ad)i} {c ^ 2 d ^ 2 } $$ 语法 IMDIV (inumber1, inumber2)争论 Argument描述Required/OptionalInumber1The complex numerator or dividend.Req…