2021年数维杯国际大学生数学建模B题极端降雨的定量分析求解全过程文档及程序

news2024/11/15 19:29:24

2021年数维杯国际大学生数学建模

B题 极端降雨的定量分析

原题再现:

  近两年来,我国河南、陕西、湖北等地遭遇了极为罕见的暴雨。与此同时,北方一些城市遭遇了历史上罕见的暴风雪。这些暴雨和降雪对当地人民的生命、安全和财产构成严重威胁。以郑州市为例。7月18日18时至21日0时,郑州市出现暴雨和特大暴雨。累计平均降水量449mm,20日16:00~17:00郑州站降水量达到201.9mm,超过我国陆地每小时降水量的极值。而拥有千万人口的郑州正在经受暴雨的考验。7月17日开始断断续续下大雨,到7月20日上午,雨突然开始加大。当天下午,郑州市许多社区和道路被雨水淹没。郑州市气象局发布信息称,郑州市年平均降雨量为640.8mm,这三天的降雨量接近甚至超过往年。从气候学的角度来看,这是千年一遇。河南郑州市连续性暴雨给郑州市人民生命财产安全造成了巨大损失,严重影响了生产生活。截至7月23日12时,据初步统计,共紧急转移安置395989人,农作物受灾面积44209.73公顷,直接经济损失6550亿元,洪涝及暴雨次生灾害已造成数百人死亡。
  据相关研究人员介绍,在全球变暖的背景下,我国未来降水的数量、强度、频率和类型都将受到直接影响。预计本世纪末降水量将增加10%左右,极端降水的概率将显著增加。由于我国陆地面积大,加上各类地形地貌等因素的综合影响,不同城市的降水特征表现出不同的特点。因此,建立不同潜在极端降水事件城市的预测模型和损失定量分析模型势在必行。
  附件1为近70年郑州市3个气象站逐日降水观测资料。尝试使用数学建模解决以下问题:
  问题1:对郑州地区降水特征的年变化特征进行相关分析,筛选出降水量较高的年份。同时,对郑州市2021年的洪水事件进行了具体的定量分析。
  问题2:能否收集整理我国更多城市多年的降水数据,分析这些城市的降水趋势?(需明确说明数据来源及获取方式)
  问题3:您能否利用收集到的城市天气数据,根据不同的方法对未来可能出现极端降雨的城市进行预测和分析,并对比分析您的预测效果?
  问题4:您认为郑州2021年7月的暴雨特征与山西2021年10月的暴雨特征是否相同?造成损失的区别是什么。问题5:能否提出未来极端降水条件下城市的长期建设规划,其中对我国典型城市的深入分析尤为必要。
  数据描述:
  附件1为郑州市附件3各气象站70年气象观测资料。

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

  极端降水将对人民的生命、安全和财产构成严重威胁。目前,我国极端降水事件给当地人民带来了巨大的损失,因此建立极端降水事件的预测模型和损失定量分析模型十分必要。

  在任务1中,首先对数据进行预处理,以减少或消除数据中离群点的影响,进行后续的检测和分析。由于一年中缺少几天的资料,直接用资料中的总降水量代替相应的年总降水量会导致总降水量的减少和失真。为了减少数据失真的影响,利用Matlab计算年度数据的日平均降水量代替当年的日平均降水量,用该年的日平均降水量乘以当年的天数,得到相应年份的总降水量。随后,利用Mann-Kendall(M-K)方法对郑州地区降水进行突变分析,得到了2021年突变点的结果,与郑州市2021年暴雨的实际情况相吻合。利用小波分析方法分析了郑州市降水的周期关系,绘制了郑州市降水的实部等值线图、小波系数的模和模的平方、特征时间尺度的小波方差图和小波实过程线,并对2021年降水进行了分析。
  在任务2中,收集了1951-2019年北京和太原的降水数据,并在国家海洋和大气管理局(NOAA)和中国地面气候日数据集上进行了编译。然后计算了平均日降水量和年降水总量。随后,利用M-K方法对北京和太原的降水量进行分析,并利用小波分析对太原降水的周期信息进行分析,进一步分析降水趋势。
  任务3采用灰色预测和BP神经网络预测郑州、北京和太原2022、2023年的降水量,灰色预测值分别为38.04、38.77、24.35、25.56、17.08、17.07,相对绝对误差百分比分别为6.8832%、3.9433%和3.4808%。还绘制了图像。对于BP神经网络的预测,将降水量集划分为训练集和测试集,测试集用于检测神经网络的泛化能力。将预测值与实际值之差的绝对值除以实际值得到相对误差。取降水量预测相对误差的平均值,得到BP神经网络预测试验集的平均相对误差分别为16.37%、13.42%和20.59%,预测值分别为23.77、31.72、25.64、27.45、17.89和17.02。最后,通过分析对比预测结果,得出郑州市未来降水量仍较高的结论。从图像上看,北京未来可能出现极端降雨。
  在任务4中,我们对郑州和山西两省洪水淹没事件中暴雨的暴雨和洪水损失特征进行了梳理,发现两地的降雨特征不同,这与地理环境、气候等环境因素有关。同时,降雨特征和自然环境的差异也造成了两地洪水损失的差异。
  任务5总结了郑州市水灾事件的特点,发现我国大部分城市的规划建设虽然在一定程度上能够抵御特大暴雨天气,但短期内抵御特大暴雨的能力不足。以北京市为例,若将郑州市暴雨特征转移到北京市,北京市将发生严重内涝。对此,我们给出了城市的长远建设规划。最后,本文进行了评价和建模。

