当前位置: 首页 > news >正文

有限元法之有限元空间的构造

目录

一、区域Ω的剖分

二、三角形一次元

三、一次元的基函数与面积坐标

四、三角形二次元及其基函数


        前两节我们介绍了有限元基本概念和变分理论的推导,本节我们继续探讨有限元空间的构造。 

一、区域Ω的剖分

        对矩形区域\Omega =[x_{a},x_{b}]\times [y_{c},y_{d}]进行三角剖分,其中x方向剖分m份,y方向剖分n份,共得到(m+1)(n+1)个节点及2mn个三角形单元。图1是m=5,n=4的剖分情况,节点编号用数字表示,单元用带圈的数字表示。为了实现后面的程序编写,必须明确单元上的局部编号与整体编号,如图2所示。通过设置剖分数,可以建立单元上整体编号与局部编号之间的关系,可设置二维数组lnd[\;][\;],第一个参数为单元编号,第二个参数为局部节点编号,如lnd[3][0]=8等,表示第3个单元第0号局部节点的整体节点编号为8,而lnd[2][1]=2则表示第2个单元第1号局部节点的整体节点编号为2。可以通过循环设置所有的节点。

图1 三角形剖分

图2 三角形单元的整体编号i,j,k与局部编号0,1,2

二、三角形一次元

        前面两节提到,可以选取V_{h}\subset V=H^{1}_{0}(\Omega)为分片连续的一次多项式函数空间,也就是在每个单元e上,V_{h}中的函数都是一次多项式,且要保证整体连续。因此对于相邻的两个三角形单元,它们有一条公共边,只要保证分片一次多项式在这条公共边的两个端点(也是剖分节点)处函数值相同即可保证函数整体连续。这样,分片一次多项式在每个单元上的表达式就可以由它在3个顶点处的值唯一确定。下面,在节点P_{i},P_{j},P_{k}(对应整体编号为i,j,k)的单元e上考虑数值解u_{h}的表达式,尝试用基函数来表示u_{h}(x,y)|_{e}=u_{i}\lambda _{0}(x,y)+u_{j}\lambda _{1}(x,y)+u_{k}\lambda _{2}(x,y),其中\lambda_{0},\lambda_{1},\lambda_{2}为待定基函数,满足以下性质:

\lambda_{0}(P_{i})=1,\lambda_{0}(P_{j})=0,\lambda_{0}(P_{k})=0 \;\;\;\;\; (1)

\lambda_{1}(P_{i})=0,\lambda_{1}(P_{j})=1,\lambda_{1}(P_{k})=0 \;\;\;\;\; (2)

\lambda_{2}(P_{i})=0,\lambda_{2}(P_{j})=0,\lambda_{2}(P_{k})=1 \;\;\;\;\; (3)

且它们都是一次函数。这样,数值解u_{h}在单元e上的表达式完全由它在3个顶点处P_{i},P_{j},P_{k}处的值u_{i},u_{j},u_{k}决定,u_{i},u_{j},u_{k}可以看作精确解u在整体编号i,j,k的节点处的近似。一旦把所有u_{i},i=0,1,\cdots,(m+1)(n+1)-1求出来(边界点除外,因为u_{h}\in V_{h}从而边界节点处u_{h}的值为零),则数值解u_{h}的表达式也就确定了。所以现在的基本问题是对离散问题式

u_{h}(x,y)\in V_{h},使得a(u_{h},v_{h})=(f,v_{h})\;\;\;\;\forall v_{h}(x,y)\in V_{h}

建立u_{i},i=0,1,\cdots,(m+1)(n+1)-1的关系式。

三、一次元的基函数与面积坐标

        由于基函数在单元e上是一次多项式,尝试设\lambda_{0}(x,y)|_{e}=ax+by+c,其中a,b,c为待定系数,且单元e上s号节点P_{s}的坐标为(x_{s},y_{s}),s=i,j,k,则由条件公式(1)可知:

\left\{\begin{matrix} ax_{i}+by_{i}+c=1,\\ ax_{j}+by_{j}+c=0,\\ ax_{k}+by_{k}+c=0, \end{matrix}\right.\;\;is\begin{pmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{pmatrix}\begin{pmatrix} a\\ b\\ c \end{pmatrix}=\begin{pmatrix} 1\\ 0\\ 0 \end{pmatrix}

从而解出

a=\frac{\begin{vmatrix} 1 & y_{i} & 1\\ 0 & y_{j} & 1\\ 0 & y_{k} & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}=\frac{y_{j}-y_{k}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}                b=\frac{\begin{vmatrix} x_{i} & 1 & 1\\ x_{j} & 0 & 1\\ x_{k} & 0 & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}=\frac{x_{k}-x_{j}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}

c=\frac{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 0\\ x_{k} & y_{k} & 0 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}=\frac{x_{j}y_{k}-x_{k}y_{j}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}

代入可得

\lambda_{0}(x,y)|_{e}=\frac{x(y_{j}-y_{k})+y(x_{k}-x_{j})+(x_{j}y_{k}-x_{k}y_{j})}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}=\frac{\begin{vmatrix} x & y & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} &y_{k} &1 \end{vmatrix}}

可以证明以P_{i},P_{j},P_{k}(逆时针排列)为顶点的三角形单元e的面积S_{e}=\frac{1}{2}\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}

        于是,若\Delta P_{i}P_{j}P_{k}内有一点P的坐标为(x,y),如图3所示,则

\lambda_{0}(x,y)|_{e}=\frac{\begin{vmatrix} x & y & 1\\ x_{j} & y_{j} & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} &y_{k} &1 \end{vmatrix}}=\frac{2S_{\Delta PP_{j}P_{k}}}{2S_{\Delta P_{i}P_{j}P_{k}}}=\frac{S_{\Delta PP_{j}P_{k}}}{S_{e}}\;\;\;(4)

图3 三角形单元

 同理,

\lambda_{1}(x,y)|_{e}=\frac{\begin{vmatrix} x_{i} & y_{i} & 1\\ x & y & 1\\ x_{k} & y_{k} & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} &y_{k} &1 \end{vmatrix}}=\frac{S_{\Delta P_{i}PP_{k}}}{S_{e}},\lambda_{2}(x,y)|_{e}=\frac{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x & y & 1 \end{vmatrix}}{\begin{vmatrix} x_{i} & y_{i} & 1\\ x_{j} & y_{j} & 1\\ x_{k} &y_{k} &1 \end{vmatrix}}=\frac{S_{\Delta P_{i}P_{j}P}}{S_{e}}\;\;\;(5)

注意到S_{e}=S_{\Delta P_{i}P_{j}P_{k}}=S_{\Delta PP_{j}P_{k}}+S_{\Delta P_{i}PP_{k}}+S_{\Delta P_{i}P_{j}P},显然有

\lambda_{0}+\lambda_{1}+\lambda_{2}=1\;\;\;\;(6)

也就是说\lambda_{0},\lambda_{1},\lambda_{2}不是相互独立的。换言之,\Delta P_{i}P_{j}P_{k}内任一点P(x,y),必然可以唯一对应一组坐标(\lambda_{0},\lambda_{1}),基函数\lambda_{0},\lambda_{1},\lambda_{2}被称为重心坐标。由于它们又都是三角形的面积比,所以它们也称为面积坐标。面积坐标在有限元分析中非常重要,它是从一般单元变化到标准单元的工具,也是进行Sobolev空间范数估计的有效手段。事实上,公式(4)、(5)可以反解出直角坐标(x,y)与重心坐标之间的对应关系式:

\left\{\begin{matrix} x=x_{i}\lambda_{0}+x_{j}\lambda_{1}+x_{k}\lambda_{2}\\ y=y_{i}\lambda_{0}+y_{j}\lambda_{1}+y_{k}\lambda_{2} \end{matrix}\right.\;\;\;\; or\;\;\;\left\{\begin{matrix} x=(x_{i}-x_{k})\lambda_{0}+(x_{j}-x_{k})\lambda_{1}+x_{k}\\ y=(y_{i}-y_{k})\lambda_{0}+(y_{j}-y_{k})\lambda_{1}+y_{k} \end{matrix}\right.\;\;\;(7)

从而可以实现将一般的三角形单元\Delta P_{i}P_{j}P_{k}变换成标准单元\widehat{e},如图4所示。

图4 利用仿射坐标变换从一般单元变到标准单元

四、三角形二次元及其基函数

        我们除了可以选取V_{h}为分片连续的一次多项式函数空间外,也可以选取V_{h}为分片连续的二次多项式函数空间,也就是在每个单元e上,V_{h}中的函数都是二次多项式,且要保证整体连续。因此在每个单元e上,V_{h}中的分片二次多项式函数v(x,y)就形如v|_{e}=Ax^{2}+Bxy+Cy^{2}+Dx+Ey+F,其中A,B,C,D,E,F均为待定常数,从而需要有6个条件来唯一确定这个表达式。与一次元相似,要确定这6个常数,我们可以取三角形单元e的3个顶点及3条边的中点值作为条件(这些条件称为自由度),即分片二次多项式在每个单元上的表达式就可以由它在这个单元3个顶点和3条边的中点处的值唯一确定,这样也可以保证函数的整体连续性。事实上,在相邻的两个三角形单元上的公共边上,位置变量x和y有一个直线方程的线性约束,从而v(x,y)在这条边上成为一个只关于自变量x的二次函数,这个函数在3个不同的点(两个顶点和一个中点)上取值相同,说明v(x,y)在公共边上的表达式所示唯一确定的,也就是说,这个分片二次多项式在相邻两个单元上虽然整体表达式不相同,但在其公共边上表达式相同,这就保证了函数在\Omega上整体连续,从而实现V_{h}\subset V=H^{1}_{0}(\Omega)

        对于以上的三角形二次元,由于涉及到三角形单元的中点,所以尽管三角形剖分情况不变,即共有2mn个三角形单元,但整体节点数变为(2m+1)(2n+1)个,且节点的编号将随之发生改变。例如,图1将变为图5。

图5 三角形剖分及二次元节点图(各顶点也包含在内)

        接下来,在单元e上考虑数值解u_{h}\in V_{h}的表达式,其中e的3个顶点为P_{i},P_{j},P_{k}(对应整体编号为i,j,k),3条边的中点为P_{jk},P_{ki},P_{ij}(对应整体编号为\frac{j+k}{2},\frac{k+i}{2},\frac{i+j}{2}),如图6。

图6 三角形二次元

        u_{h}在单元e上的表达式尝试用基函数表示为

u_{h}(x,y)|_{e}=u_{i}\varphi_{0}(x,y)+u_{j}\varphi_{1}(x,y)+u_{k}\varphi_{2}(x,y)+u_{jk}\Psi_{0}(x,y)+u_{ki}\Psi_{1}(x,y)+u_{ij}\Psi_{2}(x,y)

其中\varphi_{0},\varphi_{1},\varphi_{2},\Psi_{0},\Psi_{1},\Psi_{2}为待定基函数,满足以下性质:

\varphi_{0}(P_{i})=1,\varphi_{0}(P_{j})=0,\varphi_{0}(P_{k})=0,\varphi_{0}(P_{jk})=0,\varphi_{0}(P_{ki})=0,\varphi_{0}(P_{ij})=0,

\varphi_{1}(P_{i})=0,\varphi_{1}(P_{j})=1,\varphi_{1}(P_{k})=0,\varphi_{1}(P_{jk})=0,\varphi_{1}(P_{ki})=0,\varphi_{1}(P_{ij})=0,

\varphi_{2}(P_{i})=0,\varphi_{2}(P_{j})=0,\varphi_{2}(P_{k})=1,\varphi_{2}(P_{jk})=0,\varphi_{2}(P_{ki})=0,\varphi_{2}(P_{ij})=0,

\Psi_{0}(P_{i})=0,\Psi_{0}(P_{j})=0,\Psi_{0}(P_{k})=0,\Psi_{0}(P_{jk})=1,\Psi_{0}(P_{ki})=0,\Psi_{0}(P_{ij})=0,

\Psi_{1}(P_{i})=0,\Psi_{1}(P_{j})=0,\Psi_{1}(P_{k})=0,\Psi_{1}(P_{jk})=1,\Psi_{1}(P_{ki})=1,\Psi_{1}(P_{ij})=0,

\Psi_{2}(P_{i})=0,\Psi_{2}(P_{j})=0,\Psi_{2}(P_{k})=0,\Psi_{2}(P_{jk})=1,\Psi_{2}(P_{ki})=0,\Psi_{2}(P_{ij})=1. 

        利用重心坐标,很容易将上述基函数表示出来,即有分别对应于三角形单元3个顶点P_{i},P_{j},P_{k}的基函数:

\varphi_{0}(x,y)=\lambda_{0}(2\lambda_{0}-1),\varphi_{1}(x,y)=\lambda_{1}(2\lambda_{1}-1),\varphi_{2}(x,y)=\lambda_{2}(2\lambda_{2}-1)

及对应于三角形3条边中点P_{jk},P_{ki},P_{ij}的 基函数:

\Psi_{0}=4\lambda_{1}\lambda_{2},\Psi_{1}=4\lambda_{2}\lambda_{0},\Psi_{2}=4\lambda_{0}\lambda_{1}

至此,数值解 u_{h}在单元e上的表达式就确定为:

u_{h}(x,y)|_{e}=u_{i}\lambda_{0}(2\lambda_{0}-1)+u_{j}\lambda_{1}(2\lambda_{1}-1)+u_{k}\lambda_{2}(2\lambda_{2}-1)+4u_{jk}\lambda_{1}\lambda_{2}+4u_{ki}\lambda_{2}\lambda_{0}+4u_{ij}\lambda_{0}\lambda_{1}

        综上,有限元空间X_{h}由一个三元组(e,V_{h},\sum)确定。具体的,设\tau_{h}是区域Ω的一个剖分,e是剖分\tau_{h}中的单元,参数h定义为所有单元的最大直径,即h=\underset{e\in\tau_{h}}{max}(diam(e))V_{h}是选定的分片多项式函数空间,\sum是每个e上用于唯一确定V_{h}内的多项式函数所需要的条件。

相关文章:

有限元法之有限元空间的构造

目录 一、区域Ω的剖分 二、三角形一次元 三、一次元的基函数与面积坐标 四、三角形二次元及其基函数 前两节我们介绍了有限元基本概念和变分理论的推导,本节我们继续探讨有限元空间的构造。 一、区域Ω的剖分 对矩形区域进行三角剖分,其中x方向剖…...

高通车规芯片分析

高通三款芯片 SA8155P 7nm SA8295P 5nm SA8255P 5nm 分析AECQ等级 AECQ100里面定义了5个工作环境温度等级:Grade0:-40-150 Grade1:-40-125 Grade2:-40-105 Grade3:-40-85 Grade4:0-70AEC-Q100整体认证测试…...

Flutter 中的 TextButton 小部件:全面指南

Flutter 中的 TextButton 小部件:全面指南 在Flutter的世界里,TextButton是一个基础的小部件,用于创建只包含文本的按钮。它通常用于对话框、表单以及需要强调主要操作的界面。本文将为您提供一个全面的指南,帮助您了解如何使用T…...

通过键值对访问字典

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在Python中,如果想将字典的内容输出也比较简单,可以直接使用print()函数。例如,要想打印dictionary字典&#xff…...

海外仓扫码管理系统怎么选?精准,高效管理需求才是核心需求

海外仓对那些想拓展国际市场的商家来说还是非常重要的,大部分的货物都需要先运到海外仓,才能继续进行下一步的物流快递发货。 那对于海外仓本身来说,当面临大量订单的时候,怎么快速的管理订单,拣选货物就变得十分重要…...

基于51单片机的智能灯光控制系统

一.硬件方案 智能灯光控制系统由单片机最小系统、人体感应模块、关照强度模块、灯光控制模块、电源模块和灯泡组成。本文以STC89C52单片机为核心,通过利用光照度和红外人体感应相结合主动与被动的探测方法,现了室内无人或者关照充足时灯光自动光灯&…...

测试开发面试题

简述自动化测试的三大等待 强制等待。直接使用time.sleep()方法让程序暂停指定的时间。优点是实现简单,缺点是不够灵活,可能会导致不必要的等待时间浪费。隐式等待。设置一个固定的等待时间,在这个时间内不断尝试去查找元素,如果…...

多线程JUC 第2季 BlockingQueue 阻塞队列

一 阻塞队列 1.1 阻塞队列介绍 阻塞队列(BlockingQueue)是一个在队列基础上又支持了两个附加操作的队列: put方法:当队列装满时,添加的线程则被阻塞,直到队列不满,则可用。 take方法&#x…...

【MySQL精通之路】全文搜索(3)-带查询扩展的全文搜索

博主PS:你可以把他理解为,查询猜测,膨胀查询,查询的第六感。 全文搜索支持查询扩展(尤其是其变体“盲查询扩展”)。 当搜索短语太短时,这通常很有用,这通常意味着用户依赖于全文搜索…...

【面试必看】Java并发

并发 1. 线程 1. 线程vs进程 进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。 系统运行一个程序即是一个进程从创建,运行到消亡的过程。在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进…...

C++的第一道门坎:类与对象(一)

1.面向过程与面向对象 1.1面向过程 我们之前学习的C语言就是一种面向过程的语言,面向过程的语言强调的是具体实现的过程,一般用函数来具体实现。我们用面向过程的思想,就可以把炒菜分为以下几个步骤: 1.2面向对象 而对于面向对象的语言而言…...

经典面试题:MySQL如何调优?

目录 前言1. SQL查询优化2. 索引优化3. 表结构设计4. 硬件与配置优化5. 日常维护6. 性能测试与基准测试 前言 MySQL如何进行调优?这是面试中容易被问到的高频问题。 1. SQL查询优化 避免使用select* :只选取需要的列,减少数据传输量。使用…...

【程序员如何送外卖】

嘿,咱程序员要在美团送外卖,那还真有一番说道呢。 先说说优势哈,咱程序员那逻辑思维可不是盖的,规划送餐路线什么的,简直小菜一碟。就像敲代码找最优解一样,能迅速算出怎么送最省时间最有效率。而且咱平时…...

【git pull 和 push详解】

git pull 和 push详解 1.背景2.命令和解释2.1 git pull简介详情 2.2 git push简介Git Push 参数及详细解释 1.背景 在分布式开发环境中,git pull和git push的使用确保了团队成员之间的代码一致性,减少了不同步导致的问题。它们简化了版本管理&#xff0c…...

数据挖掘导致直接路径读(direct path read)耗尽了IO

一大早就有喊业务卡的,检查等待事件源头,均为oracle写等待 查看IO负载持续维持在100%繁忙 后台有两个并行rman备份在,停止备份io繁忙没有好转,检查最近ash报告,发现DDTEK ODBC Oracle程序模块占用最高 检查该模块&…...

用队列实现栈 用栈实现队列 设计循环队列

用队列实现栈 思路 栈的特点:后进先出 队列的特点:先进先出 使用两个队列实现栈: 我们可以使用两个队列,一个队列为:空队列,一个队列为:非空队列 当我们要出队列时: 将 size - …...

BFS解决最短路问题(详解)

目录 BFS简介 && 框架: 一.二叉树的最小深度 二:迷宫中里入口最近的出口: 三.最小基因变化: 四:单词接龙: ​五:为高尔夫比赛砍树: BFS简介 && 框架: 说到BFS…...

按尺寸筛选轮廓图中的轮廓

1.按短边筛选 原始轮廓图: import cv2 import numpy as np# 读取轮廓图 contour_image cv2.imread(..\\IMGS\\pp_edge.png, cv2.IMREAD_GRAYSCALE)# 使用cv2.findContours()函数获取所有轮廓 contours, _ cv2.findContours(contour_image, cv2.RETR_EXTERNAL, cv2…...

VBA高级应用30例:实现在列表框内及列表框间实现数据拖动

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以…...

「AIGC算法」R-tree算法

R-tree算法是一种非常实用的空间数据索引技术,它可以帮助我们在复杂的空间数据中快速找到我们想要的信息。下面我将用一些生活中的例子来帮助大家更好地理解R-tree算法。 1. 定义与原理 想象一下,你有一个巨大的图书馆,里面有成千上万本书,每本书都有它在书架上的特定位置…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

Linux链表操作全解析

Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留,CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制(CCA-Attention),…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

连锁超市冷库节能解决方案:如何实现超市降本增效

在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来&#xf…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"&#xff0…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...

【Oracle】分区表

个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...