2023国赛B题:多波束测线问题 评阅要点完整分析

本文所有分析仅代表个人观点,不代表官方,仅供参考
制作人:川川徒弟 demoo
CSDN:川川菜鸟
公众号:川川带你学AI

官方评卷要点
  全文采用非编程做法
  需要工具: geogebra、matlab工具箱
  注: 本文全文不考虑测线不平行的复杂情况

问题一

问题一

  该题在解析中要求重新给出覆盖宽度、覆盖率的定义,但实际上我们可以直接沿用原定义,只不过覆盖率在计算时的参照对象改为自己,修正后的定义如下:
η i + 1 = 1 − d w i \eta_{i+1}=1-\frac{d}{w_i} ηi+1=1wid
  接着操作就十分简单了,坡面方程已知,射线所过定点已知,射线斜率已知,那射线与坡面的交点坐标自然也已知,其他的相关量也可一并得出,接着直接用geogebra进行绘图测量即可:
geogebra操作示意图

  如上图所示,可以通过这种稍繁琐的方法求出所有的相关量,完善表格。

问题二

问题二

  要点所给的方法已经是相当简单的了,当测线不再平行于坡面时,坡面相对于测线的角度也会发生变化,具体的转换公式如下:
tan ⁡ γ = x tan ⁡ 1. 5 ∘ x 1 + tan ⁡ 2 β = tan ⁡ 1. 5 ∘ 1 + tan ⁡ 2 β \tan \gamma=\frac{x \tan 1.5^{\circ}}{x \sqrt{1+\tan ^2 \beta}}=\frac{\tan 1.5^{\circ}}{\sqrt{1+\tan ^2 \beta}} tanγ=x1+tan2β xtan1.5=1+tan2β tan1.5
  推导过程较为繁琐这里就不多赘述了,笔者采用的是建系,从解析几何的角度进行考量,虽然结果上问题不大但是过程较为繁琐并且和要点偏离较远,这里就不多阐述了,紧接着重复第一问步骤即可。

问题三

问题三

  要点只阐述了结果,这里分两步进行细致阐述:

Part 1.理论证明

  先证明为什么在测线平行时,沿着等深线方向布线是最优的布线方案:

条带示意图

Step1.布线原则(行为逻辑)
  由第二问可知当β为0时,条带形状为一矩形或者一梯形,浅水区带宽较小为上底,深水区带宽较长为下底,布线行为遵循一个原则,从最浅处,最距离直线的最远处开始布线,第一条线所形成条带刚好能覆盖边界线或顶点,所有的线均遵从在满足覆盖率满足要求的前提下尽可能的小,这样可以保证条带的面积得到充分的利用,所需的条数尽可能的少。

Step2.沿着等深线布线所需要的条数是最少的:
  证明这一点时上面的图能发挥作用了,依题意所有区域都要被条带覆盖,为了方便分析,不妨取一条东西走向的边界线进行分析,再观察上图,右侧的黑色线代表条带的宽度,可以发现在同一点,不同角度所形成的条带所成的图形为一椭圆,可以发现当β为90°时其为长轴,带宽长度最长,所需的条数最小。

Step3.等深线布线的总测线长度是最小的:
  上面我们证明了沿等深线布线所需条数是最小的,但仅凭条数并不足以说明这样排布的总条数最小,我们暂且不考虑重复率超过限制导致的方案作废,当β角不为0时,若不考虑截断,总长度是增加的,考虑截断,可以发现左下角被截断部分分布较疏,而右上角新增部分分布较密,权衡之后,总长度还是增加了,所以再β为0时,沿着等深线布线是最优方案。

Part 2.实际操作

  接下来的工作就十分简单的,可以在第二问的基础上从最浅处开始布线,始终保持10%的最低覆盖率往下布线。

问题四

问题四

  依照要点,应当分块拟合,再按照第三问做法开始布线即可,

  那本问唯一的难点就是分块拟合了,利用matlab的CFtool工具箱即可轻松解决。

  1. 手动将曲面分割为任意块
  2. 分批次导入x,y和z
  3. 采用多项式进行一次(平面)拟合

