数学物理方程有限差分法

合集下载

有限差分法

有限差分法

有限差分法finite difference method用差分代替微分,是有限差分法的基本出发点。

是一种微分方程和积分微分方程数值解的方法。

把连续的定解区域用有限个离散点构成的网格来代替,这些离散点称作网格的节点;把连续定解区域上的连续变量的函数用在网格上定义的离散变量函数来近似;把原方程和定解条件中的微商用差商来近似,积分用积分和来近似,于是原微分方程和定解条件就近似地代之以代数方程组,即有限差分方程组,解此方程组就可以得到原问题在离散点上的近似解。

然后再利用插值方法便可以从离散解得到定解问题在整个区域上的近似解。

如何根据问题的特点将定解区域作网格剖分;如何把原微分方程离散化为差分方程组以及如何解此代数方程组。

此外为了保证计算过程的可行和计算结果的正确,还需从理论上分析差分方程组的性态,包括解的唯一性、存在性和差分格式的相容性、收敛性和稳定性。

对于一个微分方程建立的各种差分格式,为了有实用意义,一个基本要求是它们能够任意逼近微分方程,这就是相容性要求。

另外,一个差分格式是否有用,最终要看差分方程的精确解能否任意逼近微分方程的解,这就是收敛性的概念。

此外,还有一个重要的概念必须考虑,即差分格式的稳定性。

因为差分格式的计算过程是逐层推进的,在计算第n+1层的近似值时要用到第n层的近似值,直到与初始值有关。

前面各层若有舍入误差,必然影响到后面各层的值,如果误差的影响越来越大,以致差分格式的精确解的面貌完全被掩盖,这种格式是不稳定的,相反如果误差的传播是可以控制的,就认为格式是稳定的。

只有在这种情形,差分格式在实际计算中的近似解才可能任意逼近差分方程的精确解。

最常用的方法是数值微分法,比如用差商代替微商等。

另一方法叫积分插值法,因为在实际问题中得出的微分方程常常反映物理上的某种守恒原理,一般可以通过积分形式来表示。

此外还可以用待定系数法构造一些精度较高的差分格式。

龙格库塔龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。

有限差分法

有限差分法

有限差分法有限差分法是数学领域的一项最新成果,它在某些特定情况下能得到非常好的结果。

所谓有限差分方程就是利用积分和求差公式将差分方程化成为多个等价的偏微分方程组的组合形式,然后再应用最优化方法求解这种方程组,从而得出未知数的近似值。

当已知方程组的每个参数及其变量代入数据计算后的误差时,只要对其进行必要的调整或者修改后,就可获得满意的精度与效率的估计值。

此外,还可以通过有限差分方程的求解来了解其物理背景。

比如说在物体碰撞问题中,两个质点之间距离的测量往往涉及到很复杂的三维几何关系。

即使是一个小的距离误差也会引起很大的误差。

因此,对于碰撞问题中两个质点之间的相互位置误差测量,必须考虑它们之间的三维几何关系,并根据具体问题建立相应的坐标系统。

有限差分方程可以用来描述许多不同类型的实际问题,例如质量、压力、速度、温度、流动、热传导、声音和电磁场等。

但是由于数学模型本身的复杂性,使得有限差分方程在求解上遇到了困难。

因此,人们开始寻找一种更加直观的方法来解决问题。

有限差分法正是基于此原理提出的。

利用有限差分方程求解偏微分方程,我们首先要给出所求解的偏微分方程的数学表达式,这样才能够在有限差分方程的数学模型中寻找解析解。

有限差分方程的解析解,需要借助解析函数的理论来确定。

但是在自然科学和工程技术领域里,对于一般的实际问题,很少会存在着某种数学模型完全适合于所有的具体问题,那么对于任意一个偏微分方程,总是存在着一个解析解。

当把偏微分方程的解析解用适当的坐标表示出来后,有限差分方程的求解就转化为如何寻找与这个解相对应的函数值的问题。

通常,解析函数的形式是比较复杂的,因此需要运用数值方法进行拟合,从而得到符合实际的数学表达式。

