2024年江苏省研究生数学建模科研创新实践大赛C题气象数据高精度融合技术研究论文和代码分析

经过不懈的努力, 2024年江苏省研究生数学建模科研创新实践大赛C题气象数据高精度融合技术研究论文和代码已完成,代码为C题全部问题的代码,论文包括摘要、问题重述、问题分析、模型假设、符号说明、模型的建立和求解(问题1模型的建立和求解、问题2模型的建立和求解、问题3模型的建立和求解)、模型的评价等等

2024年江苏省研究生数学建模科研创新实践大赛ABC题论文和代码获取↓↓↓
https://www.yuque.com/u42168770/qv6z0d/qh4iwynq2co2gy3c

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

问题重述

气象领域中,降水观测意义重大。降水观测的手段主要有两类:雷达和雨量计。测量降水最准确的手段是雨量计(rain gauge),雨量计是针对点目标观测,虽然准确(一般假设雨量计测量降水的误差为5%~10%),但不连续。而作为测量降水的另一种工具—雷达,则因为估计精度很差(有时误差甚至超过200%),很长时间受到人们的质疑。然而由于雷达降水观测的特点是:范围广、连续、迅速,其优势也是明显的。此外,雷达降水观测可以较好地反应降水结构,即雷达数据可以很好地反映降水梯度特征。

气象领域人们通常感兴趣的是对一个较大区域单位时间平均降水的准确估计,而不是点估计。事实上,区域平均降水在水文学和洪水预报中有着重要的作用。水文学家希望利用雨量计网络和雷达降水观测来改善区域平均降水估计。毫无疑问如果用稠密的雨量计网络对降水进行估计将好于利用雷达对降水的估计。但建立稠密的雨量计网络代价巨大。所以,气象学家一直尝试数据同化方法,即结合雷达和雨量计的优势:雨量计的点精度和雷达的空间覆盖能力,以提升降水估测的精度。现有的资料同化方法有两类:Kalman滤波方法和变分同化方法。其中Kalman滤波方法是考虑整体误差,即利用误差因子随时间变化,构建状态转移方程,进而校正观测场[1]。而变分同化方法在考虑两种观测手段误差的同时,还考虑了降水的连续结构,因此具有相对较好的反演性能[2]。一般认为变分反演可以更好地提高反演降水场的精度。不过,反演问题通常是坏条件的[3],通过变分法反演的降水场并不能简单体现降水精度的提升。如何定义通过变分同化方法得到的反演降水场精度是一个具有挑战性的问题,其研究具有重要的理论价值和现实意义!

如何将多种类型的降水资料同化起来最大程度地提高降水度量的精度?具体问题如下:

问题1:当有两部具有不同探测精度的雷达同时对一个区域进行观测时,建立相应的降水资料变分同化数学模型,给出同化后降水场精度的形式表达式。

问题2:如果两部具有不同探测精度雷达只有部分重叠,理论上通过变分同化也可以提升估测降水场的精度。为了简化,我们考虑两部雷达资料区域均为正方形,并有部分区域重叠(假设重叠部分为25%)。示意图如下:
在这里插入图片描述

图1 雷达重叠观测示意图

现假定左边雷达测量降水的误差为50%,右边雷达测量降水的误差20%。假设左边和右边雷达对于降水场结构(为简化起见,这里所谓的结构仅考虑降水场的梯度)的估计误差分别为15%和10%。针对题目所给数据,建立变分同化模型对降水场进行估计,并计算同化后降水场的精度。

问题3:在问题2的基础上,增加雨量计观测(76个),请建立新的变分同化模型。变分同化一般是多目标的,是通过加权汇总起来的。请设计针对权重系数的选择模型以实现降水估计的高精度。
在这里插入图片描述

问题分析

题目的整体分析

该2024年江苏省研究生数学建模C题涉及气象雷达数据的高精度融合技术研究。主要目标是将多种类型的降水资料(雷达和雨量计)进行同化,以最大程度提高降水度量的精度。题目分为三个子问题,逐步深入探讨不同情况下的变分同化模型建立及精度提升方法。整体上,题目要求运用数学建模的思想,将实际气象观测问题抽象为数学模型,并通过模型求解来回答实际问题。题目涉及数据同化、误差分析、多目标优化等方面的知识,需要综合运用数学建模、最优化理论、误差分析等多方面的知识和技能。