模型假设:

  1、问题中1、2、3号观测站大部分数据能够真实反映郑州市降水情况,即不会出现观测站故障,造成大部分数据失真。
  2、根据当年已存在的非异常日降水量计算的平均值,缺失数据较少,可代表当年的平均日降水量。
  3、前期降水可用于预测。

问题分析:

  数据分析
  观测资料发现,1号站1957年开始观测,2号站1983年开始观测,3号站1961年开始观测。1957年只有12月份的数据。1958~1964年的数据缺失较多,这将对结果产生较大影响。此外,1965~1972年降水资料的缺乏也会对下一步的研究产生一定的影响。因此,我们选取1972年至2021年的数据进行本研究。同时,我们需要考虑数据的真实性。如果不是真实数据,需要替换或删除异常数据进行平滑处理。

  问题1分析

  问题一可分为以下三个问题:
  1) 首先计算年平均降水量,然后进行相关分析。
  2) 对郑州市降水特征的年变化特征进行了突变分析和周期分析。首先,利用M-K方法对郑州市年降水序列中是否存在突变点进行检测和诊断,找出突变点,验证郑州市2021年暴雨的真实性。其次,利用小波时间序列分析方法,充分了解降雨序列是否随时间呈周期性变化趋势。
  3) 暴雨事件是一个复杂的系统。针对郑州市特大暴雨事件,重点研究了致灾因素和孕灾环境。致灾因子是基于层次分析法建立的暴雨灾害风险指标体系。灾害孕育环境是暴雨所特有的自然环境。通过对郑州市暴雨事件的定量分析,为我国城市规划防灾减灾提供参考。

  问题二分析
  第二个问题是,我们需要分析近年来中国更多城市的降水趋势。首先,我们需要有准确和真实的数据来源。建议通过国家气象数学中心和NOAA网站获取北京和山西历年的降水量、最大风速、海平面气压和能见度观测值,以供参考。然后利用年降雨量绘制折线图来反映变化趋势,并通过M-K检验和小波分析对变化特征进行分析。

  问题三分析
  第三个问题是建立不同潜在极端降水事件城市的预测模型。有多种预测模型可供选择,如Logistic、Markov、数据挖掘、深度学习等,但仍需结合本课题的降雨数据。同时,数据的采集和处理仍然是研究的重点。针对数据量的局限性,选用灰色预测法和BP神经网络对降水数据进行预测,并对预测结果进行对比分析,找出可能出现极端降水的城市。

  问题4的分析
  通过国家统计局、人民网、中新网、郑州等官方媒体,收集郑州、山西两省暴雨特征及暴雨损失数据,总结两地暴雨特征,对比分析两地洪水损失差异。结合两地的地理环境和暴雨特点,简要分析了造成洪水损失差异的原因。

  问题五的分析
  暴雨不仅是长期持续降水的累积效应,也是短期强降水引起的。我国的暴雨过程,特别是特大型极端暴雨过程,一般伴随着极端短期强降水天气[1],如2007年7月18日济南、2012年7月21日北京、2015年8月17日南充等,总体来看,郑州的暴雨事件将给任何城市造成巨大损失。因此,有必要对极端暴雨和极端短时强降水进行深入研究,特别是对北京、郑州等大城市灾害性极端暴雨的城市规划研究。

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

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

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