然后通过对这个数学表达式的求解来确定所求偏微分方程的解析解。

这种数值求解方法称为数值积分法。

在研究有限元法和边界元法时都可以采用一些简单易行而且计算机可能很容易处理的函数作为边界条件,而这些函数本身又是很容易计算的。

有限差分法的基本原理

有限差分法的基本原理

f (x) ≈
2h
中心二阶差商
′′
f (x+h)−2f (x)+f (x−h)
f (x) ≈
h2
O(h) O(h)
2
O(h )
2
O(h )
其中,h表示网格间距,O(hn)表示截断误差与hn成正比。可以看出,中心差商比前向或后向差商具有更高的精度。
误差分析
有限差分法求得的数值解与真实解之间存在误差,这些误差主要来源于以下几个方面:
常用差分格式
有限差分法中最重要的步骤是构造合适的差分格式来近似微分项。根据泰勒展开式,可以得到以下常用的一阶和二阶差分格式:
差分格式
表达式
截断误差
前向一阶差商

f (x+h)−f (x)
f (x) ≈
h
后向一阶差商

f (x)−f (x−h)
f (x) ≈
h
中心一阶差商

f (x+h)−f (x−h)
截断误差:由于使用有限项级数来近似无穷级数而产生的误差; 舍入误差:由于计算机对小数进行四舍五入而产生的误差;
离散误差:由于对连续区域进行离散化而产生的误差; 稳定性误差:由于数值格式的稳定性不足而导致误差的累积或放大。
为了减小误差,一般可以采取以下措施:
选择更高阶或更精确的差分格式; 减小网格间距或时间步长; 选择合适的初始条件和边界条件; 选择稳定且收敛的数值格式。
+
。 2
h)
为了验证上述方法的正确性,我们取M = 10, N = 100,则原问题可以写为如下形式:
则该问题对应的递推关系式为:
⎧ut (x, t) − uxx (x, t) = 0,

有限差分法推导

有限差分法推导

有限差分法推导【最新版】目录1.有限差分法的基本概念2.有限差分法的推导方法3.有限差分法的应用实例4.有限差分法的优缺点正文一、有限差分法的基本概念有限差分法是一种数值计算方法,主要应用于求解偏微分方程的初值问题。

它是通过将连续的函数值用有限个离散点上的函数值来代替,从而将偏微分方程转化为关于这些离散点上的代数方程组。

这种方法可以有效地降低问题的复杂度,使得求解过程更加简便。

二、有限差分法的推导方法有限差分法的推导过程主要包括以下几个步骤:1.对边界条件进行离散处理,将边界上的函数值用有限个离散点上的函数值来代替。

2.对偏微分方程进行离散处理,将偏微分方程转化为关于这些离散点上的代数方程组。

3.求解代数方程组,得到离散点上的函数值。

4.通过插值方法,将离散点上的函数值还原为连续函数。

三、有限差分法的应用实例有限差分法广泛应用于各种物理、工程和数学问题中,例如求解热传导方程、波动方程和亥姆霍兹方程等。

下面以求解一维热传导方程为例,展示有限差分法的应用过程。

假设我们要求解如下的热传导方程:u/t = k * ^2u/x^2x = [0, 1]t = [0, T]边界条件:u(0, t) = f(t), u(1, t) = 0初始条件:u(x, 0) = 0我们可以通过以下步骤应用有限差分法:1.对边界条件进行离散处理,将边界上的函数值用有限个离散点上的函数值来代替。

2.对偏微分方程进行离散处理,将偏微分方程转化为关于这些离散点上的代数方程组。

3.求解代数方程组,得到离散点上的函数值。

4.通过插值方法,将离散点上的函数值还原为连续函数。

四、有限差分法的优缺点有限差分法具有以下优点:1.适用范围广泛,可以应用于各种偏微分方程的初值问题。

2.推导过程相对简单,容易理解和实现。

3.计算精度较高,可以通过增加离散点数来提高精度。

然而,有限差分法也存在以下缺点:1.计算量较大,需要处理大量的代数方程组。