问题1分析

问题1要求建立两部不同精度雷达对同一区域观测时的降水资料变分同化数学模型,并给出同化后降水场精度的形式表达式。这个问题的核心是如何将两种精度不同的雷达观测数据进行有效融合,以获得更高精度的降水场估计。建模思路应该首先分析两种雷达数据的特点和误差来源,然后构建适当的代价函数,包括观测误差项和背景场误差项。

使用的模型包括三维变分同化(3D-Var)或四维变分同化(4D-Var)模型。这些模型能够有效地将不同来源的观测数据与背景场结合,得到最优估计。在构建代价函数时,需要考虑两种雷达观测的权重分配,可以基于各自的观测误差来确定。同时,还需要考虑降水场的空间结构特征,可以引入适当的约束条件,如降水场的连续性或梯度约束。

在算法选择方面,可以考虑使用共轭梯度法或拟牛顿法等优化算法来最小化代价函数,从而得到最优的降水场估计。对于精度的形式表达,可以考虑使用误差协方差矩阵的迹或行列式来表征。此外,还可以通过Monte Carlo模拟来评估同化结果的不确定性。在实际操作中,需要注意数值稳定性和计算效率的问题,需要进行适当的预处理或正则化处理。

问题2分析

问题2考虑了两部不同精度雷达部分重叠观测的情况,这增加了问题的复杂性。建模思路应首先考虑如何处理重叠区域和非重叠区域的数据融合问题。对于重叠区域,可以采用类似问题1的方法,但需要考虑不同区域的权重分配。对于非重叠区域,则需要考虑如何利用相邻区域的信息来提高估计精度。

在模型选择方面,可以考虑使用局部变分同化模型,针对不同区域采用不同的同化策略。对于重叠区域,可以使用多源数据融合的变分同化模型;对于非重叠区域,可以使用单一雷达数据的变分同化模型,但在边界处需要考虑信息的平滑过渡。另一种的方法是采用集合卡尔曼滤波(EnKF)方法,这种方法可以更好地处理非线性和非高斯分布的情况,适合处理复杂的空间结构。

在算法实现方面,可以考虑使用区域分解的方法,将整个观测区域划分为若干子区域,分别进行同化计算,然后再进行结果的拼接和平滑。对于精度计算,除了考虑观测误差和背景场误差外,还需要考虑区域间信息传递带来的误差。可以使用交叉验证或留一法来评估模型在不同区域的表现。此外,还可以考虑引入空间统计学的方法,如克里金插值,来处理非重叠区域的信息传递问题。

问题3分析

(略)

模型假设

在 2024年江苏省研究生数学建模C题问题1到问题3的模型建立与求解过程中,我们做出了以下模型假设:

  1. 观测误差的高斯分布假设:我们假设雷达和雨量计的观测误差服从高斯分布,这使得我们可以使用最小二乘法来构建代价函数,并且允许我们使用协方差矩阵来描述误差的统计特性。

  2. 背景场误差的空间相关性假设:我们假设背景场误差在空间上是相关的,并使用高斯函数来描述这种相关性,这反映了大气变量在空间上通常表现出的连续性和平滑性。

  3. (后略,见完整版本)

这些假设为模型的建立和求解提供了理论基础,同时也限定了模型的适用范围和潜在的改进方向。

符号说明

以下是问题1-问题3的模型建立与求解过程中使用的符号及其说明:

问题1和问题2模型的分析与建立

思路分析

问题1要求我们建立一个降水资料变分同化数学模型,用于处理两部具有不同探测精度的雷达同时对一个区域进行观测的情况,并给出同化后降水场精度的形式表达式。这个问题的核心在于如何有效地融合来自两个不同精度雷达的观测数据,以获得更加准确的降水场估计。在进行模型建立之前,我们需要深入分析问题的特点和挑战。

首先,我们需要认识到,两部雷达虽然观测的是同一个区域,但由于它们的探测精度不同,所提供的数据质量和可靠性也会有所差异。这就要求我们在模型中考虑如何合理地权衡和利用这两种数据源。高精度雷达的数据应该被赋予更高的权重,而低精度雷达的数据虽然不如高精度雷达准确,但仍然包含有价值的信息,不应被完全忽视。

