2011年认证杯SPSSPRO杯数学建模A题(第二阶段)客机水面迫降时的姿态全过程文档及程序

2011年认证杯SPSSPRO杯数学建模

A题 客机水面迫降时的姿态

原题再现:

  2009 年 1 月 15 日下午(美国东部时间),US Airways 所属第 1549 航班(空中客车 A320 客机)在起飞后不久在纽约哈德逊河紧急迫降。经及时救助,机上 155 人(其中包括两名机师和三名乘务人员)在飞机沉没之前全部获救。该起事故造成 78 人受伤,无人死亡。
  这架客机从纽约长岛拉瓜迪亚机场起飞约 90 秒后遭飞鸟撞击,导致两个发动机损坏。机长萨伦伯格凭借着出色的驾驶技术和冷静的判断使飞机迫降在哈德逊河河面。而飞机上的乘客在乘务员的指挥下,有秩序地逃出紧急舱门并全部获救。
  第二阶段问题:
  问题: 在越洋飞行的航班中,曾有个别航班出现过由于重大故障或意外原因,被迫在海面迫降的情况。在有风浪的条件下,飞机在海面的迫降具有更大的难度和危险性。请你建立合理的数学模型,对客机在海面的迫降进行分析,指出在有风浪的条件下,飞机以何种姿态和航向接触海面是相对安全的选择。

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

  本题要求我们分析在风浪条件下,飞机在海面迫降相对安全的姿态和航向。通过对问题的细致分析,本模型利用攻角θ(触海瞬间速度方向和海平面的夹角)和仰角φ(触海瞬间机身和海平面的夹角)来描述飞机迫降的姿态。
为了确定飞机迫降的最佳攻角θ,我们建立了宏观的运动学模型:
  1. 我们假设飞机的迫降轨迹可以用多项式描述。
  2. 通过受力分析,得到飞机入水后的运动学方程,并进一步定量求解出飞机最大入水深度和飞机迫降轨迹的关系。
  3. 最后利用遗传算法,计算出最佳迫降轨迹的多项式参数,进而得到飞机迫降的最佳攻角 。
  为了求解飞机海面迫降的最佳仰角φ,我们建立了机壳的微观振动模型:
  1. 为了简化海面风浪的波动情况,我们采用量纲法,证明在飞机和海面接触的过程中,海水对飞机的作用可以等效为一个弹簧,其弹性系数与飞机的仰角及风浪大小有关。
  2. 我们利用弹性力学的知识,建立了机壳振动的四阶偏微分方程,并结合量纲法的结论,确定该定解问题的边界条件,进而求解出飞机迫降时不同仰角时,各个机舱的振幅情况。
  3. 最后利用 Hopfield 神经网络的联想记忆功能,从 6 个可能的仰角中选出了飞机海面迫降的最佳仰角。综上所述,我们确定了飞机在海上迫降的最佳姿态,其攻角θ=15.9°,仰角φ =10°。
  本模型在评价紧急迫降的安全性时,既考虑到宏观的运动,也考虑到微观的振动,评价全面,思维严密;在简化海面波动情况时,本模型利用量纲法,建立各物理量间的关系,避免过于复杂的推导,结果直观;在对四阶偏微分方程的求解中,本模型引入了广义最小二乘的方法求解系数,实现了算法创新;此外本文还采用人工智能进行优化求解,结果稳定可靠,实现方便。

模型的假设:

  1. 海水冲击飞机机体之后速度减为零。
  2. 不考虑海水的粘滞阻力。
  3. 由海风引起的海面波动成正弦波动,且波速一定。
  4. 海水密度、正弦波的角频率均为常数。
  5. 在对机体进行振动分析时,将飞机的外形近似为长圆柱体,忽略机翼对于飞机主体振动的影响
  6. 长圆柱体振动的四阶偏微分方程的通解为驻波形式,即可以将通解分解为一个时间因子和空间因子相乘的形式。
  7. 遗传算法和离散 Hopfield 神经网络均能收敛,结果稳定。

论文缩略图:

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

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

部分程序代码:(代码和文档not free)

clearNIND=400;                                    %个体数目
MAXGEN=200;                                %最大遗传代数
NVAR=4;                                     %变量数目
PRECI=25;                                   %变量的二进制位数
GGAP=0.01;                                  %代沟
%建立区域描述器
FieldD=[rep([PRECI],[1,NVAR]);[0.143];[3];rep([1;0;1;1],[1,NVAR])];
Chrom=crtbp(NIND, NVAR*PRECI);                  %创建初始种群
gen=0;                                                  
trace=zeros(MAXGEN, 2);                        %遗传算法性能跟踪初始值
x=bs2rv(Chrom, FieldD);                          %初始种群十进制转换
ObjV=chishuishendu(x(:,1));                      %计算初始种群的目标函数值
while gen<MAXGEN
     FitnV=ranking(ObjV);                         %分配适应度值   
     SelCh=select('sus',Chrom,FitnV,GGAP);               %选择
     SelCh=recombin('xovsp',SelCh,0.1);                  %重组
     SelCh=mut(SelCh);                                   %变异
     x=bs2rv(SelCh,FieldD);                              %子代十进制转换
     ObjVSel=chishuishendu(x(:,1));
     [Chrom ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);    %重插入
     gen=gen+1;
     trace(gen,1)=min(ObjV);                             %遗传算法性能跟踪
     trace(gen,2)=sum(ObjV)/length(ObjV);