2.对于某些问题,可能需要进行特殊的处理,例如处理不稳定的代数方程组。

有限差分法PPT课件

有限差分法PPT课件
有限差分法在求解导热微分方程中的应用
1
有限差分方法是一种微分方法,广泛用于计算机求解偏微分方程 。
为求解由偏微分方程定解问题所构造的数学模型,有限差分法 是将定解区域(场区)离散化为网格离散节点的集合。并以各离 散点上函数的差商来近似该点的偏导数,使待求的偏微分方程定 解问题转化为一组相应的差分方程。根据差分方程组解出各离散 点处的待求函数值——离散解。
Q c hc (T Ta )
Qr (T4Ta4)
代 入
C pz T t kz 2 T 2 h c T 2T 4 2 h c T a 2T a 4
上 式Leabharlann 边界条件: x=0m ,x=1m, y=1m ; q=0 w/m2
y=1m
; T=300 K
12
(2)利用matlab中的pdetool工具箱,首先绘出空间区域,并以0.1m为 步长对其进行网格划分。 (3)输入已知的参数并设定边界条件
2
建立控制方程及定解条件
确定节点(区域离散化)
建立节点物理量的代数方程
设立迭代初值
求解代数方程组 否
收敛? 是
解的分析
改进初场
3
1. 建立控制方程及定解条件
根据实际问题建立偏微分方程,同时给出边界条件。
2. 区域离散化
理论上可以通过任意的网格划分把求解区域划分成许多求解区域,以网格 线的交点作为需要确定的物理量的空间位置。实际应用中根据边界的形状采用 最简单、最有规律,和边界拟合程度最佳的方法来分割。
建立节点物理量的离散方程节点类型内节点边界节点泰勒级数展开法热平衡法泰勒级数展开法热平衡法热平衡法多运用于非均分网格划分下离散方程的建立其物理概念清晰推导过程简洁我们以二维稳态无内热源矩形均分下的温度场为例先用泰勒级数展开法对内节点由ab两个式子即可推出一阶导数和二阶导数的差分一般取中心差分更为精确一阶导数的中心差分

有限差分法求解拉普拉斯方程

有限差分法求解拉普拉斯方程

收稿日期:2009-09-01第一作者简介:贾新民(1956-),男,四川邻水人,新疆昌吉学院计算机工程系,副教授,研究方向:计算机程序设计及其语言教学和理论物理研究。

有限差分法求解拉普拉斯方程贾新民1 严文2(1.昌吉学院计算机工程系新疆昌吉831100;2.昌吉学院物理系 新疆昌吉831100)摘 要:以极板上具有半圆截面沟槽的电容器内的电势分布为例,介绍了综合应用计算机软件利用有限差分法求解复杂边界的拉普拉斯方程数值解的方法。

并利用数值解的结果讨论了沟槽表面的电场分布和电荷分布。

关键词:拉普拉斯方程;有限差分法;五点差分格式中图分类号:O411.2 文献标识码:A 文章编号:1671-6469(2009)05-0105-051 引言无源空间的引力场、静电场、稳定的温度分布等问题都满足拉普拉斯(Laplace )方程 2u (x ,y ,z )=0(1)但由于方程(1)是偏微分方程,只有在问题具有高度对称的情况下,才能求出解析解,而这种情形是极少的。

有些情形看上去很简单,但却求不出解析解。

对于这些情况,只能寻求数值解。

2 计算机数值解法方案文献[1][2][3]给出了拉普拉斯方程数值解的方法———有限差分法。

有限差分法的思想是用差分Δu (x +Δx,y )Δx ,Δu (x ,y +Δy )Δy 代替导数5u 5x ,5u 5y,用网格将求解区域覆盖,对于平面拉普拉斯方程,第i 行第j 列小格的电势由Laplace 方程的五点差分格式给出。

u ij =14(u ij -1+u ij +1+u i -1j +u i +1j )(2)考虑图1所示的具有半圆形截面的槽的电容器内部的电势和电场分布。

为了能够对坑(槽)内部的电场进行比较细致的观察,应该将半径R 取的大些,为了满足无限远的条件,应该使求解区域尽量大些。