程序代码:

for i = 1:19447
if GuanCeZhan1{i,2}==99.99
for j = 1:18665
% Check whether observation  station 3 has this date.
%If there is such a date, the data will be replaced
if GuanCeZhan3{j,1}==GuanCeZhan1{i,1}
GuanCeZhan1{i,2}=GuanCeZhan3{j,2};
end
end
end
end
%For the data of observation station 1 replaced by observation station 3, use the same method to
replace observation station 1 with the data of observation station 2 (because it may still be an
abnormal value after replacing the abnormal value with 3)
for i = 1:19447
if GuanCeZhan1{i,2}==99.99
for j = 1:13973
%Check whether observation station 2 has this date. If so, replace the data
if GuanCeZhan2{j,1}==GuanCeZhan1{i,1}
GuanCeZhan1{i,2}=GuanCeZhan2{j,2};
end
end
end
end
%For the data that cannot be replaced (such as the data not available at the other two observation
stations in front of observation station 1), use the average value of the nearest rainfall to replace it
for i = 1:19447
if GuanCeZhan1{i,2}==99.99
for j=1:min(i-1,19447-i) %In order to keep the array from crossing the boundary, find
the nearest number in the maximum searchable radius that is not 99.99
if (GuanCeZhan1{i+j,2}~= 99.99)&&(GuanCeZhan1{i-j,2}~= 99.99)
GuanCeZhan1{i,2}=(GuanCeZhan1{i-j,2}+GuanCeZhan1{i+j,2})/2;
end
end
end
end
%Check whether 99.99 still exists. If a appears in the variable, it still exists
for i = 1:19447
if GuanCeZhan1{i,2}==99.99
a=1;
end
end
ZuiZhongGuanCeZhan1=cell(19447,2);
for i = 1:19447
ZuiZhongGuanCeZhan1{i,1} = char(JGGuanCeZhan1{i,1});
end
%Extraction year
for i = 1:19447
ZuiZhongGuanCeZhan1{i,1} = ZuiZhongGuanCeZhan1{i,1}(1:4);
end
%Convert year to number
for i = 1:19447
ZuiZhongGuanCeZhan1{i,1} = str2num(ZuiZhongGuanCeZhan1{i,1});
end
%Make up the precipitation in the second column and convert it into a digital matrix as a whole
ZuiZhongGuanCeZhan12=zeros(19447,2);
for i = 1:19447
ZuiZhongGuanCeZhan12(i,1) = ZuiZhongGuanCeZhan1{i,1};
ZuiZhongGuanCeZhan12(i,2) = JGGuanCeZhan1{i,2};
end
%Calculate the average annual precipitation
NianZong = zeros(19447,2); %The total annual precipitation, but due to the lack of individual
days, it will be very small in individual years, so it will be more convincing to use the average
precipitation
NianPingJun = zeros(19447,2); %Average annual precipitation
NianZong(1,2) = ZuiZhongGuanCeZhan12(1,2);
j = 1; %j is used to count how many times it is added every year
k = 1; %k is used to put the number of years of change on the next line, starting with the first line
for i = 1:19447-1%-1 is because 19447 will be added to 19446
MuQianNianFen = ZuiZhongGuanCeZhan12(i,1); %What year is it now, the current year
XiaYiGeNianFen = ZuiZhongGuanCeZhan12(i+1,1); %What year is to be added, the next
year
if MuQianNianFen == XiaYiGeNianFen
%If the years are the same, the number of rows remains the same, and the data of the next
year is added
NianZong(k,2) = NianZong(k,2)+ZuiZhongGuanCeZhan12(i+1,2);
j = j+1; %How many numbers have been added to the calculation
else
%If the years are different, cut down one line and add the data
NianPingJun(k,2) = NianZong(k,2)/j;
%If the years are different, start calculating the previous average
j = 1; %Initialize j
k=k+1;
NianZong(k,2) = NianZong(k,2)+ZuiZhongGuanCeZhan12(i+1,2);
end
%Finally, the average precipitation in 2021 is calculated
NianPingJun(k,2) = NianZong(k,2)/j;
end
nianfen = [1957:1964,1973:2021]';
NianZong(1:57,1) = nianfen;
NianPingJun(1:57,1) = nianfen;
NianPingJun = NianPingJun(1:57,:);

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

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

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

