2024年APMCM亚太杯中文赛A题——飞行器外形的优化问题

本篇文章为大家分享2024年APMCM亚太杯中文赛A题——飞行器外形的优化问题的解题思路以及第一问的完整求解代码与结果,四问的完整解答请看文章最后!

解题思路

飞行器是在大气层内或大气层外空间飞行的器械,飞行器通常由机体和飞行舱组成,如何优化飞行器的外形,使得其所受阻力最小,是航空航天领域里面非常重要的基础科学问题。本文通过飞行器的物理结构、流体力学相关知识,建立了最优化模型,对飞行器的最有结构进行了求解。

对于问题一,对于飞行器的表面积和体积进行求解,首先对于飞行器进行简化,本文认为飞行器由主体和机翼构成,对于两部分分别进行求解,对于主体部分,分为前部和后部进行求解,认为横截面是椭球面,通过积分求得相应的表面积和体积,对于机翼部分认为由两个抛物线构成,并通过积分求得飞行器的表面积。

对于问题二,对于飞行舱体的表面积和体积进行求解,通过对舱体进行研究发现舱体由圆柱体和半球体构成,根据圆柱体和半球体的体积和表面积公式,建立飞行舱体的数学模型,得出飞行舱体的表面积。

对于问题三,根据飞行器结构参数的取值范围,设计飞行器的最佳外形,使得飞行器的阻力最小。根据飞行器流体力学的研究,得出飞行器飞行过程中的阻力计算公式,我们以飞行器的结构参数作为自变量,飞行器的结构和物理限制作为约束条件,建立了以飞行阻力最小为目标的最优化模型,并通过遗传算法进行求解,得出飞行器最小的阻力。

对于问题四,在问题三的基础上,加入了飞行器外形曲线的考量,分别考虑四种圆锥曲线作为飞行器的外形,本文在问题三的基础上,对飞行器的曲线函数进行修改,同时建立了以飞行阻力最小为目标的最优化模型,并通过遗传算法进行求解,得出最优的外形曲线为双曲线形,此时阻力最小。

问题一

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O59itCyK-1721488952951)(https://i-blog.csdnimg.cn/direct/41555c1d7e004e7e854102ad2dfe7dce.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vggvo25y-1721488952953)(https://i-blog.csdnimg.cn/direct/46839dc217f441c7bd81d6a1b94da6e5.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ilh7IMdk-1721488952953)(https://i-blog.csdnimg.cn/direct/752dd74fced34a58b3035b9219ec5a5b.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-E0nigJ8E-1721488952954)(https://i-blog.csdnimg.cn/direct/48c2bbff1fe946ae9040dbe2f4b1adca.png)]

第一问结果

最终通过以上建立的飞行器表面积和体积的模型通过matlab进行求解得飞行器的表面积为50712000平方厘米,体积约为84852000立方厘米

第一问代码

clc
clear
h=200;
l=400;
a=500;
b=90;
s1=2*h*(2*pi*b+4*a-4*b)/3;
v1=a*b*pi*(h);
s2=2*l*(2*pi*b+4*a-4*b)/3;
v2=a*b*pi*(l);
V1=v1+v2;
S1=s1+s2;

w=24;
L=1000;
l=0.3;
x=w;
l1=2*(w^4)*asin(2*l*x/(w^2))+4*l*x*sqrt(4*l^2*x^2+w^4)/(4*l*w^2);
l=0.6;
l2=2*(w^4)*asin(2*l*x/(w^2))+4*l*x*sqrt(4*l^2*x^2+w^4)/(4*l*w^2);
S2=(l1+l2)*L;
c1=2*w*0.3-0.3*2*w^3/(3*w^2);
c2=2*w*0.6-0.6*2*w^3/(3*w^2);
V2=(c1+c2)*L;

S=S1+S2
V=V1+V2
  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第十二届APMCM亚太杯D要求我们设计一种算法,在给定的城市地图中,找到两个点之间的最短路径,并求出路径上所有连接点的数量。 首先,我们可以使用迪杰斯特拉算法来寻找两点之间的最短路径。迪杰斯特拉算法能够在有向图中找到单源最短路径,并且可以处理边权重为负数的情况。我们可以根据城市地图构建一个有向图,并将连接两点的路径权重设为连接两点之间的距离。 接着,我们可以使用一个数组或优先队列来存储从起点到其他顶点的当前最短路径的估计值。我们将起点的估计值设为0,其他顶点的估计值设为无穷大。 然后,我们以起点为中心,从数组或队列中选择估计值最小的顶点。然后将该顶点标记为已访问,并更新与之相邻的顶点的估计值(如果新的估计值更小)。我们不断重复这个过程,直到所有顶点都被访问过且更新过它们的估计值。 最后,在迪杰斯特拉算法执行过程中,我们可以记录下起点到每个顶点的最短路径长度,并将其存储在数组中。此外,我们可以通过在迭代过程中记录前驱节点的方式,构建最短路径。 为了求解路径上所有连接点的数量,我们可以在构建最短路径的过程中对经过的节点进行计数。当我们找到终点时,我们就可以得到起点到终点的最短路径的长度,并通过减去起点与终点之间的直线距离来得到路径上所有连接点的数量。 综上所述,我们可以使用迪杰斯特拉算法来解决第十二届APMCM亚太杯D。算法的详细思路包括图的构建、估计值更新、最短路径构建以及路径上连接点数量的计算。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值