end
figure(1);
plot(a,'.');
ylim([6,10]);
title('遗传代数 10 ');
xlabel('个体数量');
ylabel('适应度值');
figure(2);
plot(trace(:,2),'>r');grid
xlabel('遗传代数');
ylabel('适应度值');
legend('适应度均值');
%% 清空环境变量
clear all
clc
%% 导入数据
load class.mat
%% 目标向量
T = [class_1 class_2 class_3 ];
%% 创建网络
net = newhop(T);
%% 导入待分类样本
load sim.mat
A = {[sim_1 sim_2 sim_3 sim_4 sim_5 sim_6]};
%% 网络仿真
Y = sim(net,{18 20},{},A);
%% 结果显示
Y1 = Y{20}(:,1:3)
Y2 = Y{20}(:,4:6)
Y3 = Y{20}(:,7:9)
Y4 = Y{20}(:,10:12)
Y5 = Y{20}(:,13:15)
Y6 = Y{20}(:,16:18)
%% 绘图
A(1,:,:)=Y1;
A(2,:,:)=Y2;
A(3,:,:)=Y3;
A(4,:,:)=Y4;
A(5,:,:)=Y5;
A(6,:,:)=Y6;
for    i=1:6
for n=1:5
     for m=1:3
         if A(i,n,m) > 0
                   subplot(2,3,i);
                    plot(m,5‐n,'ko','MarkerFaceColor','k'),title([num2str(4+(i‐1)*3)
'degree'])
         else
                    subplot(2,3,i);
  plot(m,5‐n,'ko'),title([num2str(4+(i‐1)*3) 'degree'])
          end
          hold on
          axis([0 4 0 6])
          axis off
     end
end
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android MVVM架构学习——ViewModel DataBinding

关于MVVM架构&#xff0c;我并不想花篇幅去做重复性的描述&#xff0c;网上一搜都是一堆讲解&#xff0c;大家可以自行了解&#xff0c;我所做的只是以最简单的例子&#xff0c;最有效的步骤&#xff0c;从零开始&#xff0c;去实现一个相对有点学习参考价值的项目。 先来看本…

鸿蒙开发快速入门

基本概念 ArkTS 因为ArkTS是基于Type Script扩展而来&#xff0c;是Type Script的超集&#xff0c;所以也可以关注一下Type Script的语法来理解ArkTS的语法 ArkUI HarmonyOS提供了一套UI开发框架&#xff0c;即方舟开发框架&#xff08;ArkUI框架&#xff09;。方舟开发框架…

Cohere Command R+:企业级可扩展大模型

Command R 是一种最先进的 RAG 优化模型&#xff0c;旨在处理企业级工作负载&#xff0c;并首先在 Microsoft Azure 上提供 今天&#xff0c;我们推出了 Command R&#xff0c;这是我们最强大、可扩展的大型语言模型 &#xff08;LLM&#xff09;&#xff0c;专为在实际企业用…

Go语言图像处理深入指南:探索 `image/draw` 标准库

Go语言图像处理深入指南&#xff1a;探索 image/draw 标准库 引言基础知识图像类型颜色模型draw 包概览 image/draw 的基本用法创建和操作图像复制和粘贴图像遮罩和图像合成 高级技巧自定义图像处理性能优化多线程图像处理 实战案例图像滤镜实现动态图像生成图像处理工具开发 总…

2024年MathorCup妈妈杯C题终极资料分享(微调后可直接提交的数据结果+多种可视化呈现)

【腾讯文档】2024年妈杯认证杯资料汇总说明 https://docs.qq.com/doc/DSExyRGhNUm1pTHh4 我们直接将我们认为最为合适数据结果以及最好用的运行代码进行了整理以便大家可以在最后一天无法运行代码急需结果或者不会写代码时&#xff0c;提供帮助。、 % 数据加载 data readtab…

Vivado编译常见错误合集(一)

引言&#xff1a;本文对Vivado编译时常见的错误或者关键警告做一些梳理汇总&#xff0c;便于日后归纳总结。 1. 普通IO引脚约束为时钟时报错。 原因&#xff1a;Xilinx Vivado开发环境编译HDL时&#xff0c;对时钟信号设置了编译规则&#xff0c;如果时钟由于硬件设计原因分配…

Ceph [OSDI‘06]论文阅读笔记

原论文&#xff1a;Ceph: A Scalable, High-Performance Distributed File System (OSDI’06) Ceph简介及关键技术要点 Ceph是一个高性能、可扩展的分布式文件系统&#xff0c;旨在提供出色的性能、可靠性和可扩展性。为了最大化数据和元数据管理的分离&#xff0c;它使用了一…

MYSQL执行过程和顺序详解