相关文章

不知道CRM系统怎么选?这十款值得推荐

许多想要购买CRM软件的客户都因为市场上产品数量众多而不知从何下手。因此,我们以企业实力、品牌荣誉、企业在行业内的排名情况,结合网络口碑等多种因素为基础,为国内CRM软件建立了以下排行榜,并重点介绍排行榜前十的CRM软件供应商…

基于CNN+数据增强+残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)+数据集+模型(三)

系列文章目录 基于CNN数据增强残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)数据集模型(一) 基于CNN数据增强残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)数据集模型&#xf…

智能优化算法应用:基于平衡优化器算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于平衡优化器算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于平衡优化器算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.平衡优化器算法4.实验参数设定5.算法…

Leetcode—1502.判断能否形成等差数列【简单】

2023每日刷题&#xff08;五十九&#xff09; Leetcode—1502.判断能否形成等差数列 实现代码 class Solution { public:bool canMakeArithmeticProgression(vector<int>& arr) {sort(arr.begin(), arr.end());int diff abs(arr[1] - arr[0]);for(int i 1; i <…

PyQt6 表单布局Form Layout (QFormLayout)

锋哥原创的PyQt6视频教程&#xff1a; 2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 PyQt6 Python桌面开发 视频教程(无废话版) 玩命更新中~共计43条视频&#xff0c;包括&#xff1a;2024版 PyQt6 Python桌面开发 视频教程(无废话版…

react经验7:高亮关键字

预期效果&#xff1a; 实现原理 将需要高亮的关键词做成正则表达式 new RegExp((${word}), "gi")使用上述正则表达式切割目标字符串 origin.split(new RegExp((${word}), "gi"))切割结果会包含正则匹配到的词 过滤掉空字符&#xff0c;并对关键词包裹…

实在智能“数字员工”荣获工信部赛宝信创“全栈优秀解决方案奖”

近日&#xff0c;由工信部和中国通信企业协会主办的“2023&#xff08;第四届&#xff09;数字化转型推动高质量发展大会”在海口成功举办&#xff0c;大会现场重磅发布了中国赛宝信息技术应用创新优秀解决方案获奖名单&#xff0c;实在智能《信创RPA-统计局数智办公解决方案》…

24年五年制专转本招生院校有可能发生变动

据悉&#xff0c;24年五年制专转本院校可能将发生改变&#xff0c;南京传媒学院有可能停止招生 将新增一所招生大学&#xff1a;南京航空航天大学金城学院 南京航空航天大学金城学院始建于1999年&#xff0c;是南京航空航天大学联合社会力量创办的独立学院。学校位于江苏省南京…

Vue学习计划-Vue2--VueCLi(五)全局事件总线、消息订阅与发布(pubsub)

抛出问题:我们多级组件&#xff0c;或者任意不想关的子组件如何传递数据呢&#xff1f; 1. 全局事件总线&#xff08;$bus&#xff09; 一种组件间通信的方式&#xff0c;适用于任意组件间通信 全局事件总线示意图&#xff1a; 安装全局事件总线&#xff1a; new Vue({..…

代码随想录二刷 | 二叉树 | 110.平衡二叉树

代码随想录二刷 &#xff5c; 二叉树 &#xff5c; 110.平衡二叉树 题目描述解题思路递归迭代 代码实现递归法迭代法 题目描述 110.平衡二叉树 给定一个二叉树&#xff0c;判断它是否是高度平衡的二叉树。 本题中&#xff0c;一棵高度平衡二叉树定义为&#xff1a; 一个二叉…