其次,我们需要考虑降水场本身的特性。降水场通常具有连续性和空间相关性,这意味着相邻区域的降水量往往具有一定的相似性。这种特性应该被纳入我们的模型中,以确保同化后的降水场估计不仅准确,而且在空间上也是合理和连贯的。

再者,我们还需要考虑观测误差的问题。每个雷达的观测都不可避免地存在误差,这些误差来源于仪器本身的限制、大气条件的影响、信号处理过程中的不确定性等。在建立模型时,我们需要将这些误差因素考虑进去,以获得更加可靠的估计结果。

基于以上分析,我们可以考虑使用变分同化方法来构建模型。变分同化是一种将观测数据与背景场(先验信息)结合的有效方法,它通过最小化一个包含观测误差和背景场误差的代价函数来获得最优估计。在我们的问题中,两部雷达的观测数据可以被视为观测项,而降水场的先验信息(如气候平均值或数值天气预报结果)可以作为背景场。

多源雷达变分同化模型建立

基于上述思路分析,我们提出一个"多源雷达变分同化模型"(Multi-Source Radar Variational Assimilation Model, MSRVAM)来解决这个问题。该模型的核心思想是构建一个综合考虑两部雷达观测、背景场信息以及降水场空间特性的代价函数,通过最小化这个代价函数来获得最优的降水场估计。

在MSRVAM中,我们首先定义状态向量 x x x,它代表我们要估计的降水场。观测向量 y 1 y_1 y1 y 2 y_2 y2 分别表示两部雷达的观测结果。我们假设有一个背景场 x b x_b xb,它来自于短期数值预报或气候平均值。观测算子 H H H 用于将状态空间映射到观测空间,在本问题中是一个线性或非线性算子,取决于雷达观测与实际降水量之间的关系。

代价函数 J ( x ) J(x) J(x) 可以表示为:

J ( x ) = 1 2 ( x − x b ) T B − 1 ( x − x b ) + 1 2 ( y 1 − H ( x ) ) T R 1 − 1 ( y 1 − H ( x ) ) + 1 2 ( y 2 − H ( x ) ) T R 2 − 1 ( y 2 − H ( x ) ) + J c ( x ) J(x) = \frac{1}{2}(x-x_b)^TB^{-1}(x-x_b) + \frac{1}{2}(y_1-H(x))^TR_1^{-1}(y_1-H(x)) + \frac{1}{2}(y_2-H(x))^TR_2^{-1}(y_2-H(x)) + J_c(x) J(x)=21(xxb)TB1(xxb)+21(y1H(x))TR11(y1H(x))+21(y2H(x))TR21(y2H(x))+Jc(x)

其中, B B B 是背景误差协方差矩阵, R 1 R_1 R1 R 2 R_2 R2 分别是两部雷达的观测误差协方差矩阵。第一项表示背景场约束,第二和第三项分别表示两部雷达的观测约束, J c ( x ) J_c(x) Jc(x) 是一个额外的约束项,用于表示降水场的空间特性。

背景误差协方差矩阵 B B B 反映了背景场的不确定性。它可以基于历史数据统计得到,或者通过集合预报方法估计。在实践中, B B B 通常被建模为一个空间相关的结构,以反映降水场的空间连续性。

观测误差协方差矩阵 R 1 R_1 R1 R 2 R_2 R2 反映了两部雷达观测的不确定性。由于两部雷达具有不同的探测精度,这两个矩阵将有不同的结构。高精度雷达对应的 R R R 矩阵的对角元素(表示方差)会较小,而低精度雷达对应的 R R R 矩阵的对角元素会较大。这样,在同化过程中,高精度雷达的观测会得到更大的权重。

约束项 J c ( x ) J_c(x) Jc(x) 可以设计为:

J c ( x ) = λ ∫ ( ∇ 2 x ) 2 d x J_c(x) = \lambda \int (\nabla^2 x)^2 dx Jc(x)=λ(2x)2dx

这是一个常见的正则化项,用于保证降水场的空间平滑性。其中 λ \lambda λ 是一个可调节的参数,用于控制平滑约束的强度。 ∇ 2 \nabla^2 2 是拉普拉斯算子,它的平方积分反映了场的曲率变化。这个约束项有助于抑制小尺度的噪声,使得同化后的降水场在空间上更加连贯。(后略,见完整版本)

迭代最优化算法步骤