拟合示意图

  上图为四分之一曲面的拟合结果,可以发现拟合效果仍有欠缺,仅为0.74,采用二次可以将拟合R^2提高至0.96但是计算难度会大很多,就先按答案来吧。
  上图平面已拟合完毕,直接按照第三问去做即可。

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

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

相关文章

前端Layui框架介绍

当涉及到前端UI框架时,Layui(简称layui)是一个备受欢迎的框架之一。在这篇博客中,我们将深入了解layui,包括其市场占有率、开发语言、使用场景、框架特点以及一些使用案例。 1. 市场占有率 Layui 是一款流行的前端UI框…

Mysql

视频链接 黑马Mysql 基础篇 通用语法及分类 DDL: 数据定义语言,用来定义数据库对象(数据库、表、字段)DML: 数据操作语言,用来对数据库表中的数据进行增删改DQL: 数据查询语言,用来查询数据库中表的记录DCL: 数据控…

网络原理,了解xml, json,protobuffer的特点

目录 外卖服务器场景带入 大佬们通用的规范格式 一、👦 外卖服务器场景 外面服务器沟通有很多模式——展示商家列表等等,只是其中一个,因此需要一个统一的规划了——不同应用程序,里面的自定义格式是不一样的,这样的…

icmp报文及用go实现

目录 一、概述 二、ICMP报文格式详解 2.1 什么是ICMP 2.2 ICMP报文格式 2.3 ICMP报文类型 2.4 实际报文举例 三、使用go实现icmp请求以及接收响应内容 一、概述 本文主要旨在学习icmp报文格式,以及通过go语言来实现ICMP发包。 二、ICMP报文格式详解 2.1 什…

练习:使用servlet显示试卷页面

试卷页面代码 在浏览器输入如下地址: http://localhost/examPageServlet 效果如下:

SV-6002T-P 网络对讲求助终端,立柱式智慧城市网络对讲求助终端,停车场出入口一键求助终端

SV-6002T-P 网络对讲求助终端,立柱式智慧城市网络对讲求助终端,停车场出入口一键求助终端 描述:SV-6002T是深圳锐科达电子有限公司的一款新型立柱型室外防水一键求助对讲终端,具有10/100M以太网接口,其接收网络的音频数…

基于Java+freemarker实现动态赋值以及生成Word文档

前言 有一个需求就是给定一个正确格式的 Word 文档模板&#xff0c;要求通过动态赋值方式&#xff0c;写入数据并新生成 该模板格式的 Word 文档。这很明显使用 Javafreemarker 方式来实现颇为简单。 一、导入依赖 <!-- freemarker --> <dependency><groupId…

Qt点亮I.MX6U开发板的一个LED

本篇开始将会介绍与开发版相关的Qt项目&#xff0c;首先从点亮一个LED开始。I.MX6U和STM32MP157的相关信息都会用到&#xff0c;但是后期还是将I.MX6U的学习作为重点。当然其他开发版的开发也可以参考本博文。 文章目录 1. Qt是如何操控开发板上的一个LED2. 出厂内核设备树中注…

Spring-Cloud GateWay+Vue 跨域方案汇总

文章目录 一、简介背景和概述 二、前端跨域解决方案Axios跨域CORS跨域 三、后端跨域解决方案反向代理服务器 四、Spring Cloud中的跨域解决方案Gateway网关的跨域配置 五、基于Vue和Spring Cloud的跨域整合实践**这两种配置只需配置一种即可生效&#xff08;前端or后端&#xf…

CPU的三级缓存

CPU缓存&#xff08;Cache Memory&#xff09;是位于CPU与内存之间的临时存储器&#xff0c;它的容量比内存小的多但是交换速度却比内存要快得多。高速缓存的出现主要是为了解决CPU运算速度与内存读写速度不匹配的矛盾&#xff0c;因为CPU运算速度要比内存读写速度快很多&#…