一、前言 1.1、说明 就MySQL在执行过程、sql执行顺序&#xff0c;以及一些相关关键字的注意点方面的学习分享内容。 在参考文章的基础上&#xff0c;会增加自己的理解、看法&#xff0c;希望本文章能够在您的学习中提供帮助。 如有错误的地方&#xff0c;欢迎指出纠错&…

vue中使用axios获取不到响应头Content-Disposition的解决办法

项目中&#xff0c;后端返回的文件流; 前端需要拿到响应头里的Content-Disposition字段的值&#xff0c;从中获取文件名 在控制台Headers中可以看到相关的字段和文件名&#xff0c;但是在axios里面却获取不到 如果想要让客户端访问到相关信息&#xff0c;服务器不仅要在head…

嵌入式单片机 TTL电平、232电平、485电平的区别和联系

一、简介 TTL、232和485是常见的串口通信标准&#xff0c;它们在电平和通信方式上有所不同&#xff0c; ①一般情况下TTL电平应用于单片机外设&#xff0c;属于MCU/CPU等片外外设&#xff1b; ②232/485电平应用于产品整体对外的接口&#xff0c;一般是片外TTL串口转232/485…

<计算机网络自顶向下> CDN

视频服务挑战 规模性异构性&#xff1a;不同用户有不同的能力&#xff08;比如有线接入和移动用户&#xff1b;贷款丰富和受限用户&#xff09;解决方法是&#xff1a;分布式的应用层面的基础设施CDN 多媒体&#xff1a;视频 视频是固定速度显示的一系列图像的序列&#xff…

【ubuntu20.04】安装GeographicLib

下载地址 GeographicLib: Installing GeographicLib 我们是ubuntu20.04 &#xff0c;所以下载第一个 GeographicLib-2.3.tar.gz 接着跟着官方步骤安装&#xff0c;会出错&#xff01;&#xff01;&#xff01;&#xff01;马的 官方错误示例&#xff1a;tar xfpz Geographi…

YOLOV5 + 双目相机实现三维测距(新版本)

文章目录 YOLOV5 双目相机实现三维测距&#xff08;新版本&#xff09;1. 项目流程2. 测距原理3. 操作步骤和代码解析4. 实时检测5. 训练6. 源码下载 YOLOV5 双目相机实现三维测距&#xff08;新版本&#xff09; 本文主要是对此篇文章做一些改进&#xff0c;以及解释读者在…

微软搭建零售新媒体创意工作室大举抢占数字营销广告市场

“微软新零售创意工作室新平台利用生成式人工智能&#xff0c;在几秒钟内轻松定制横幅广告。零售媒体预计到2026年将成为一个价值1000亿美元的行业。” 零售媒体在过去几年中发展迅速。根据eMarketerOpens在新窗口的数据&#xff0c;预计到2024年&#xff0c;仅美国的零售媒体…

基于粒子群优化的配电网重构

一、配电网重构原理 配电网重构是指在满足配电网运行基本约束的前提下&#xff0c;通过改变配电网中一个或多个开关的状态对配电网中一个或多个指标进行优化。通过配电网重构&#xff0c;可以在不增加设备投资的情况下&#xff0c;充分发挥配电系统的潜力&#xff0c;提高系统…

【C语言】每日一题,快速提升(1)!

调整数组使奇数全部都位于偶数前面 题目&#xff1a; 输入一个整数数组&#xff0c;实现一个函数 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分 所有偶数位于数组的后半部分 解题思路&#xff1a; 给定两个下标left和right&#xff0c;left放在数组的起始…

【Web】VS Code 插件及快捷键

专栏文章索引&#xff1a;Web 有问题可私聊&#xff1a;QQ&#xff1a;3375119339 目录 一、安装步骤 二、插件 1.Chinese (Simplified) (简体中文) 2.open in browser 3.vscode-icons 4.Live Server 5.Live Server Preview 6.翻译(英汉词典) 三、快捷键 1.缩放代码…

Vivado ILA Capture Control 模式与 Advanced Trigger的功能使用以及TSM(触发状态机)的编写

文章目录 一、前言二、ILA的基本功能使用以及局限性2.1 ILA的调用2.2 ILA波形窗口观察2.3 ILA基本功能的局限性&#xff1a;如何观测低频的数据&#xff1f; 二、Capture Control 功能介绍三、Advanced Trigger功能以及TSM编写3.1 触发状态机的写法3.2 设置Advanced Trigger3.3…

MYSQL中的ER图

1.首先学习如何设计数据&#xff0c;在此之前我们先学会画出我们的规划图 利用Axure RP 9 然后进行以后的操作。其实非常简单看看就会

NODE MCU (ESP8285-ESP8266)用Arduino lDE 2.3.2烧录系统后串口监控不打印问题

问题: Arduino lDE 2.3.2,集合DOIT ESP-Mx DevKit板子,烧录代码后,串口监视器 打印不出来调试数据 分析: Arduino lDE 2.3.2工具提示,不支持调试 板载flash按钮无需按下,即可烧录系统,由于烧录和调试共用串口,所以怀疑是Arduino lDE 2.3.2在烧录时设置了串口的配置…