2024年认证杯SPSSPRO杯数学建模
C题 云中的海盐
原题再现:
巴黎气候协定提出的目标是:在2100年前,把全球平均气温相对于工业革命以前的气温升幅控制在不超过2摄氏度的水平,并为1.5摄氏度而努力。但事实上,许多之前的研究已经指出,全球的碳排放以及气温升温的前景都无法达到这一预期标准。而且传统的减排措施的实施效果较为有限。为了应对全球变暖,一些科学家提出了叫做"地球工程"的改造手段。包括使用人工手段从空气中分离并储存二氧化碳,或者给大气中注入气溶胶以降低地表接收到的日光辐射量等等。由于大型火山活动喷出的硫化物微粒可以使全球大气在数年间有明显的降温,所以有人提出可以向平流层释放硫酸盐气溶胶等颗粒物以模拟这类效应。但这种思路引起了许多反对意见,因为硫酸盐进入大气会造成大气化学成分的变化,可能造成后果未知的污染问题。进而,有人又提出,可以在海面上空以及低层海云内喷洒雾化的海水,使海盐气溶胶混入云层,也能起到增加云层反照率、降低海面接收到的日光辐射量的效应。而且由于海盐气溶胶本就在海上广泛存在,所以不容易造成新的污染。对这个方案,我们希望建立合理的数学模型以估算它的一系列后果。请你和你的团队建立合理的数学模型以解决下列问题:
第一阶段问题:
1. 在海面上空以及低层海云内喷洒雾化的海水是否确实可以起到降低海面接收到的日光辐射量的效应?这个效应的强弱与哪些参数有关?
2. 请在第1问的基础上,定量地估计若在(当工程参数确定后)实施此项工程,海面接收到的日光辐射量能够降低多少?
3. 请在第2问的基础上,定量地估计全球平均温度能够降低多少?
4. 请在第2问的基础上,定量地估计全球地表温度降温幅度的分布。
请自行寻找建模所需要的数据,有许多机构开放下载全球范围内的气象数据。以下列表仅供参考:
https://www.ncei.noaa.gov/maps-and-geospatial-products
https://disc.gsfc.nasa.gov/datasets?project=MERRA-2
https://www.psl.noaa.gov
整体求解过程概述(摘要)
全球碳排放的增加导致大气中二氧化碳浓度上升,引发全球气温上升。为应对全球变暖,海洋云增白技术通过在海面上空以及低层海云内喷洒雾化的海水,使海盐气溶胶混入云层,从而增加云层反照率、降低海面接收到的日光辐射量。此方法环境风险较低,且有效利用海洋资源为全球气候变暖问题提供新的解决途径。本文旨在探讨利用海水喷洒技术对海面接收到的日光辐射量以及全球气温的影响,并建立了相应的数学模型进行定量估算。
针对问题一:首先,我们基于太阳辐射原理构建日光辐射模型,计算海域日光辐射量。然后通过研究海水喷洒技术的物理机理和海洋大气相互作用过程,引入自注意力机制评估影响因子权重,分析对海面接受日光辐射量影响较大的影响因子,并提出影响效应强弱的关键参数。最后通过数值模拟、pearson 相关性分析、注意力模型、灰色关联度和灵敏度分析,我们发现海水喷洒可以显著降低海面接收到的日光辐射量,且经分析可知其效应与所选工程参数之间存在明显的关联。
针对问题二:首先,固定工程参数,以辐射传输理论为基础,构建估算有效辐射的分段式辐射传输模型。然后以气溶胶光学厚度、云层厚度、风速及海盐浓度数据为输入参数,综合考虑其对太阳辐射的影响,并计算各参数的大气透过率和晴天有效辐射。最后,基于logistic 回归模型定量估计海面接收到的日光辐射量的降低程度。
针对问题三:在问题二的基础上,我们考虑地球表面接收太阳辐射和地球向外辐射的能量之间的平衡,结合斯特凡-玻尔兹曼定律和能量平衡模型来构建全球平均温度变化模型。用来估算地球的平衡温度,即在平衡时地球的平均温度。进一步推导了全球平均温度以及全球平均温度降温的预期数值。
针对问题四:首先,为了更准确地描述地表温度变化,我们在地表温度变化模型的基础上,结合气候系统模型、气候反馈机制和有效辐射的分段式辐射传输模型建立耦合偏微分方程组来描述地球系统的动态过程。然后使用循环神经网络模型对全球地表温度降温幅度的分布进行了预测分析,揭示了其地域差异性和分布特征。最后,我们以地理位置、海洋和陆地、大气环流、地形和海拔等角度,针对不同季度对全球地表温度降温幅度分布进行可解释性分析。
问题重述:
问题背景
随着工业化进程的加速和碳排放的持续增加,全球气温持续上升,给地球环境带来了巨大的挑战,全球气候变化已成为人类面临的重大挑战之一。为了应对这一严峻的问题,国际社会通过了巴黎气候协定,旨在控制全球气温上升,将气候变化的影响降到最低程度,避免气候变化对地球环境和人类社会造成严重影响。然而,许多研究表明,传统的减排措施难以达到预期标准,全球碳排放和气温上升的前景并不乐观。 面对这一挑战,一些科学家提出了名为"地球工程"的改造手段。地球工程是指利用人工手段调节地球的气候系统,以减缓气候变化的进程。其中包括一系列大胆的想法和技术,如从空气中分离并储存二氧化碳、注入大气中的气溶胶以降低地表的日光辐射量等。其中,一项备受关注的技术是在海面上空以及低层海云内喷洒雾化的海水。这项技术的原理是通过喷洒海水形成海盐气溶胶,使其混入云层中,从而增加云层的反照率,减少地表接收到的日光辐射量,进而降低地球的气温。与其他地球工程方案相比,这项技术具有较低的成本和较少的环境风险,因为海盐气溶胶本身就是自然存在的。
然而,这一方案的实施效果及其对全球气候的影响仍然存在许多未知因素,需要通过建立模型来进行评估和预测。针对这一问题,本文将建立数学模型,以解决以下一系列问题:海水喷洒技术的效果及影响因素:我们首先将探讨海水喷洒技术是否确实能够降低海面接收到的日光辐射量,以及这一效果与哪些参数相关。其次,在确认了技术的有效性后,我们定量估计实施这项工程后海面接收到的日光辐射量能够降低多少,进而推算全球平均温度能够下降多少以及全球地表温度降温幅度的分布情况,以了解这项技术对地球不同地区的影响。
通过科学的研究和分析,建立合理的数学模型来模拟和预测这些复杂的气候系统变化过程。本文为探索海水喷洒技术的潜力以及其可能带来的影响提供科学依据,为应对全球变暖提供新的思路和解决方案,为应对气候变化提供科学依据和技术支持,为全球环境保护和可持续发展贡献力量。
问题的提出
本次数学建模旨在评估海面喷洒雾化海水的地球工程方案对海面接收到的日光辐射量、全球平均温度以及全球地表温度的影响。首先进行数据清洗,数据整合,采用辐射传输理论来建立模型,以描述光线在大气和海水中的传播和吸收过程。包括辐射传输方程、海水和云层的光学特性以及考虑的工程参数。利用数值求解方法和模拟过程,包括模型的参数选择和边界条件等,求解建立的辐射传输模型,得到海面接收到的日光辐射量在不同条件下的变化情况。通过模拟不同情景下的海面日光辐射量,评估海水喷洒工程对降低海面接收到的日光辐射量的效果。使模型的预测结果更加逼近真实,以提高日光辐射估计的精确性。
问题一:要求评估在海面上空以及低层海云内喷洒雾化海水对海面接收到的日光辐射量的影响,并确定影响效应的相关参数。利用海域高程模型数据地形资料和气象观测资料,收集气象观测站点太阳辐射数据、海水喷洒雾化和日光辐射量数据和文献资料,包括海水喷洒雾化的频率和喷洒高度、海洋环境参数、气候条件、地理位置等信息。基于太阳辐射原理,建立晴日任意倾角方位角太阳逐时辐射模型,模拟各站点逐时太阳辐射量。然后,具体考虑海平面上的水平面与任意倾斜面的太阳辐射的逐时变化过程,将日光总辐射以直接辐射为主,计算日光辐射量。接下来,基于深度学习的图注意网络模型和 Lambert-Beer 定律建立自注意力机制模型来描述海水喷洒后形成的气溶胶对日光辐射的吸收和散射效应,通过计算各影响因子的权重评估其对海面日光辐射量的影响。可能的影响因素包括:海盐气溶胶的分布和浓度、云层反照率、海洋表面温度的变化对云层形成的影响、风速、海盐浓度和湿度等。将模型中的参数进行数值化,并进行数值模拟来评估不同参数组合下海水喷洒雾化对海面日光辐射量的影响程度。最后,整合日辐射量数据,并分别与气溶胶、风速、云层厚度、海盐浓度等影响因素做 pearson 相关性分析,进一步验证影响因子对于在海面上空以及低层海云内喷洒雾化的海水是否确实可以起到降低海面接收到的日光辐射量的效应强弱的有效性。通过模拟结果,并与实际数据对照反演,表明了模型结构的有效性。
问题二:要求在问题一的基础上,当工程参数确定后,定量估计喷洒雾化海水对海面接收日光辐射量的降低程度。首先采用偏微分方程组结合云层反照率增加效应、海洋表面温度调节效应和水汽含量调节效应,建立日光辐射量变化模型。然后通过控制变量法,控制海水喷洒密度、海盐浓度、海水喷洒量、海水温度、环境湿度等参数,用以描述海洋表面温度、大气温度、水汽含量等随时间和空间的变化情况。最后,结合边界条件和初始条件进行求解,并通过调整不同参数的数值,描述分析海面上空以及低层海云内喷洒雾化的海水对海面接收到的日光辐射量的影响,确定最优的工程参数组合。
问题三:要求在问题二的基础上,定量的评估全球平均温度降低程度。因为在问题二中已经验证喷洒雾化海水会降低海面接收日光辐射量。所以本小题我们目的要建立日光辐射量与全球平均温度之间的关系式。我们考虑采用能量平衡模型来量化两者之间的关系,能量平衡模型通过简化复杂的气候系统,使我们能够更好地理解和预测全球气候变化的基本动态。通过数值模拟我们很好的定量评估全球平均温度降低程度。
问题四:要求在问题二的基础上,定量的评估全球地表温度降温幅度的分布。同样在问题二中已经验证喷洒雾化海水会降低海面接收日光辐射量,所以在本小题中我们通过循环神经网络模型对日光辐射量和全球地表温度进行回归分析,从而将喷洒雾化海水和地表温度联系起来。此外我们海预测了日光辐射量减少下的全球地表温度值,并根据预测结果绘制了相关的降温后的全球地表温度地理分布图。
模型假设:
模型假设
假设 1: 海水喷洒的海盐气溶胶对云层的影响主要是通过增加云层的反照率来降低海面接收到的日光辐射量。
假设2: 云层的反照率与海盐气溶胶的浓度呈正相关关系,但存在饱和效应。
假设3:海洋云层的结构和性质对海盐气溶胶的影响可以通过物理模型进行描述。
假设4: 地球表面的日光辐射量变化主要受海洋云层的反照率影响。
假设5: 全球平均温度变化与地表温度变化存在确定的关系。
假设6: 地球表面温度降温幅度的分布受地球表面地理特征和海洋分布的影响。
完整论文缩略图
全部论文请见下方" 只会建模 QQ名片" 点击QQ名片即可
部分程序代码:
python
from netCDF4 import Dataset
import numpy as np
# 读取NetCDF文件
nc_file = 'FLDAS_NOAH01_CP_GL_M.A202102.001.nc'
data = Dataset(nc_file, mode='r')
# 从文件中读取地表水温数据
surface_temperature_all = data.variables['Tair_f_tavg'][:, :, :] # 所有时间步的地
表水温数据
# 关闭NetCDF文件
data.close()
# 计算所有时间段的平均温度
mean_surface_temperature = np.mean(surface_temperature_all, axis=0)
# 计算平均温度的最大值
max_surface_temperature = np.max(mean_surface_temperature)
print("地表水温的最大值为:", max_surface_temperature, "°C")
python
from netCDF4 import Dataset
import matplotlib.pyplot as plt
import numpy as np
import cartopy.crs as ccrs
from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
from cartopy.util import add_cyclic_point
# 读取NetCDF文件
nc_file = 'MERRA2_400.instM_2d_int_Nx.202102.nc4'
data = Dataset(nc_file, mode='r')
# 从文件中读取经度、纬度和地表温度数据
lon = data.variables['lon'][:] # 经度
lat = data.variables['lat'][:] # 纬度
print(len(lon))
surface_temperature_all = data.variables['THV'][:, :, :] # 选择第一个时间步的地表水温数
据
print(surface_temperature_all.shape)
# 关闭NetCDF文件
data.close()
# 计算所有时间段的平均温度
mean_surface_temperature = np.mean(surface_temperature_all, axis=0)
# 处理数据,添加周期点以解决横轴上的重叠问题
mean_surface_temperature, lon = add_cyclic_point(mean_surface_temperature, coord=lon)
overall_mean = np.mean(mean_surface_temperature /(3600*24))
print(overall_mean)
# 创建地图
fig = plt.figure(figsize=(10, 6))
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['mathtext.fontset'] = 'stix'
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.size'] = 16
plt.rcParams['xtick.labelsize'] = 12
plt.rcParams['ytick.labelsize'] =12
ax = fig.add_subplot(1, 1, 1, projection=ccrs.PlateCarree())
# 绘制地表温度分布图
im = ax.contourf(lon, lat, mean_surface_temperature /(3600*24), transform=ccrs.PlateCarree(),
cmap='jet')
cb = plt.colorbar(im, ax=ax, orientation='horizontal', shrink=0.8, label='')
# 添加地图特征
ax.coastlines()
plt.title('第一季度-全球温度')
# 显示经纬度标签和单位
ax.set_xticks(np.arange(-180, 181, 30), crs=ccrs.PlateCarree())
ax.set_yticks(np.arange(-90, 91, 30), crs=ccrs.PlateCarree())
lon_formatter = LongitudeFormatter()
lat_formatter = LatitudeFormatter()
ax.xaxis.set_major_formatter(lon_formatter)
ax.yaxis.set_major_formatter(lat_formatter)
# 显示图形
plt.show()