使用Python CV2融合人脸到新图片--优化版

优化说明 上一版本人脸跟奥特曼图片合并后边界感很严重&#xff0c;于是查找资料发现CV2还有一个泊松函数很适合融合图像。具体代码如下&#xff1a; import numpy as np import cv2usrFilePath "newpic22.jpg" atmFilePath "atm2.jpg" src cv2.imrea…

Gmail邮箱注册情况及最新动态

在中国大陆地区&#xff0c;对于是否可以注册Gmail邮箱一直存在一定的限制和讨论。准确来说&#xff0c;中国大陆地区的用户目前无法直接访问和注册Gmail邮箱。由于某些政策和技术原因&#xff0c;中国政府对于一些外国的网站和服务实施了网络封锁与限制。因此&#xff0c;中国…

JMeter基础 —— 使用Badboy录制JMeter脚本!

1、使用Badboy录制JMeter脚本 打开Badboy工具开始进行脚本录制&#xff1a; &#xff08;1&#xff09;当我们打开Badboy工具时&#xff0c;默认就进入录制状态。 如下图&#xff1a; 当然我们也可以点击录制按钮进行切换。 &#xff08;2&#xff09;在地址栏中输入被测地…

Java学习——基本语法笔记

1. 基本框架 Java中的程序是以类为单位&#xff0c;所以所有的程序都必须在class定义范畴之内&#xff0c; 类的定义有两种形式&#xff1a; class 类名称{程序代码 } public class 类名称{程序代码 } ⭐public class定义类&#xff0c;要求文件名称与类名称一致 ⭐如果现在没有…

Linux学习之MySQL连接查询

接上一篇 连接查询 连接查询也中多表查询&#xff0c;常用于查询来自于多张表的数据&#xff0c;通过不同的连接方式把多张表组成一张新的临时表&#xff0c;再对临时表做数据处理。 #表基础信息&#xff0c;内容可从上一篇博客中查看 mysql> desc departments; ---------…

gRpc_go_dart-1.编写第一个服务

​ 通俗的讲下grpc 简化掉所有复杂的实现,它要求服务端和客户端之间按照protobuf的规范进行数据交换,所以服务端和客户端都不用关心彼此的代码实现,只关心按照protobuf的形式提供数据 为什么是go和dart 技术栈,已经是google的形状了 同时,go客户端和Flutter间本身通过http…

Java(运算符+循环)万字超详细介绍 (囊括了按位,异或,for,while等基础和疑难知识)

【本节目标1】熟练掌握运算符 【本章目标2】熟练掌握循环 万字讲解&#xff0c;十分详细&#xff0c;有大量&#xff08;简单&#xff09;代码帮助理解和大量的&#xff08;简单&#xff09;举例与总结。 1.运算符 1.什么是运算符 计算机最基本的用途之一就是执行数学运算…

如何实现一个简单的Promise/A+规范的Promise库?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ Promise/A规范的Promise⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚…

ROS2-IRON Ubuntu-22.0 源码下载失败解决方法 vcs import --input

ROS2 一.ROS2 IRON环境搭建1.设置系统字符集为UTF-82.将RO2 apt 库添加到系统中3.添加ROS2 GPG key4.添加ROS 2 的软件源安装开发工具 二.下载ROS2sh源代码编译 一.ROS2 IRON环境搭建 虚拟机系统&#xff1a;Ubuntu22.04 虚拟机&#xff1a;VMware-player-full-16.2.5-2090451…

身份和访问管理解决方案:混合型IAM

对于依赖于本地 IT 基础结构和传统安全模型的组织&#xff0c;可以更轻松地验证和授权企业网络内的所有内容&#xff0c;包括设备、用户、应用程序和服务器。尝试从公司网络外部获取访问权限的用户使用虚拟专用网络 &#xff08;VPN&#xff09; 和网络访问控制 &#xff08;NA…