我们选Excel 为计算工具,因为Excel 具有不用编写程序和直观的优点。

Excel 的一个单元格代表求解区域的一个网格,单元格的值表示该网格处的电势。

有限差分法解拉普拉斯方程python

有限差分法解拉普拉斯方程python

有限差分法解拉普拉斯方程python一、引言拉普拉斯方程是一个重要的偏微分方程,它在数学、物理、工程等领域都有广泛的应用。

有限差分法是一种常用的数值求解方法,可以有效地解决拉普拉斯方程。

本文将介绍如何使用Python语言实现有限差分法求解拉普拉斯方程。

二、数学模型拉普拉斯方程可以表示为:∇²u = 0其中,u为未知函数,∇²表示Laplace算子。

在二维情况下,可以将该方程写成:∂²u/∂x² + ∂²u/∂y² = 0三、有限差分法有限差分法是一种常用的数值求解方法,在此不再赘述其原理和推导过程。

对于二维情况下的拉普拉斯方程,我们可以采用五点差分公式进行离散化处理:(u(i+1,j) - 2*u(i,j) + u(i-1,j))/Δx² + (u(i,j+1) - 2*u(i,j) + u(i,j-1))/Δy² = 0其中,Δx和Δy分别表示网格间距。

将上式变形可得:u(i,j) = (u(i+1,j) + u(i-1,j))*Δy² + (u(i,j+1) + u(i,j-1))*Δx² / (2*(Δx² + Δy²))四、Python实现在Python中,我们可以使用numpy库来处理数组和矩阵运算,使用matplotlib库来进行可视化。

首先,我们需要定义网格大小和间距:import numpy as npnx = 101 # 网格点数ny = 101dx = 2/(nx-1) # x方向间距dy = 2/(ny-1) # y方向间距接着,我们需要定义初始条件和边界条件:p = np.zeros((ny, nx)) # 初始条件# 边界条件p[:,0] = 0 # 左边界p[:,-1] = y # 右边界p[0,:] = p[1,:] # 下边界p[-1,:] = p[-2,:] # 上边界其中,左右边界分别为零和y的值,上下边界采用一阶差分法进行处理。

有限体积法 有限差分法 有限元法

有限体积法 有限差分法 有限元法

有限体积法有限差分法有限元法有限体积法、有限差分法、有限元法是三种数学方法,它们分别用于求解偏微分方程问题。

在工程、物理、气象、地质和生物等领域中都有广泛的应用。

它们之间的区别在于采用不同的逼近方法和离散化技术。

有限体积法是一种数值方法,通过离散化空间来对流体动力学等宏观定律进行描述。

通过建立小区域的质量平衡方程,计算该区域内的物理量积分,并通过解析物理方程,确定小区域物理量的变化率。

这种方法适用于偏微分方程的求解,同时可以避免非物理现象的出现,在计算过程中也不会涉及到边界值问题。

有限差分法是一种离散化的数学方法,可以将一个连续的函数微分方程转换成一个差分方程。

在计算差分方程时,需要将函数在有限点处进行展开,将其转化为有限项的多项式。

这个多项式可以用于近似函数,从而求解微分方程的数值解。

有限差分法可以应用于所有类型的偏微分方程,包括椭圆型、双曲型和抛物型方程。

有限元法是一种基于函数空间分析的数学方法,用于解决连续性和光滑性强的问题。

将连续问题转化为一组代数方程,通过将求解域分成无限多的小元素或区域,将标量或矢量场用有限个基函数来逼近。

将这些基函数带入微分方程中,并将未知系数替换为求解域中的节点上的未知量,就可以得到代数方程组。

最终,通过解决代数方程组来计算微分方程的数值解。

总之,有限体积法、有限差分法和有限元法是三种常用的数值方法。

它们在求解各种复杂偏微分方程方面都具有优越性。