为了最小化上述代价函数并获得最优的降水场估计,我们提出一种"自适应共轭梯度迭代优化算法"(Adaptive Conjugate Gradient Iterative Optimization Algorithm, ACGIOA)。这个算法结合了共轭梯度法的高效性和自适应步长选择的灵活性,能够有效地处理大规模的非线性优化问题。

ACGIOA的主要步骤如下:

  1. 初始化:选择初始猜测 x 0 x_0 x0,通常可以选择背景场 x b x_b xb 作为初始值。计算初始梯度 g 0 = ∇ J ( x 0 ) g_0 = \nabla J(x_0) g0=J(x0),并设置初始搜索方向 d 0 = − g 0 d_0 = -g_0 d0=g0

  2. 迭代优化:对于每次迭代 k = 0 , 1 , 2 , . . . k = 0, 1, 2, ... k=0,1,2,...,执行以下步骤:

    a. 计算最优步长 α k \alpha_k αk:这里我们使用自适应线搜索方法。首先使用二次插值法得到一个初始步长估计,然后使用Wolfe条件来确保步长的适当性。具体来说:

    • 使用二次插值法估计初始步长:
      α k i n i t = − g k T d k d k T ∇ 2 J ( x k ) d k \alpha_k^{init} = -\frac{g_k^T d_k}{d_k^T \nabla^2 J(x_k) d_k} αkinit=dkT2J(xk)dkgkTdk
      其中 ∇ 2 J ( x k ) \nabla^2 J(x_k) 2J(xk) 是代价函数在 x k x_k xk 处的Hessian矩阵。

    • 使用Wolfe条件来调整步长,直到满足以下两个条件

    • (后略,见完整版本)

    b. 更新状态向量: x k + 1 = x k + α k d k x_{k+1} = x_k + \alpha_k d_k xk+1=xk+αkdk

    c. 计算新的梯度: g k + 1 = ∇ J ( x k + 1 ) g_{k+1} = \nabla J(x_{k+1}) gk+1=J(xk+1)

    d. 计算共轭方向系数 β k + 1 \beta_{k+1} βk+1:这里我们使用Polak-Ribière公式,它在非线性问题中通常表现较好:

    (后略,见完整版本)

在这个算法中,梯度 ∇ J ( x ) \nabla J(x) J(x) 的计算是关键步骤。对于我们的代价函数,梯度可以表示为:

∇ J ( x ) = B − 1 ( x − x b ) + H T R 1 − 1 ( H ( x ) − y 1 ) + H T R 2 − 1 ( H ( x ) − y 2 ) + ∇ J c ( x ) \nabla J(x) = B^{-1}(x-x_b) + H^T R_1^{-1}(H(x)-y_1) + H^T R_2^{-1}(H(x)-y_2) + \nabla J_c(x) J(x)=B1(xxb)+HTR11(H(x)y1)+HTR21(H(x)y2)+Jc(x)

其中 H T H^T HT 是观测算子 H H H 的伴随算子。如果 H H H 是线性的,那么 H T H^T HT 就是 H H H 的转置。如果 H H H 是非线性的,那么 H T H^T HT 需要通过求解伴随方程来获得。(后略,见完整版本)

问题2模型的分析与建立

思路分析

在气象学领域中,准确估计降水量对于水文学和洪水预报等方面具有重要意义。问题1和问题2都涉及到利用多源雷达数据进行降水量估计的变分同化问题,其核心目标是通过融合不同精度的雷达观测数据,获得更高精度的降水场估计。这两个问题的主要区别在于观测区域的空间分布:问题1考虑两部雷达完全重叠的情况,而问题2考虑两部雷达部分重叠的情况。

对于问题1,我们需要考虑如何有效地结合两种不同精度的雷达观测数据。这涉及到对观测误差的合理建模,以及如何在变分同化过程中合理分配不同数据源的权重。同时,我们还需要考虑降水场的空间结构特征,例如其连续性和梯度特征,以确保同化结果的物理合理性。

问题2则增加了空间复杂性,我们需要处理重叠区域和非重叠区域的数据融合问题。在重叠区域,我们可以采用类似问题1的方法,但需要考虑不同区域的权重分配。对于非重叠区域,我们需要考虑如何利用相邻区域的信息来提高估计精度,这涉及到空间插值或信息传递的问题。

