2014年第三届数学建模国际赛小美赛A题吹口哨解题全过程文档及程序

本文主要是介绍2014年第三届数学建模国际赛小美赛A题吹口哨解题全过程文档及程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2014年第三届数学建模国际赛小美赛

A题 吹口哨

原题再现:

  哨子是一种小装置,当空气被迫通过开口时会发出声音。哨声的巨大而引人注目,使其对警察和体育裁判来说至关重要。当救生员、迷路的露营者或犯罪受害者使用它们时,它们可以挽救生命。专业的口哨需要产生高强度的声音。如何设计世界上最响的口哨?

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

  为了解决这一问题,我们提出并评估了两个基本模型。利用有限元分析软件对模型进行求解,得到最优解(理想条件下的最大声强为166 dB左右)。更重要的是,我们创造性地认识到强度受内在和外在因素的影响。在此基础上,以足够合理的参数对实际情况进行了分析。然后,我们可以寻求最优的解决方案,无论具体的要求是不同的应用。此外,我们还对我们的数据和因素,主要是内在参数进行了充分的敏感性分析。

  在湍流模型中,基于从开口到末端追踪空气的目的,采用简单的策略来推断声音是如何产生的。提出了一些假设和机理,为后来改进和推广的模型奠定了基础,通过这个模型,我们可以找到一些用于计算声强的数据。一般采用ANSYS来实现该模型。

  在气-声转换模型中,首先考虑湍流模型得到的结果,然后计算这些激励参数与最终输出(强度)之间的关系。用近似理论建立方程,计算结果。我们对不同的内在因素进行敏感性分析,以评估我们的策略并找到最优解。采用田口DOE方法进行灵敏度分析,效率更高。

  在改进的模型中,首先考虑了基本模型的不足,描述了环境和用户对强度影响较大的实际情况。物理研究的信息是我们分析的基础。由于口哨从民用到军用都有着广泛的应用,因此,我们在模型中引入了策略并解释了机制,从而可以计算出特定条件下模型的最优解。

  最后,我们将我们的模型与其他模型进行了比较,并通过仿真进行了验证。我们对我们的模型进行了反思,并对我们的模型在实际情况下能够轻松有效地解决问题进行了评价,但还有一些问题需要进一步完善,例如,吹口哨是一个多目标问题。

模型假设:

  假设环境包括温度、湿度是稳定的

  假设吹入的空气是理想气体,这意味着没有分子间的相互作用,分子本身不占任何体积。

  假设气体的雷诺数为零。

  假设该腔体的粗糙度不存在。

  假设气体粘度为固定值。

  假设腔体不存在变形

  假设密封室密封良好

问题重述:

  如何估计口哨的整个过程?
  声强受多个因素控制,但这几个优化因素尚未明确确定。有必要选择最重要的部分,因为其他部分可能毫无意义。
  流体动力学过程是一个复杂的过程,仅仅通过实验是无法得到清晰的结果的。用软件追踪哨声中的空气是最有效的方法。
  根据物理学中流体力学的相关知识,不难找到重要元素与声(声)强之间的内在联系,即通过建立数学模型和方程来推导结果。

  如何定义最佳配置?
  从临界尺度的角度,分析了影响哨声特性的重要因素,包括气压和速度。通过查阅大量的研究资料,我们发现圆形哨声在生活中是普遍存在的,具有优良的性质。因此,我们选择圆度作为基本形状。对于其它工艺参数,基于工艺模拟和正交分析方法,对各参数进行比较后,通过重复模拟进行优化。以形状为主,其他参数可稍后确定。

  总体优化
  通过仿真计算,得到了圆形哨子的近似最优解。与其他形状(如矩形)相比,圆形口哨是否能发出最大的声音是不确定的。在保持气室比例不变的情况下,改变不同的形状,进行强度分析。
  经过一系列的模拟,我们应该找到必要的因素和他们的优先次序,其他可能没有意义的设计一个响亮的口哨。因此,在考虑灵敏度和鲁棒性的基础上,提出了一种新的优化哨子算法。
  实际上:声音强度可能会受到外部参数的影响,例如温度、湿度、人的技能。这些参数可能不是由特定的模型计算的,但它们可能对强度有很大的影响。

  如果没有可用数据怎么办?
  物理问题的目标函数使用机制,社会科学的目标函数使用数据。显然,我们可以从物理和科学论文中获得一些数据。所有模拟和模型都基于这些数据。

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

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

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

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

x=linspace(0,1.5,100);
y=(6/9.463822)*x.^(-1)-(1/9.463822)*x.^2;
plot(y,x);
hold on;
plot(0.05*y,x);
hold on;
plot(0.1*y,x);
hold on;
plot(0.2*y,x);
hold on;
plot(0.3*y,x);
hold on;
plot(0.4*y,x);
hold on;
plot(0.5*y,x);
hold on;
plot(0.6*y,x);
hold on;
plot(0.7*y,x);
hold on;
plot(0.8*y,x);
hold on;
plot(0.9*y,x);
hold on;
%plot(0.5*y,x);%hold on;
%plot(0.5*y,x);
text(0.5,1.5,'')
xlabel('p/p1');
ylabel('U/U*');hold on;
/
x=linspace(0,1.0,100);
y=1.095445115*x.^(1/7);
plot(x,y);
xlabel('p0/p1');
ylabel('c0/U*');hold on;
/
clear all
u=22.12;
a=0.86;
p=101315.39;
k=340/(1.4*u);
w=(a*a)*p*p/(2*2.39*340*(1+k)^2)/10^-12;
db=10*log10(w);
db
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

这篇关于2014年第三届数学建模国际赛小美赛A题吹口哨解题全过程文档及程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/543274

相关文章

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置

Python实现合并与拆分多个PDF文档中的指定页

《Python实现合并与拆分多个PDF文档中的指定页》这篇文章主要为大家详细介绍了如何使用Python实现将多个PDF文档中的指定页合并生成新的PDF以及拆分PDF,感兴趣的小伙伴可以参考一下... 安装所需要的库pip install PyPDF2 -i https://pypi.tuna.tsingh

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

Python批量调整Word文档中的字体、段落间距及格式

《Python批量调整Word文档中的字体、段落间距及格式》这篇文章主要为大家详细介绍了如何使用Python的docx库来批量处理Word文档,包括设置首行缩进、字体、字号、行间距、段落对齐方式等,需... 目录关键代码一级标题设置  正文设置完整代码运行结果最近关于批处理格式的问题我查了很多资料,但是都没

基于Python开发PDF转Doc格式小程序

《基于Python开发PDF转Doc格式小程序》这篇文章主要为大家详细介绍了如何基于Python开发PDF转Doc格式小程序,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用python实现PDF转Doc格式小程序以下是一个使用Python实现PDF转DOC格式的GUI程序,采用T

Python自动化Office文档处理全攻略

《Python自动化Office文档处理全攻略》在日常办公中,处理Word、Excel和PDF等Office文档是再常见不过的任务,手动操作这些文档不仅耗时耗力,还容易出错,幸运的是,Python提供... 目录一、自动化处理Word文档1. 安装python-docx库2. 读取Word文档内容3. 修改

将java程序打包成可执行文件的实现方式

《将java程序打包成可执行文件的实现方式》本文介绍了将Java程序打包成可执行文件的三种方法:手动打包(将编译后的代码及JRE运行环境一起打包),使用第三方打包工具(如Launch4j)和JDK自带... 目录1.问题提出2.如何将Java程序打包成可执行文件2.1将编译后的代码及jre运行环境一起打包2

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import