但是它们在适用条件、误差分析、计算量等方面都有各自独特的特点和限制,因此需要根据不同的实际应用来选择和使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学物理方法课程报告题目:声波有限差分法数值模拟
学生姓名:xxx
学号:xxx
学院:地球科学与技术学院
专业班级:xxxx
教师:xxx
2016年 4月12日
声波有限差分法数值模拟
Xxx
(地球科学与技术学院研15级 学号:x xx )
摘要:数值模拟是最常用的正演模拟的方法。

它通过给出的结构模型和物理参数,模拟
地震波的传播轨迹,了解其规律以及过程,然后通过计算来推断观测点的地震记录。

根据求解方法,地震波方程数值解法可分为有限元法、伪谱法、有限差分法。

根据本门课程的要求,并且有限差分法具有内存占用较小,精度较高等优点,本文主要采用这种方法进
行模拟。

关键词:数值模拟,声波,有限差分
正文
1、 引言
在勘探过程中,数值模拟的作用很大.例如:1、采集上,可用于设计或者优化野外观测系统;2、处理上,可以通过数值模拟来检验是否采用了正确的反演方法。

将正演反演不断的逼近,从而使结果更加准确;3、解释上,还可以检测一下解释的资料是否正确。

而有限差分法是数值模拟最常用的方法,本文利用有限差分法,通过对声波进行正演模拟,来了解其在地下的传播规律及特点。

2、 二维各向同性介质声波方程数值模拟 使用规则网格差分对二阶方程进行求解。

具体过程:
在x 方向上,关于0x 对称分布的2N 个网格节点的坐标分别为x q x N ∆-0, x q x N ∆--10,……,x q x ∆-10,x q x ∆+10,……x q x N ∆+-10,x q x N ∆+0.其
中,x ∆表示节点间的最小间距;i q 表示任意正整数.2N 个网格节点所对应的函
数值已知,分别为()x q x f N ∆-0,()x q x f N ∆--10,……,()x q x f ∆-10, ()x q x f ∆+10……,()x q x f N ∆+-10,()x q x f N ∆+0.利用Taylor 级数展开求解
()x f 在点0x 处的一阶导数近似值。

()()()()()()()()()()()()()[]
120220220100!
21
!
21
+∆+∆+
+∆+
∆+=∆+N i N N i i i i x q O x f x q N x f x q x f x q x f x q x f
()()()()()()()()()()()()()[]
120220220100!
21
!
21
+∆+∆+
+∆+
∆-=∆-N i N N i i i i x q O x f x q N x f x q x f x q x f x q x f
其中,i=1,2,…,N
将上述两式相加,省略式中的误差项,得到
()()()[]()()()()()()()()()()022*********!
21
!41!21221
x f x q N x f x q x f x q x q x f x f x q x f N N i i i i i ∆+
+∆+∆=∆-+-∆+
(1)
将相减后得到的式子整理成矩阵形式,有
()()()()()()()()()()()()()()()()()()()⎥⎥⎥⎥

⎤⎢⎢⎢⎢⎣⎡∆-+-∆+∆-+-∆+∆-+-∆+∆=⎥⎥
⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆⨯⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣
⎡-x q x f x f x q x f x q x f x f x q x f x q x f x f x q x f x x f x N x f x x f q q q q q q q q q N N N N N N N
N N N
000200201001020222042
0224
2224
2222141
2
122221!21!41!
21
(2)
为了简化矩阵,可以记作
⎥⎥⎥
⎥⎥⎦

⎢⎢⎢⎢⎢⎣⎡=N N N
N
N N
q q q q q q q q q A 242224222
214
1
21 ,()()()()()()()()()()⎥⎥⎥⎥


⎢⎢⎢⎢⎣⎡∆-+-∆+∆-+-∆+∆-+-∆+∆=x q x f x f x q x f x q x f x f x q x f x q x f x f x q x f x D N N 00020020100102
22221
同时,构造两个简单矩阵,辅助计算
N N I ⨯⎥