考虑到问题的特性,我们可以采用多源数据变分同化模型来解决这两个问题。这种模型能够有效地融合来自不同源的观测数据,同时考虑观测误差和背景场误差,从而得到最优的降水场估计。在算法实现方面,我们可以采用迭代优化的方法来求解变分同化问题,同时考虑计算效率和数值稳定性的问题。

问题二代码求解加速计算手段

在解决 2024年江苏省研究生数学建模竞赛C题多源雷达数据融合变分同化模型的优化过程中,我们采用了多种代码优化手段,这些手段不仅显著提高了计算效率,还确保了算法的稳定性和收敛性。首先,我们利用问题的结构特性,避免了构建和存储大型满矩阵,如背景场误差协方差矩阵B和观测误差协方差矩阵R,而是直接使用它们的逆(在简化情况下为标量),这大大减少了内存使用并加快了计算速度;其次,我们充分利用了问题的稀疏性,保留了正则化项中的稀疏矩阵L,这不仅节省了存储空间,还能在梯度计算中利用稀疏矩阵运算的高效性。

在算法实现方面,我们采用了带回溯的线搜索策略,这种方法能够自适应地调整每次迭代的步长,在保证收敛性的同时提高了算法的效率;同时,我们调整了正则化参数lambda1和lambda2,使其更好地平衡数据拟合和先验信息,避免了过度正则化导致的收敛问题。此外,我们还增加了基于代价函数变化的收敛判断条件,这使得算法能够在达到预设精度或收敛停滞时及时终止,避免了不必要的计算。

在代码结构方面,我们预计算了一些常量项,并将它们作为参数传递给代价函数,这减少了重复计算;同时,我们优化了代价函数和梯度的计算过程,尽地利用向量化运算,避免了显式的循环,这在MATLAB环境中能显著提升性能。我们还增加了最大迭代次数,为算法提供了更充分的收敛机会,同时通过记录和绘制代价函数的历史值,我们能够直观地观察算法的收敛过程。

最后,我们优化了可视化和结果分析部分的代码,通过生成多种图表和数据文件,如雷达数据融合结果图、误差分布图、收敛曲线图以及各种CSV文件,我们能够全面地分析和展示算法的性能和结果。这些优化手段的综合应用不仅提高了代码的运行效率,还增强了其可读性和可维护性,为进一步的改进和扩展奠定了基础。

这些优化策略体现了在处理大规模科学计算问题时,如何平衡计算效率、数值稳定性和结果准确性的综合考虑。

问题二求解结果分析和解释

融合结果图:通过对比左右雷达观测数据和融合结果,我们可以看到融合过程有效地结合了两个雷达的信息。融合结果图显示了更加平滑和连续的降水场分布,这说明我们的模型成功地利用了两个雷达的优势,同时通过正则化项抑制了噪声的影响。

在这里插入图片描述

误差分布图:误差分布图展示了融合结果与原始雷达数据之间的差异。从图中可以看出,误差在空间上呈现一定的结构,这反映了两个雷达在不同区域的性能差异。较大的误差出现在雷达重叠区域的边缘或者单一雷达覆盖的区域。

RMSE分析:(后略,见完整版本)

收敛曲线:收敛曲线展示了代价函数值随迭代次数的变化。如果曲线呈现下降趋势并最终趋于平稳,说明我们的优化算法有效地最小化了代价函数,模型收敛到了一个稳定解。

在这里插入图片描述

(结果和分析略)

问题3模型的分析与建立

多源异构气象数据融合优化模型

问题3在前两个问题的基础上引入了雨量计观测数据,进一步增加了数据融合的复杂性。这个问题的核心在于如何有效地结合雷达和雨量计这两种不同性质的观测数据,以及如何选择最优的权重系数来实现高精度的降水估计。为了解决这个复杂的问题,我们提出了一个多源异构气象数据融合优化模型(Multi-source Heterogeneous Meteorological Data Fusion Optimization Model, MHMDFO)。这个模型不仅考虑了不同数据源的特性,还引入了自适应权重调整机制,以实现最优的数据融合效果。

(后略,见完整版本)

自适应交替优化算法求解