首发卡密引流系统源码

程序特色&#xff1a; 支持个人和企业小程序广告获取卡密。 支持短视频点赞和关注获取卡密。 搭建教程&#xff1a; 环境要求&#xff1a;Nginx、MySQL 5.6、PHP 5.6 步骤&#xff1a; 将压缩包解压至网站根目录。 打开域名/install&#xff0c;按照提示填写数据库信息进行…

【Android】使用 Glide 给 ImageView 加载图像的简单案例

前言 Android Glide是一个用于在Android应用中加载和显示图片的流行开源库。它提供了简单易用的API&#xff0c;可以帮助开发者高效地加载远程图片、本地图片以及GIF动画&#xff0c;并提供了缓存、内存管理等功能&#xff0c;使得图片加载在移动应用中更加流畅和高效。Glide还…

智慧健康监测设备行业分析:中国市场发展潜力巨大

中国智慧健康行业市场规模呈逐年快速增长态势&#xff0c;年均复合增长率超过40%。其中智能可穿戴设备出货量巨大。国务院办公厅印发《“十四五”国民健康规划》。规划提出&#xff0c;促进健康与养老、旅游、互联网、健身休闲、食品等产业融合发展&#xff0c;壮大健康新业态、…

谁能更好地检测深度伪造?人还是机器?

不知您是否听说过深度伪造&#xff08;Deepfakes&#xff09;这种欺诈应用&#xff1f;由它产生的各种虚假信息已威胁到了人类社会的方方面面。随着人工智能技术的进步&#xff0c;我们亟待提升识别虚假内容的能力。那么在实际检测假新闻可信度等用例时&#xff0c;到底是人类还…

营销投放下半场,游戏行业如何寻觅进化空间?

摘要&#xff1a;微博&#xff0c;游戏行业突围市场新利器 游戏行业&#xff0c;格局永远在变。 从2017年互联网大厂集体盯上游戏大蛋糕&#xff0c;到2021年行业收缩&#xff0c;再到今年上半年实际销售收入继去年首次出现同比下滑…几经过山车式行情的游戏行业&#xff0c;…

Vue3上传图片和删除图片

<div class"illness-img"><van-uploader:after-read"onAfterRead"delete"onDeleteImg"v-model"fileList"max-count"9":max-size"5 * 1024 * 1024"upload-icon"photo-o"upload-text"上传图…

Attention机制学习

写在前面 注意力机制是一个很不错的科研创新点方向&#xff0c;但是没有系统记录过学习过程&#xff0c;这里记录科研中遇到的各种注意力机制。 Attention机制解释 本质上来说用到attention的任务都有Query&#xff0c;Key&#xff0c;Value三个关键components&#xff0c;目标…

LeetCode 300最长递增子序列 674最长连续递增序列 718最长重复子数组 | 代码随想录25期训练营day52

动态规划算法10 LeetCode 300 最长递增子序列 2023.12.15 题目链接代码随想录讲解[链接] int lengthOfLIS(vector<int>& nums) {//创建变量result存储最终答案,设默认值为1int result 1;//1确定dp数组&#xff0c;dp[i]表示以nums[i]为结尾的子数组的最长长度ve…

“文思助手”苏哒智能加入飞桨技术伙伴计划,共同打造“大模型+企业办公”新模式

近日&#xff0c;厦门苏哒智能科技有限公司正式加入飞桨技术伙伴计划&#xff0c;双方将发挥各自的专业优势&#xff0c;共同致力于在智能办公和创作领域实现技术突破和业务创新&#xff0c;帮助企业、知识工作者大幅提高生产力。 厦门苏哒智能科技有限公司 厦门苏哒智能科技有…

前端自定义icon的方法(Vue项目)

第一步&#xff1a;进入在线的编辑器进行设计 好用&#xff1a;百度字体编辑器 比如先导入有个ttf文件 添加新字体 双击每个模块进入编辑区域 更改相应的信息&#xff0c;比如name 编辑完了进行导出文件(各种格式就行了)就行了 第二步&#xff1a;在项目中asset文件储存这些文…