精华内容
下载资源
问答
  • 二维离散化方程
    2019-10-03 01:33:22

    二维离散化

    普通的离散化就是一根x轴按顺序离散化成 1-n,比如  505,654,100000 ,3565464,这四个点,我们离散化的话就变成了1,2,3,4

    一根x轴的我们只要先后顺序即可,但是二维的我们还需要知道他们x,y之间的联系,所以我们需要分情况来讨论

    1,如果两个坐标横坐标连续,那么我们就是连续的

    2,如果不连续,那么我们中间就要隔1

    比如  (1,100)  (2,105)  (100,106)

    就会变成 (1,1)  (2,3)  (4,4) 这三个点

    有些时候我们为了确保正确性我们会加两个边界值进行排序,最小值1,最大值  maxsize

     

    差不多意思就是要变成上述的点,实现起来与普通离散化也类似

    转载于:https://www.cnblogs.com/Lis-/p/11279355.html

    更多相关内容
  • 这是使用有限体积法 (FVM) 求解二维扩散方程的 MATLAB 代码。 使用的插值方案是迎风方案。 在完成使用轮廓功能后处理。
  • 对于二维对流扩散方程的空间离散,包含数据的初始,网格划分计算等前处理操作;边界条件、迭代过程给定等迭代求解;输出计算结果、计算时间补偿和当前时刻等时间推进和后处理操作
  • 二维坐标离散化

    2020-10-07 13:47:19
    离散化,把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。 通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。 —百度百科 经常遇到二维坐标分不大,但数据量少,即...

    离散化,把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率。
    通俗的说,离散化是在不改变数据相对大小的条件下,对数据进行相应的缩小。 —百度百科

    经常遇到二维坐标分不大,但数据量少,即稀疏的二维坐标的题。
    P3431 [POI2005]AUT-The Bus
    一个二维坐标,x 轴的取值为[1, 1e9], y 轴的取值为[1, 1e9], 但数据只有 k(<=5000)
    这1e9 * 1e9的图有用的点,最大为 5000,我们也建不了1e9 * 1e9的二维坐标,且程序运行时间大幅上升
    这时候就需要对其进行离散化

    就是对较大的坐标值,我们用较小的值来描述该点,也能够表示处理前各点之间的关系
    用实例来描述该方法,对(5, 5000),(901, 300),(900, 6), 进行离散化

    对 x 轴离散化:先对 x 轴的点去重排序得到 5,900,901:5 -> 1,因为 5 与 900 不相邻,则900 -> 3,900 与 901 相邻,则901 -> 4
    5, 900, 901 --> 1, 3, 4。依旧保留了之前相邻的关系

    对 y 轴离散化:先对 y 轴的点去重排序得到 6, 300, 5000:6 -> 1, 因为6 与 300 不相邻,则300 -> 3,300 与 5000不相邻,则 5000 -> 5
    6, 300, 5000 --> 1, 3, 5
    最后离散后得到的点为 (1,5),(4,3 ),(3,1)

    代码实现:

    #include <bits/stdc++.h>
    using namespace std;
    const int maxn = 1e3;
    int n, m, k, ans;
    int x[maxn], y[maxn];
    int nx[maxn*2], ny[maxn*2];
    int tot1 = 1, tot2 = 1;
    int mp[maxn*2][maxn*2];
    struct node {
    	int x, y;
    }a[maxn];
    
    int main(){
    	cin >> n >> m >> k;
    	for(int i = 0; i < k; i++){
    		cin >> x[i] >> y[i];
    		a[i].x = x[i], a[i].y = y[i];
    	}
    	
    	// 排序 
    	sort(x , x + k);
    	sort(y, y + k);
    	// 去重 并得到有多少个点 
    	int len1 = unique(x , x + k) - x;
    	int len2 = unique(y , y + k) - y;
    
    	// 离散化 x 轴
    	for(int i = 0; i < len1; i++){
    		if(i && x[i] != x[i - 1] + 1)
    			nx[tot1++] = x[i] - 1, nx[tot1++] = x[i];
    		else
    			nx[tot1++] = x[i];
    	}
    	for(int i = 0; i < tot1; i++)
    		cout << nx[i] << " ";
    	cout << endl;
    	// 离散化 y 轴
    	for(int i = 0; i < len2; i++){
    		if(i && y[i] != y[i - 1] + 1)
    			ny[tot2++] = y[i] - 1, ny[tot2++] = y[i];
    		else
    			ny[tot2++] = y[i];
    	}
    	// 
    	for(int i = 0; i < k; i++){
    		int newx = lower_bound(nx, nx + tot1, a[i].x) - nx;
    		int newy = lower_bound(ny, ny + tot2, a[i].y) - ny;
    		mp[newx][newy] = 1;
    	}
    	
    	for(int i = 1; i < tot1; i++){
    		for(int j = 1; j < tot2; j++)
    			cout << mp[i][j] << " ";
    		cout << endl;
    	}
    	return 0;
    }
    
    
    展开全文
  • “ UNSTEADY_CONVECTION_DIFFUSION”脚本用双线性四边形元素求解对流扩散问题的二维标量方程。 空间离散化是通过标准的Galerkin方法执行的。 对于时间积分,已经实施了 theta 方法。 根据 theta 的值,获得这些方案...
  • 冯立伟+张成+屈福志"""摘要:针对二维对流扩散方程边值问题,采用三角形剖分,使用二维线性有限元进行计算分析。采用matlab编写了计算程序,使用算例进行了数值实验,实验结果表明数值解具有较高的计算精度。关键词...

    冯立伟+张成+屈福志

    73f281104ea68a614ad76b4e1cf56da4.png"

    f435a99a7b3fe2c9ff5a20a4cf5614c7.png"

    6c2be9848d9e01f79592fdd6a14d40ce.png"

    摘要:针对二维对流扩散方程边值问题,采用三角形剖分,使用二维线性有限元进行计算分析。采用matlab编写了计算程序,使用算例进行了数值实验,实验结果表明数值解具有较高的计算精度。

    关键词:对流扩散;有限元;三角形剖分;Matlab

    中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)21-0197-03

    Abstract:For two dimensional convection-diffusion equation boundary value problem, using triangulation and using two-dimensional linear finite element were calculated and analyzed. Calculation program is compiled using matlab, and use a numerical example to the numerical experiments are carried out. The experimental results show that the high accuracy of the numerical solution is.

    Key words:Convection- diffusion;FEM;Triangle subdivision;Matlab

    对流扩散方程描述了在自然界中大量出现的对流扩散现象,在流体力学、环境科学以及能源开发等诸多领域有着广泛的应用。因此研究对流扩散问题的数值计算方法就尤为重要[1-3]。求解对流扩散方程已有大量有限差分求解方法和有限元求解方法及理论分析[4-10]。本文求解二维对流扩散方程,求解区域采用三角形剖分,在三角形单元上使用线性形状函数进行有限元离散,给出了详细计算过程,并重点分析了使用matlab编制对应的求解程序。数值试验验证了数值计算方法的有效性。

    4 结论

    通过上述两个数值实验,可看出有限元可实现对流扩散方程的求解,数值解具有比较高的精度。当网格剖分越密数值解越准确,扩散系数变小时误差变大。

    参考文献:

    [1] 王同科.一维对流扩散方程C-N特征差分格式[J].应用数学,2001,14(4):55-60.

    [2] 王文洽. 变系数对流扩散方程的交替分段Crank-Nicolson方法[J]. 应用数学和力学,2004,24(1):29-36.

    [3] 由同顺. 对流扩散方程的本质非振荡特征差分方法[J]. 应用数学, 2000,13(4):89-94.

    [4] 葛永斌,田振夫,詹咏,等.求解扩散方程的一种高精度紧致隐式差分方法[J].上海理工大学学报,2005,27(2):107-110.

    [5] 葛永斌,田振夫,吴文权.含源项非定常对流扩散方程的高精度紧致隐式差分方法[J].水动力学研究与进展(辑),2006,121 (5): 619-625.

    [6] 王煊,杨志峰. 基于非均匀网格求解非线性对流扩散问题的一种高精度差分格式[J].北京师范大学学报(自然科学版),2003,39(1):131-137.

    [7] 肖建英,刘小华,李永涛.非定常对流扩散方程得高阶差分格式[J]. 西南石油大学(自然科学版)2012,34(3):145-149.

    [8] 王国婷,闵涛,马晓伟,等.一类非线性稳态对流扩散方程的有限体积元求解方法 [J].科技通报,2009,25(6): 56-60.

    [9] 范馨月,杨一都.非对称对流扩散问题有限元方法的MATLAB实现[J].贵州师范大学学报,2007,25(4): 61-66.

    [10] 刘相国 张海燕.一类对流扩散方程的有限元方法 [J].安徽科技学院学报,2011,25(5): 56-60.

    使用JPEG2000图像压缩技术的优势,在于将JPEG图像压缩技术的效率提高了百分之30,而且对图像的有损和无损压缩可以同时进行,图像压缩后的画质更为细腻和平滑,这是对JPEG图像压缩技术的一大革新。另外,将JPEG图像压缩技术的按块传输创新提升为了渐进传输,方便用户使用,不必非要接收整个图像压缩码流,还能随机获取。并可以执行传输、滤波等操作程序。JPEG2000图像压缩技术如今在很多领域正在被广泛使用,如数字医疗、图书馆、数码传真、打印,移动通信等。尤其是在电子商务中得到用户的广泛赞誉。

    3.3 小波变化图像压缩技术

    小波变化图像压缩技术是根据塔式快速小波变换算法将图像进行分解,采用多分辨率的技术手段的工作原理:首先采用多级小波进行图像分解,将分解后的系数量化、编码,形成小波图像压缩。小波图像压缩也已经拥有了国际压缩标准,按照MPEG-4进行命名[3]。

    小波变换图像压缩技术目前的发展现状是采用不同算法构建三种不同的编码器:

    第一,嵌入式小波零树图像编码是空间小波树递编码,这种小波零树概念提高了小波系数的编码概念,将高频系数剔除出去,采用了渐进性量化和嵌入式编码模式,比较方便计算。小波零数图像编码的使用改变了以往的压缩编码器必须使用复杂的算法才能进行信息处理的方式,将计算方法简化,而且得到的结果精确可靠,因此得到了国际认可,图像压缩数据处理的发展历程上具有重要的意义。

    第二,空间树分层分割方法采用了分层小波树集合分割算法,减小了编码符号集在比特面上的规模,利用小波系数幅值衰减规律构成了不同类型的空间零树,计算方法也比较简单,使用嵌入式比特流,提高了编码器更多的性能。

    第三,嵌入型编码使用的优化分层阶段算法将小波分为独立的码块,这些码块中带有子带部分,每个码块都有编码,产生带有SNR扩展功能的编码,支持随机存储图像功能,与前面所述的两种算法相比,相对较为复杂。但是压缩性能也高。

    三种图像压缩方法比较起来,小波图像压缩方法是目前来说比较被广泛使用的。小波图像压缩方法要得到进一步拓展,应在与人眼视觉特性的结合上下功夫,提高图像质量,提高压缩比,并注意与其他压缩方法的优势相结合进行研究。

    3.4 分形图像压缩

    分形图像压缩,是上世纪八十年代经过实验证明得出的压缩比较高的图像压缩技术,这是基于局部迭代函数系统理论而产生的图像压缩技术,得到的图像编码技术要比以往的图像压缩技术高几个数量级,实现了计算机自动压缩图像的功能。

    分形图像压缩使用的是迭代函数系统,其工作原理是:首先使用迭代函数系统定理、拼贴定理,将图像分割成若干对应迭代函数的子图像,迭代函数与子图像的压缩比成反比,迭代函数简单的子图像压缩比会比较大。解码过程是利用迭代函数对应子图像的原理调出自图像的原始状态。

    分形图像编码技术的几个主要分项包括:对曲线长度使用类似于亚取样、内插法等进行小尺度度量,与分形几何的肚量方法不同的是采用分形思想,对不规则、复杂的图像进行尺度的变化。利用人机交互的拼贴技术,采用迭代函数系统方法,对图像的整体和局部进行表达,通过仿射系数的存储来进行变换达到压缩的目的。放射变幻可以利用迭代函数系统达到比较高的压缩比。将图像进行全自动的分形压缩,在寻找映射关系的过程中处理块与块之间的局部关系,取出冗余度,但是存在比较明显的方块效应。因此在图像解码处理中存在一定缺陷。

    采用分形图像压缩进行图像处理在图像压缩技术领域里并没有被广泛使用,主要原因就是其明显的风快效应没有被妥善解决。但是分形图像压缩技术的优势在于它不仅考虑了局部与局部,而且也考虑了局部与整体的相关性,与自然中的自相似与自仿射的原理有相像,因此还是有一定的使用范围的。

    3.5 其他压缩技术

    其他压缩技术,还包括NNT压缩、基于神经网络的压缩等方法。

    第一,形状自适应压缩是将任意形状的图像进行分块,每块都采用DCT变换的方法,实现形状自适应变换,在变幻过程中可能会丢失一些空域相关性。因此会存在失真的现象。

    第二,EGGER方法是对任意形状图像进行小波变换,其工作原理是将图像的像素推到与边界框右边框平齐的位置,使用小波变换的特性,将高频部分的边界部分进行合并,引起小波分解,形成小波系数的相同相位。

    第三,形状自适应小波变换包括对任意形状进行熵编码的扩大和嵌入式小波编码。经过对任意形状可是对象的像素进行小波变换,使像素的空域相关性、子带区域属性发生自相似性,实现任意形状静态的编码标准能够很好地表现出来。

    第四,上述编码方法在未来的发展方向是与人类视觉系统相结合,对边缘、纹理、背景等进行不同比例的压缩,得到更大的压缩比,以便更好的储存和传输[4]。

    4 图像压缩技术的未来发展方向设想

    1)计算机速度向着高速方向前进。这是计算机技术的飞跃带来的结果,未来可以实现图像压缩的实时化。

    2)高分辨率。包括分辨率采集的提高和显示分辨率的提高。在克服显像管制造技术的难点、提高图像图像刷新存取速度的基础上,提高分辨率将成为现实。

    3)图像压缩实现立体化的,从二维进入三维时代。是时利用计算机图形学、虚拟现实技术的发展而得到的结果,未来的图像压缩将不再局限于平面,而是实现三维立体压缩技术。

    4)利用多媒体技术来实现图像数据的压缩,方便人类接收信息的方式向着多媒体接收的方式发展。

    5)按照人类的意图和思维方式,使计算机能够自行判断图像压缩技术,实现图像压缩技术的智能化。在图像压缩中计算机就能达到人脑的主观和非逻辑思维能力。

    6)在计算机中植入多功能芯片,实现图像压缩为实践服务的功能。

    7)推行新的计算方法,结合遗传算法和神经网络学科,将新的理论,如Fratal理论广泛应用于图像压缩技术中,并可以在物理、数学、音乐等学科中触类旁通。

    5 结语

    在过去数十年的研究过程中,图像压缩技术取得了很大的成绩。例如小波图像压缩、分形推向压缩等先进技术,至今依然是学术界热议的焦点。但是其存在的缺点也必须加以重视,新的技术必将对之进行替代。在今后的发展中,应不断结合本文提及的视觉神经等其他学科的运用,将图像压缩技术引领入更加宽泛、更加广阔的研究领域,让图像压缩技术在信息发达的当今社会中,得到更长远的发展和更加有益的利用。

    参考文献:

    [1] 周晶. 数字图像压缩技术的应用与研究[J].黑龙江科学, 2015(4).

    [2] 王亚男, 张敬申, 冯杰等. 数字图像压缩技术综述[J]. 科教导刊-电子版(上旬), 2014(5).

    [3] 黄新民, 姚军财, 何军锋等. 基于离散傅立叶变换的水稻作物数字图像压缩技术研究[J]. 农业科学与技术: 英文版, 2012,13(3).

    [4] 郭宏亮. 一种图像压缩无损编码中的小波系数优化算法[J]. 科技通报, 2013,29(4).

    展开全文
  • 表面离散化边界方程法是最近被提出的分析电磁散射问题的数值方法,论文基于组合场积分方程的表面离散边界方程法,分析了二维导体的电磁散射问题数值计算结果表明:对于TM波,基于组合场积分方程的表面离散化方程与基于...
  • 二维、三维扩散方程的有限体积分离散推导

    稳态扩散方程
    ∇ ⋅ ( Γ ∇ ϕ ) + S ϕ = 0 (1) \nabla \cdot ( \Gamma \nabla \phi) + S_\phi =0 \tag{1} (Γ∇ϕ)+Sϕ=0(1)
    在有限控制体内积分,并由高斯散度定理有,
    ∫ C V ∇ ⋅ ( Γ ∇ ϕ ) d V + ∫ C V S ϕ d V = ∫ A ~ n ⋅ ( Γ ∇ ϕ ) d A + ∫ C V S ϕ d V = 0 (2) \begin{aligned} \int_{CV} \nabla \cdot (\Gamma \nabla \phi ) dV + \int_{CV} S_\phi dV \\ \\ =\int_{\tilde A} \bold n \cdot (\Gamma \nabla \phi)dA + \int_{CV} S_\phi dV =0 \tag{2} \end{aligned} CV(Γ∇ϕ)dV+CVSϕdV=A~n(Γ∇ϕ)dA+CVSϕdV=0(2)

    其中 n \bold n n为边界面 A ~ \tilde A A~的法向量, Γ \Gamma Γ为扩散系数。

    二维扩散方程的离散

    根据式 ( 1 ) (1) (1),二维模型的扩散方程为,
    ∂ ∂ x ( Γ ∂ ϕ ∂ x ) + ∂ ∂ y ( Γ ∂ ϕ ∂ y ) + S ϕ = 0 (3) \frac{\partial}{\partial x} \left( \Gamma \frac{\partial \phi}{\partial x} \right) + \frac{\partial }{\partial y} \left( \Gamma \frac{\partial \phi}{\partial y} \right) + S_\phi =0 \tag{3} x(Γxϕ)+y(Γyϕ)+Sϕ=0(3)
    与一维扩散方程推导类似,先将二维计算域划分网格,
    在这里插入图片描述
    在二维空间中,梯度矢量有两个分量, ∂ ϕ ∂ x i \frac{\partial \phi}{\partial x} \bold i xϕi ∂ ϕ ∂ y j \frac{\partial \phi}{\partial y} \bold j yϕj,方向分别指向 x x x y y y轴的正方向。

    散度的离散

    在二维空间,单元P的边界包括 w 、 e 、 s w、e、s wes n n n四个边界面,由于网格和坐标轴是平行或垂直的, ∂ ϕ ∂ y \frac{\partial \phi}{\partial y} yϕ在边界面 w 、 e w、e we上的通量为零,同理 ∂ ϕ ∂ x \frac{\partial \phi}{\partial x} xϕ在边界面 s 、 n s、n sn上的通量为零。所以,

    ∫ C V ∇ ⋅ ( Γ ∇ ϕ ) d V + ∫ C V S ϕ d V = ∫ A ~ n ⋅ ( Γ ∇ ϕ ) d A + ∫ C V S ϕ d V = ∫ A ~ n ⋅ [ ( Γ ∂ ϕ ∂ x ) i + ( Γ ∂ ϕ ∂ y ) j ] d A + ∫ C V S ϕ d V = [ ( Γ A ∂ ϕ ∂ x ) e − ( Γ A ∂ ϕ ∂ x ) w ] + [ ( Γ A ∂ ϕ ∂ y ) n − ( Γ A ∂ ϕ ∂ y ) s ] + S ˉ ϕ Δ V = 0 (4) \begin{aligned} & \int_{CV} \nabla \cdot (\Gamma \nabla \phi ) dV + \int_{CV} S_\phi dV \\ \\ &=\int_{\tilde A} \bold n \cdot (\Gamma \nabla \phi)dA + \int_{CV} S_\phi dV \\ \\ &=\int_{\tilde A} \bold n \cdot \left[ \left( \Gamma \frac{\partial \phi}{\partial x} \right) \mathbf i + \left( \Gamma \frac{\partial \phi}{\partial y} \right) \mathbf j \right] dA + \int_{CV}S_\phi dV \\ \\ &=\left[ \left( \Gamma A \frac{\partial \phi}{\partial x} \right)_e - \left(\Gamma A \frac{\partial \phi}{\partial x} \right)_w \right] + \left[ \left( \Gamma A \frac{\partial \phi}{\partial y} \right)_n - \left(\Gamma A \frac{\partial \phi}{\partial y} \right)_s \right] + \bar S_\phi \Delta V\\ \\ &=0 \tag{4} \end{aligned} CV(Γ∇ϕ)dV+CVSϕdV=A~n(Γ∇ϕ)dA+CVSϕdV=A~n[(Γxϕ)i+(Γyϕ)j]dA+CVSϕdV=[(ΓAxϕ)e(ΓAxϕ)w]+[(ΓAyϕ)n(ΓAyϕ)s]+SˉϕΔV=0(4)

    其中 A A A代表边界面的面积, S ˉ \bar{S} Sˉ是控制体单元 Δ V \Delta V ΔV内的平均源项。边界面 w w w s s s上的通量为负,原因与一维扩散方程情况类似。

    梯度的离散

    与一维方程相同,梯度项采用中心差分格式离散,
    ( Γ A ∂ ϕ ∂ x ) w = Γ w A w ( ϕ P − ϕ W ) δ x W P (5a) \left ( \Gamma A \frac{\partial \phi}{\partial x} \right)_w = \Gamma_w A_w \frac{ ( \phi_P - \phi_W) }{\delta x_{WP}} \tag{5a} (ΓAxϕ)w=ΓwAwδxWP(ϕPϕW)(5a)

    ( Γ A ∂ ϕ ∂ x ) e = Γ e A e ( ϕ E − ϕ P ) δ x P E (5b) \left ( \Gamma A \frac{\partial \phi}{\partial x} \right)_e = \Gamma_e A_e \frac{ ( \phi_E - \phi_P) }{\delta x_{PE}} \tag{5b} (ΓAxϕ)e=ΓeAeδxPE(ϕEϕP)(5b)

    ( Γ A ∂ ϕ ∂ y ) s = Γ s A s ( ϕ P − ϕ S ) δ y S P (5c) \left ( \Gamma A \frac{\partial \phi}{\partial y} \right)_s = \Gamma_s A_s \frac{ ( \phi_P - \phi_S) }{\delta y_{SP}} \tag{5c} (ΓAyϕ)s=ΓsAsδySP(ϕPϕS)(5c)

    ( Γ A ∂ ϕ ∂ y ) n = Γ n A n ( ϕ N − ϕ P ) δ y P N (5d) \left ( \Gamma A \frac{\partial \phi}{\partial y} \right)_n = \Gamma_n A_n \frac{ ( \phi_N - \phi_P) }{\delta y_{PN}} \tag{5d} (ΓAyϕ)n=ΓnAnδyPN(ϕNϕP)(5d)

    将式 ( 5 a ) (5a) (5a)~ ( 5 d ) (5d) (5d)带入到式 ( 4 ) (4) (4)中,有
    Γ e A e ( ϕ E − ϕ P ) δ x P E − Γ w A w ( ϕ P − ϕ W ) δ x W P + Γ n A n ( ϕ N − ϕ P ) δ y P N − Γ s A s ( ϕ P − ϕ S ) δ y S P + ( S u + S P ϕ P ) = 0 (6) \begin{aligned} \Gamma_e A_e \frac{(\phi_E - \phi_P)}{\delta x_{PE}} - \Gamma_w A_w \frac{(\phi_P - \phi_W)}{\delta x_{WP}} + \Gamma_n A_n \frac{(\phi_N - \phi_P)}{\delta y_{PN}} \\ \\ - \Gamma_s A_s \frac{(\phi_P - \phi_S)}{\delta y_{SP}} + (S_u + S_P \phi_P) =0 \tag{6} \end{aligned} ΓeAeδxPE(ϕEϕP)ΓwAwδxWP(ϕPϕW)+ΓnAnδyPN(ϕNϕP)ΓsAsδySP(ϕPϕS)+(Su+SPϕP)=0(6)

    式中 ( S u + S P ϕ P ) = S ˉ ϕ Δ V (S_u + S_P \phi_P)=\bar S_\phi \Delta V (Su+SPϕP)=SˉϕΔV,整理得,
    ( Γ w A w δ x W P + Γ e A e δ x P E + Γ s A s δ y S P + Γ n A n δ y P N − S P ) ϕ P = ( Γ w A w δ x W P ) ϕ W + ( Γ e A e δ x P E ) ϕ E + ( Γ s A s δ y S P ) ϕ S + ( Γ n A n δ y P ) ϕ N + S u (7) \begin{aligned} &\left( \frac{\Gamma_w A_w}{\delta x_{WP}} + \frac{\Gamma_e A_e}{\delta x_{PE}} + \frac{\Gamma_s A_s}{\delta y_{SP}} +\frac{\Gamma_n A_n}{\delta y_{PN}} - S_P \right) \phi_P \\ \\ &=\left( \frac{\Gamma_w A_w}{\delta x_{WP}} \right) \phi_W + \left( \frac{\Gamma_e A_e}{\delta x_{PE}} \right) \phi_E + \left( \frac{\Gamma_s A_s}{\delta y_{SP}} \right) \phi_S + \left( \frac{\Gamma_n A_n}{\delta y_{P}} \right) \phi_N + S_u \end{aligned} \tag{7} (δxWPΓwAw+δxPEΓeAe+δySPΓsAs+δyPNΓnAnSP)ϕP=(δxWPΓwAw)ϕW+(δxPEΓeAe)ϕE+(δySPΓsAs)ϕS+(δyPΓnAn)ϕN+Su(7)

    简化之,

    a P ϕ P = a W ϕ W + a E ϕ E + a S ϕ S + a N ϕ N + S u (8) a_P \phi_P = a_W \phi_W + a_E \phi_E + a_S \phi_S + a_N \phi_N + S_u \tag{8} aPϕP=aWϕW+aEϕE+aSϕS+aNϕN+Su(8)

    其中各系数为
    a W = Γ w A w δ x W P (9a) a_W = \frac{\Gamma_w A_w}{\delta x_{WP}} \tag{9a} aW=δxWPΓwAw(9a)

    a E = Γ e A e δ x P E (9b) a_E = \frac{\Gamma_e A_e}{\delta x_{PE}} \tag{9b} aE=δxPEΓeAe(9b)

    a S = Γ s A s δ y S P (9c) a_S = \frac{\Gamma_s A_s}{\delta y_{SP}} \tag{9c} aS=δySPΓsAs(9c)

    a N = Γ n A n δ y P N (9d) a_N = \frac{\Gamma_n A_n}{\delta y_{PN}} \tag{9d} aN=δyPNΓnAn(9d)

    a P = a W + a E + a S + a N − S P (9e) a_P = a_W + a_E + a_S + a_N - S_P \tag{9e} aP=aW+aE+aS+aNSP(9e)
    边界处的扩散系数 Γ \Gamma Γ可以通过线性插值计算,见一维扩散方程推导中公式 ( 12 ) (12) (12)

    三维离散的扩散方程

    在这里插入图片描述
    三维扩散方程:
    ∂ ∂ x ( Γ ∂ ϕ ∂ x ) + ∂ ∂ y ( Γ ∂ ϕ ∂ y ) + ∂ ∂ z ( Γ ∂ ϕ ∂ z ) + S ϕ = 0 (10) \frac{\partial}{\partial x} \left( \Gamma \frac{\partial \phi}{\partial x} \right) + \frac{\partial}{\partial y} \left( \Gamma \frac{\partial \phi}{\partial y} \right) + \frac{\partial}{\partial z} \left( \Gamma \frac{\partial \phi}{\partial z} \right) + S_\phi = 0 \tag{10} x(Γxϕ)+y(Γyϕ)+z(Γzϕ)+Sϕ=0(10)
    三维扩散方程的离散推导和二维的套路是一毛一样的,无非就是多了两个边界面 b b b t t t,散度离散和梯度离散时多了两项,梯度离散方法和方程式 ( 5 ) (5) (5)一样也用中心差分格式,然后带入,整理,简化之。

    散度离散

    ∫ C V ∇ ⋅ ( Γ ∇ ϕ ) d V + ∫ C V S ϕ d V = ∫ A ~ n ⋅ [ ∂ ∂ x ( Γ ∂ ϕ ∂ x ) i + ∂ ∂ y ( Γ ∂ ϕ ∂ y ) j + ∂ ∂ z ( Γ ∂ ϕ ∂ z ) k ] d A + ∫ C V S ϕ d V = [ ( Γ A ∂ ϕ ∂ x ) e − ( Γ A ∂ ϕ ∂ x ) w ] + [ ( Γ A ∂ ϕ ∂ y ) n − ( Γ A ∂ ϕ ∂ y ) s ] + [ ( Γ A ∂ ϕ ∂ z ) t − ( Γ A ∂ ϕ ∂ z ) b ] + S ˉ ϕ Δ V = 0 (11) \begin{aligned} &\int_{CV} \nabla \cdot ( \Gamma \nabla \phi ) dV + \int_{CV} S_\phi dV \\ \\ &=\int_{\tilde A} \bold n \cdot \left[ \frac{\partial}{\partial x}\left( \Gamma \frac{\partial \phi}{\partial x} \right) \bold i + \frac{\partial}{\partial y}\left( \Gamma \frac{\partial \phi}{\partial y} \right) \bold j + \frac{\partial}{\partial z}\left( \Gamma \frac{\partial \phi}{\partial z} \right) \bold k \right] dA + \int_{CV} S_\phi dV \\ \\ &=\left[ \left( \Gamma A \frac{\partial \phi}{\partial x} \right)_e - \left(\Gamma A \frac{\partial \phi}{\partial x} \right)_w \right] + \left[ \left( \Gamma A \frac{\partial \phi}{\partial y} \right)_n - \left(\Gamma A \frac{\partial \phi}{\partial y} \right)_s \right] \\ \\ & \qquad + \left[ \left( \Gamma A \frac{\partial \phi}{\partial z} \right)_t - \left(\Gamma A \frac{\partial \phi}{\partial z} \right)_b \right] + \bar S_\phi \Delta V =0 \tag{11} \end{aligned} CV(Γ∇ϕ)dV+CVSϕdV=A~n[x(Γxϕ)i+y(Γyϕ)j+z(Γzϕ)k]dA+CVSϕdV=[(ΓAxϕ)e(ΓAxϕ)w]+[(ΓAyϕ)n(ΓAyϕ)s]+[(ΓAzϕ)t(ΓAzϕ)b]+SˉϕΔV=0(11)

    梯度离散

    梯度项采用中心差分格式离散,边界面 e 、 w 、 s 、 n e、w、s、n ewsn处的梯度离散和式 ( 5 ) (5) (5)一样,多出来的两项公式如下,
    ( Γ A ∂ ϕ ∂ z ) b = Γ b A b ( ϕ P − ϕ B ) δ z B P (12a) \left ( \Gamma A \frac{\partial \phi}{\partial z} \right)_b = \Gamma_b A_b \frac{ ( \phi_P - \phi_B) }{\delta z_{BP}} \tag{12a} (ΓAzϕ)b=ΓbAbδzBP(ϕPϕB)(12a)

    ( Γ A ∂ ϕ ∂ x ) t = Γ t A t ( ϕ T − ϕ P ) δ z P T (12b) \left ( \Gamma A \frac{\partial \phi}{\partial x} \right)_t = \Gamma_t A_t \frac{ ( \phi_T - \phi_P) }{\delta z_{PT}} \tag{12b} (ΓAxϕ)t=ΓtAtδzPT(ϕTϕP)(12b)
    带入式 ( 11 ) (11) (11),有
    [ Γ e A e ( ϕ E − ϕ P ) δ x P E − Γ w A w ( ϕ P − ϕ W ) δ x W P ] + [ Γ n A n ( ϕ N − ϕ P ) δ y P N − Γ s A s ( ϕ P − ϕ S ) δ y S P ] + [ Γ t A t ( ϕ T − ϕ P ) δ z P T − Γ b A b ( ϕ P − ϕ B ) δ z B P ] + ( S u + S P ϕ P ) = 0 (13) \begin{aligned} &\left[ \Gamma_e A_e \frac{(\phi_E - \phi_P)}{\delta x_{PE}} - \Gamma_w A_w \frac{(\phi_P - \phi_W)}{\delta x_{WP}} \right] \\ \\ &+ \left[ \Gamma_n A_n \frac{(\phi_N - \phi_P)}{\delta y_{PN}} - \Gamma_s A_s \frac{(\phi_P - \phi_S)}{\delta y_{SP}} \right ] \\ \\ &+ \left[ \Gamma_t A_t \frac{(\phi_T - \phi_P)}{\delta z_{PT}} - \Gamma_b A_b \frac{(\phi_P - \phi_B)}{\delta z_{BP}} \right ] \\ \\ &+ (S_u + S_P \phi_P) =0 \tag{13} \end{aligned} [ΓeAeδxPE(ϕEϕP)ΓwAwδxWP(ϕPϕW)]+[ΓnAnδyPN(ϕNϕP)ΓsAsδySP(ϕPϕS)]+[ΓtAtδzPT(ϕTϕP)ΓbAbδzBP(ϕPϕB)]+(Su+SPϕP)=0(13)
    整理并简化之,
    a P ϕ P = a W ϕ W + a E ϕ E + a S ϕ S + a N ϕ N + a B ϕ B + a T ϕ T + S u (14) a_P \phi_P = a_W \phi_W + a_E \phi_E + a_S \phi_S + a_N \phi_N + a_B \phi_B + a_T \phi_T+ S_u \tag{14} aPϕP=aWϕW+aEϕE+aSϕS+aNϕN+aBϕB+aTϕT+Su(14)
    各项系数,
    a W = Γ w A w δ x W P (15a) a_W = \frac{\Gamma_w A_w}{\delta x_{WP}} \tag{15a} aW=δxWPΓwAw(15a)

    a E = Γ e A e δ x P E (15b) a_E = \frac{\Gamma_e A_e}{\delta x_{PE}} \tag{15b} aE=δxPEΓeAe(15b)

    a S = Γ s A s δ y S P (15c) a_S = \frac{\Gamma_s A_s}{\delta y_{SP}} \tag{15c} aS=δySPΓsAs(15c)

    a N = Γ n A n δ y P N (15d) a_N = \frac{\Gamma_n A_n}{\delta y_{PN}} \tag{15d} aN=δyPNΓnAn(15d)

    a B = Γ b A b δ z B P (15e) a_B = \frac{\Gamma_b A_b}{\delta z_{BP}} \tag{15e} aB=δzBPΓbAb(15e)

    a T = Γ t A t δ z P T (15f) a_T = \frac{\Gamma_t A_t}{\delta z_{PT}} \tag{15f} aT=δzPTΓtAt(15f)

    a P = a W + a E + a S + a N + a B + a T − S P (15h) a_P = a_W + a_E + a_S + a_N + a_B + a_T - S_P \tag{15h} aP=aW+aE+aS+aN+aB+aTSP(15h)

    总结

    通过有限体积法离散后的稳态扩散方程可以统一写成如下形式,
    a P ϕ P = Σ a n b ϕ n b + S u (16) a_P \phi_P = \Sigma a_{nb}\phi_{nb} + S_u \tag{16} aPϕP=Σanbϕnb+Su(16)
    其中,“ n b nb nb”代表单元 P P P相邻的节点, Σ \Sigma Σ代表所有相邻节点之和。
    系数 a P a_P aP a n b a_{nb} anb之间的关系为:
    a P = Σ a n b − S P (17) a_P = \Sigma a_{nb} - S_P \tag{17} aP=ΣanbSP(17)
    相邻节点的系数 a n b a_{nb} anb计算如下表,

    a W a_W aW a E a_E aE a S a_S aS a N a_N aN a B a_B aB a T a_T aT
    1D Γ w A w δ x W P \frac{\Gamma_w A_w}{\delta x_{WP}} δxWPΓwAw Γ w A e δ x P E \frac{\Gamma_w A_e}{\delta x_{PE}} δxPEΓwAe
    2D Γ w A w δ x W P \frac{\Gamma_w A_w}{\delta x_{WP}} δxWPΓwAw Γ w A e δ x P E \frac{\Gamma_w A_e}{\delta x_{PE}} δxPEΓwAe Γ s A s δ y S P \frac{\Gamma_s A_s}{\delta y_{SP}} δySPΓsAs Γ n A n δ y P N \frac{\Gamma_n A_n}{\delta y_{PN}} δyPNΓnAn
    3D Γ w A w δ x W P \frac{\Gamma_w A_w}{\delta x_{WP}} δxWPΓwAw Γ w A e δ x P E \frac{\Gamma_w A_e}{\delta x_{PE}} δxPEΓwAe Γ s A s δ y S P \frac{\Gamma_s A_s}{\delta y_{SP}} δySPΓsAs Γ n A n δ y P N \frac{\Gamma_n A_n}{\delta y_{PN}} δyPNΓnAn Γ b A b δ z B P \frac{\Gamma_b A_b}{\delta z_{BP}} δzBPΓbAb Γ t A t δ z P T \frac{\Gamma_t A_t}{\delta z_{PT}} δzPTΓtAt

    参考资料:

    1. Versteeg H K , Malalasekera W . An introduction to computational fluid dynamics : the finite volume method = 计算流体动力学导论[M]. 世界图书出版公司, 2010.
    展开全文
  • 给出了求解二维第一类Fredholm积分方程信赖域方法。通过引入正则参数将离散后的Fredholm积分方程转化带参数的最优化问题,借助于KKT条件将二次信赖域子问题参数,并进行分析求解,最后给出了数值模拟。
  • 本文以二维方式获得了输运方程的等几何误差估计,证明了等几何方法的收敛性。 我们得到的结果,将Ern结果推广到有限元方法中。 对于时间离散化,使用两阶段Heun方案证明了这一结果。 对于度数k≥1的多项式,空间收敛...
  • [数学]偏微分方程离散化方法4偏微分方程离散化方法 一、离散化的概念 油藏是非均质的,岩石和流体性质伴随时间常常是发生变化的,建立的偏微分方程一般是非线性的,求解偏微分方程的解析解比较困难,常用数值...
  • 这项工作的目的是为解决MA方程实施一个更健壮和省时的方案,并针对不同的离散化和完整的多网格方案进行收敛性研究。 我们将MA运算符表示为Hessian矩阵的特征值的乘积。 这允许可证明收敛的全局椭圆离散化。 该方法将...
  • 《偏微分方程离散化方法研究》由会员分享,可在线阅读,更多相关《偏微分方程离散化方法研究(30页珍藏版)》请在人人文库网上搜索。1、偏微分方程的,一、离散化的概念,油藏是非均质的,岩石和流体性质伴随时间...
  • 二维空间将离散点拟合直线使用最小二乘法的应用非常广泛,方法也比较简单。与此对应的是三维空间离散点拟合为平面也是很有用的方法,比如一些特定图像分析。本文所介绍的就是三维空间离散点拟合平面的方法,也是...
  • 本课题旨在尝试利用目前在理论上已经成熟的有限差分法原理结合 MATLAB 强 大的数据处理和模拟仿真功能编写特定的程序代码对给定初边值条件的二维热传 导方程温度随时间、空间的变化规律进行研究并将其可视。...
  • 二维离散傅里叶(DFT)与快速傅里叶(FFT)的实现 [21] 2-D FFT - Compute two-dimensional fast Fourier transform of input [22] Accelerating a barotropic ocean model using a GPU [23] 二维傅里叶变换是怎么...
  • 提出基于Adomian分解法求解二维Helmholtz方程。通过Adomian分解法可以把Helmholtz微分方程和边界条件分别转换成递归代数公式和适用符号计算的简单代数公式。利用边界条件可以很容易得到方程的解析解表达式。Adomian...
  • 苏佳园:二维热传导方程有限差分法的MATLAB实现l所构成,其中xj?j?x?h,?x?h?J;tn?n?t?n?.3.2插值函数的选择选择不同的插值函数对偏微分方程进行估计,可得到不同的差分方程,进而稳定性和精度会有所不同。用Taylor...
  • 提出二维简单格子Boltzmann模型,并用其模拟扩散方程Ut=...同时构造了二维问题的正则样本尺度函数,在此基础上得到了二维问题的拟小波离散格式,并将其应用到扩散方程的数值求解中,得到与精确解拟合得非常好的数值结果。
  • 二维声波传播方程的有限差分模拟

    千次阅读 2019-09-09 21:16:18
    离散化二维声波方程 matlab示例 x,z向共201个节点,节点间隔h=8m,时间采样点位400,采样间隔为0.001s。假设声音传播速度为3km/s,激发源在i=100,j=100处。Ricker主频为20Hz,频带控制参数r=3. clc; c...
  • n:要输出的拟合曲线的方程的最大阶数;m:自变量的数量 function lstsqu(x,y,n,m); xx=x; nn=n; for k=1:nn; % 最小二乘法拟合曲线 p=polyfit(xx,y,k); x1=xx(1):0.1:xx(m)+0.1; y1=polyval(p,x1); figure; plot(xx...
  • 好久没有更新了,每次敲完公式,都要自己添加\nonumber才不会显示标号,对CSDn也是服了。 最近也不知道忙什么,课也不多,琐事...在对CFD计算之前,需要对计算区域离散化,也就是说要对空间连续的计算区域进行划...
  • CFD2D是用于Linux的开源软件,用于求解任意二维域内的无量纲不可压缩Navier-Stokes方程(NSE),该二维域刻在具有Dirichlet和“不做任何事情”边界条件的单位正方形中。 空间离散化基于有限元方法(FEM),使用近似...
  • 一种二维非稳态导热问题的数值解法维普资讯第 9卷 第 2f/I 石 油 工 高 等 学 校 学 报 Vo1. 9No.21996~ 6月 JOURNAL OF PETROCHEM ICAL UNIVERSITIESOF SINOPEC J衄. 1996、a0/ 一 种二维非稳态导热问题的...
  • 二维离散傅里叶(DFT)与快速傅里叶(FFT)的实现

    万次阅读 多人点赞 2018-05-04 00:01:26
    之后暑假中参与学校实验室做图像处理项目的时候,看书看到傅里叶变换,一是当时觉得太复杂了,是所做的项目对于实时性要求较高,即便是fft可能对于3000*2000以上的图片也难以达到实时性,主要用到的边缘检测方面So...
  • 它基于离散化某些节点上的导数。 主属性或自变量将在这些节点上求值。 与FEM和FVM相比,它不适合复杂的几何形状或物理,但是更容易理解。 实际上,这是您要通过计算机解决PDE的第一步。 这项工作基于具有对流和源/...
  • 二维稳态求解器,基于 SIMPLE 算法。 使用 10x10 交错网格。 采用盖子驱动的腔边界条件,但右手边的速度不为零。 如果您发现任何错误,请联系。 您可以根据自己的喜好添加任何可视图。 轮廓非常粗糙(因为它是一个...
  • 二维空间上非结构化网格上的抛物线积分微分方程的数值解提供了简短的MATLAB实现。 三角形上的分段线性有限元空间用于空间离散化,而时间离散化则基于后向欧拉法和Crank-Nicolson方法。 选择正交规则以离散化...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,199
精华内容 6,079
关键字:

二维离散化方程