为了求解这个复杂的优化问题,我们提出了一种自适应交替优化算法(Adaptive Alternating Optimization Algorithm, AAOA)。AAOA的主要步骤如下:

  1. 初始化:设置初始权重 ω ( 0 ) \omega^{(0)} ω(0) 和初始降水场估计 x ( 0 ) x^{(0)} x(0)

  2. 外层循环(权重优化):
    对于每次迭代 k = 1 , 2 , . . . , K k = 1, 2, ..., K k=1,2,...,K

    a) 内层循环(降水场优化):
    固定权重 ω ( k − 1 ) \omega^{(k-1)} ω(k1),求解 x ( k ) = arg ⁡ min ⁡ x J ( x , ω ( k − 1 ) ) x^{(k)} = \arg\min_x J(x, \omega^{(k-1)}) x(k)=argminxJ(x,ω(k1))
    这可以通过梯度下降法或共轭梯度法等优化算法实现。(后略,见完整版本)

在这里插入图片描述

模型的评价推广

以下是 2024年江苏省研究生数学建模(苏研赛)问题1-问题3的模型建立与求解过程中建立的模型的优缺点及其推广:

问题1和问题2(两步雷达数据融合模型)评价推广

优点:

  1. 该模型能够有效地融合两个不同精度的雷达观测数据,充分利用了高精度雷达的优势,同时也不完全忽视低精度雷达的信息,从而在整体上提高了降水场估计的准确性。

  2. 通过引入正则化项,模型能够在数据拟合和空间平滑性之间取得平衡,这有助于抑制观测噪声和小尺度波动,产生更加合理的降水场估计。

  3. 模型采用变分同化框架,具有良好的理论基础和数学性质,便于进行误差分析和不确定性量化。

  4. 该模型具有一定的灵活性,可以通过调整误差协方差矩阵和正则化参数来适应不同的观测条件和先验信息。(后略,见完整版本)

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

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

相关文章

绝区壹--LLM的构建模块

前言 语言是人类交流的本质,大型语言模型 (LLM) 凭借其出色的理解和生成类似人类的文本的能力,彻底改变了我们与语言互动和利用语言的方式。深入研究 LLM 的构建块(向量、标记和嵌入),揭示了使这些模型能够以前所未有…

Qt(MSVC)下报“语法错误缺少“}““语法错误缺少“常数“ 的解决办法