⎥⎥⎦⎤⎢⎢⎢
⎢⎣
⎡=111 整理的, 1001⨯⎥⎥⎥⎥
⎦⎤⎢⎢⎢⎢⎣⎡=N E 假设存在1-A ,使得I AA =-1,也可得()
I A A T T
=-1
;即()T
A 1-为T A 的逆,得到
()
I A A T
T =-1
.式子两边右乘向量E 就可得
()
E E A A T
T =-1 (3)
由式(2)可得
()
()D A E x f T 1022
1-=ﻩﻩ(4) 同时,假设
()
()T
N T T
c c c C E A ,,,211 ==-
(5)
将()N c c c C ,,,21 =带入式(4),得
()()()
()()()[]x q x f x f x q x
f c x x f n n N
n n ∆-+-∆+∆=∑=000
1
20222121
(6)
整理得 ()()
()()()()[]x q x f x q x f c x f c x f
x n n N
n n ∆-+∆++=∆∑=001
00022
可结合式(3)和式(5),可得到矩阵计算式:
⎥⎥
⎥⎥⎦

⎢⎢⎢⎢⎣⎡=
⎥⎥⎥⎥⎦⎤⎢
⎢⎢⎢
⎣⎡⨯⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡00121222
21
4424
12
2
2
2
1 N N N N N N N c c c q q q q q q q q q ﻩ
(7)
∑=-=N
i i c c 1
02
当i q 的值确定后,可根据式(7)来求解n c 的值,从而计算出()()01x f 的值。

利用式(7)可以求得对称任意节点间距的一阶导数差分系数.其中,当i q 取值为
),2,1(N n n =,则式(7)可表示为
()()⎥⎥
⎥⎥
⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⨯⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣
⎡0012121212122244422
2
N N N
N c c c N N N ﻩﻩ(8) 此时,所求得的()N n c n ,,2,1 =就是等节点间距的一阶导数的规则网格不同差分精度的差分系数(表1所示)。

二维声波方程的形式可表示为:
()22222
221z
u
x u t u v p ∂∂+∂∂=∂∂ﻩﻩ(9) 时间导数采用2阶,空间导数采用2N阶近似,即
()())(2)(222
t t u t u t t u t
u
t ∆-+-∆+=∂∂∆
()()()()()[]x n x u x n x u c x u c x x u
x N
n n ∆-+∆++=∂∂∆∑=001
000222
带入式(9)中,可得到在固定网格下,差分格式为
()()()()[]()()()[]⎭

⎫⎩⎨⎧∆-+∆++
⎪⎪⎭

⎝⎛∆∆+⎭⎬⎫⎩
⎨⎧∆-+∆++⎪⎪⎭⎫ ⎝⎛∆∆+∆--=∆+∑∑==N
n n p N
n n p z n z u z n z u a z u a z t v x n x u x n x u a x u a x t v t t u t u t t u 102
10
2
)(2)( ﻩ(10)
3、模型测试:
震源选取:
正演模拟过程中采用雷克子波作为震源子波,雷克子波的表达式为
Source (i t) =((1-2π f m (t -t 0)2
)e
—2π f m (t —t0
)2
模型建立:
建立了一个两层介质模拟,其上层纵波速度为v=2000m/s ,下层纵波速度为v =3000m/s.模型大小为200×200,空间采样间隔为dx=dz=10m 。

采用30Hz 的雷克子波作为震源子波,震源位于模型(70,100)处,时间采样间隔为1ms 。

结果分析:
it=50 it=100 it=150
it=200 it=250
it=300
it=350it=400
图2不同时刻波场快照
图中可以看出,在未遇到界面前,地震波在均匀介质中的波前面一个圆。

当遇到地层界面之后,在界面处发生了反射、透射和折射现象。

沿测线方向的地震记录如图2所示。

记录中存在两条直线状的同相轴和两条近似双曲线的同相轴。

由于直达波的时距曲线是直线,因此两条直线同相轴对应直达波;由于反射波的时距曲线是近似双曲线,因此近似双曲线同相轴对应的是反射波。

参考文献
[1]刘庆敏,高阶差分数值模拟方法研究与应用,中国石油大学(华东)硕士论文,2004年9月
[2]孙成禹、李振春,地震波动力学基础,石油工业出版社,2011年4月
[3]王元名,数学物理方程与特殊函数,高等教育出版社,2012年12月。

相关文档
最新文档