1.现象 目前我在工程中试图使用QHttpServer时,一编译,就报了一堆奇奇怪怪的错误: D:\Qt\httpServer\Qt5.15.2\include\QtHttpServer\qhttpserverrequest.h:75: error: C2143: 语法错误: 缺少“}”(在“(”的前面) D:\Qt\httpServer\Qt5.15.…

Xilinx FPGA:vivado关于fifo的一些零碎知识

一、FIFO概念 先进先出,是一种组织和操作数据结构的方法。在硬件应用中,FIFO一般由一些读写指针,存储和控制的逻辑组成。 二、xilinx中生成的FIFO的存储类型 (1)shift register FIFO : 移位寄存器FIFO,这…

第6章 选课学习:需求分析,添加选课,支付,支付通知,在线学习

1 模块需求分析 1.1 模块介绍 本模块实现了学生选课、下单支付、学习的整体流程。 网站的课程有免费和收费两种,对于免费课程学生选课后可直接学习,对于收费课程学生需要下单且支付成功方可选课、学习。 选课:是将课程加入我的课程表的过…

以黑盒与白盒的角度分析和通关xss-labs(XSS漏洞类型与总结)

目录 目录 前言 XSS漏洞的总结和梳理 1.第一关(基础palyload) 黑盒测试 白盒测试 2.第二关(闭合) 黑盒测试 白盒测试 3.第三关(字符转义) 黑盒测试 白盒测试 4.第四关(字符过滤或替换) 黑盒测试 白盒测试 5.第五关(关键词替换) 黑盒测试 白盒测试 6.第六关(…

C++初级——C++入门(2):函数重载

目录 一、话题引入 二、 函数重载概念 三、不同重载类型 3.1 参数个数不同 3.2 参数类型不同 3.3 参数类型顺序不同 一、话题引入 在自然语言中,一个词可以有多重含义,人们可以通过上下文来判断该词真正的含义,即该词被重载了。 例…

java自旋锁

Java自旋锁(Spin Lock)是一种用于多线程同步的锁机制,通过反复检查某个条件(通常是一个共享变量的状态)而不是挂起线程来实现锁的获取。自旋锁的核心思想是让线程在尝试获取锁时保持活动状态,即进行“自旋”…

Spring Cloud Alibaba - Sentinel 分布式系统流量哨兵

目录 概述特征基本概念 安装Sentinel微服务引入Sentinel案例流控规则(流量控制)流控模式-直接流控模式-关联流控模式-链路流控效果-快速失败流控效果-预热WarmUp流控效果-排队等候 流控规则(并发线程数控制)熔断规则(熔…

ECharts在最新版本中使用getInstanceByDom报错处理

引用问题导致报错 如果按如下引用的话,会报错 import echarts from “echarts/lib/echarts”; 原因 在 ECharts 的之前版本中,默认导出了一个名为 echarts 的对象,所以使用 import echarts from “echarts” 是没有问题的。但是在 ECharts …

【Docker系列】Docker 镜像构建中的跨设备移动问题及解决方案

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Spring中的事件监听器使用学习

一、什么是Spring中的事件监听机制? Spring框架中的事件监听机制是一种设计模式,它允许你定义和触发事件,同时允许其他组件监听这些事件并在事件发生时作出响应。这种机制基于观察者模式,提供了一种松耦合的方式来实现组件间的通信…

vue3+electron项目搭建,遇到的坑

我主要是写后端,所以对前端的vue啊vue-cli只是知其然,不知其所以然 这样也导致了我在开发前端时候遇到了很多的坑 第一个坑, vue2升级vue3始终升级不成功 第二个坑, vue add electron-builder一直卡进度,进度条走完就是不出提示succes 第一个坑的解决办法: 按照网上说的升级v…

DNS正向解析与反向解析实验

正向解析 安装bind软件 [rootlocalhost ~]# dnf install bind bind-utils -y修改主配置文件/etc/named.conf [rootlocalhost ~]# vim /etc/named.conf重启DNS服务(named) [rootlocalhost ~]# systemctl restart named编辑数据配置文件。在/var/named…

AI绘画Stable Diffusion【图生图教程】:图片高清修复的三种方案详解,你一定能用上!(附资料)

大家好,我是画画的小强 今天给大家分享一下用AI绘画Stable Diffusion 进行 高清修复(Hi-Res Fix),这是用于提升图像分辨率和细节的技术。在生成图像时,初始的低分辨率图像会通过放大算法和细节增强技术被转换为高分辨…

Linux运维:mysql主从复制原理及实验

当一台数据库服务器出现负载的情况下,需要扩展服务器服务器性能扩展方式有向上扩展,垂直扩展。向外扩展,横向扩展。通俗的讲垂直扩展是将一台服务器扩展为性能更强的服务器。横向扩展是增加几台服务器。 主从复制好比存了1000块钱在主上&…

Flutter-实现双向PK进度条

如何实现一个双向PK进度条 在Flutter应用中,进度条是一个非常常见的组件。而双向PK进度条则能够展示两个对立的数值,如对战中的双方得分对比等。本文将介绍如何实现一个具有双向PK效果的进度条,并支持竖直和斜角两种过渡效果。 1. 需求 我…

仪器校准后出了校准证书后,是不是就代表仪器合格了?

仪器校准是一门技术活,对于从事生产制造的企业而言,是不可或缺的一环,因为这与产品质量密切相关。所以,了解仪器校准的相关知识也变得尤为重要。 在拿到校准证书后,是不是说明仪器合格了?相信不少企业品管人…

苍穹外卖--sky-take-out(五)前端

大部分笔记都是写在语雀的,这是一次性从本人语雀复制过来的,可能结构有些错乱 基础创建 环境要求 node.js npm Vue CLI 创建前端工程 使用vue ui命令创建 项目结构 启动项目 打开命令行窗口 快捷键ctrlj 或者 运行 输入:npm run ser…

基于单片机的多功能电子时钟的设计

摘要:提出了一种基于单片机的多功能电子时钟的设计方法,以 AT89C52单片机作为系统的主控芯片,采用DS1302作为时钟控制芯片,实现日期时钟显示并且提供精准定时的功能。此外,还可经由DHT22所构成的温湿度传感电路&#x…

Chair Footrest Protective Cover

Chair Footrest Protective Cover 万能通用型椅子脚垫保护套凳子耐磨硅胶加厚垫桌椅脚垫防滑静音套