1差分格式
常微分方程的差分的方法
对于二阶常微分方程 $y'' = f(t, y, y')$,可以采用隐式差分法或显式差 分法进行求解。
VS
隐式差分法需要解方程组,计算量大, 但精度高;显式差分法精度低但计算 量小。
复杂微分方程组的求解实例
对于多个一阶或二阶常微分方程组成的复杂微分方程组,可以采用耦合差分法或龙格-库塔法进行求 解。
差分方法的基本概念和原理
基本概念
差分方法的基本概念是将时间或空间离散化,将连续的微分方程转化为离散的差 分方程。在时间离散化中,我们使用向前、向后或中心差分近似微分项;在空间 离散化中,我们使用有限差分近似微分项。
原理
差分方法的原理是将连续的微分方程转化为离散的差分方程,然后通过迭代或递 推的方式求解该差分方程。在每一步迭代或递推中,我们使用已知的函数值和差 分近似来计算新的函数值,直到达到所需的精度或收敛条件。
耦合差分法是将多个微分方程转化为耦合的差分方程组进行求解;龙格-库塔法是一种迭代算法,通过 已知的$y_n$和$y'_n$来求解$y_{n+1}$。
THANKS
感谢观看
REPORTING
https://
改进的龙格-库塔方法
引入预估校正步骤
为了提高数值解的精度和稳定性,可以在龙 格-库塔方法中引入预估校正步骤。通过预 估和校正两个步骤的结合,可以减小数值误 差并提高方法的收敛速度。
考虑非线性项的处理
在求解二阶常微分方程时,非线性项的处理 对于数值解的精度和稳定性具有重要影响。 通过改进非线性项的处理方式,可以进一步 提高改进的龙格-库塔方法的性能。
有限差分法
有限差分法的原理
有限差分法是一种基于离散化的数值方法, 通过将微分方程转化为差分方程来求解。该 方法的关键在于选择合适的差分格式和离散 化方案,以保证数值解的精度和稳定性。
有限差分法
两端都要给定边界条件(双程坐标) 。
9
(C) 双曲型方程:适当的边界条件和初始条件,与波动传 播的性质有关 如:一维对流方程
∂u ∂u +c =0 ∂t ∂x u (x ,0) = f (x )
解为 u (x , t ) = f (x − ct ) ,代表一个向右(c > 0 时)或向左 ( c < 0 时)传播的波形。必须在波形传来的一侧提供边界条 件(单程坐标) 。
10
不适定的例子:
utt + u xx = 0 u (x ,0) = u t (x ,0) = 0
拉普拉斯方程+非闭域边界条件,解为 u (x , t ) ≡ 0 。 然而,若定解条件为 u (x ,0) = 0, ut (x ,0) =
u (x , t ) = 1 sin nx ,解为 n
1 sinh nt sin nx n
(
)
n n um+1 = um −
cτ n n um +1 − um −1 2h
(
)
设计算到第 n 步时的累积误差
n ~n εn = 计算值um − 差分法精确解um m
反之
n ~n um = εn + um m
15
则第 n+1 步的计算值
~n ~ n cτ u n − u n ~ ~ um+1 = um − m +1 m −1 2h cτ n cτ n n n = um − um +1 − um −1 + εn − εm +1 − εn −1 m m 2h 2h n = um+1 + εn +1 m
uin +1 − uin −1 uin+1 − uin +1 − uin −1 − uin−1 −α =0 Lh u = τ h2 ατ 2 ⎛ ∂ 2u ⎞ τ 2 ⎛ ∂ 3u ⎞ Ti = Lh u − Lu (x i , t n ) = 2 ⎜ 2 ⎟ + ⎜ 3 ⎟ − L 截断误差 6 ⎜ ∂t ⎟i h ⎜ ∂t ⎟i ⎝ ⎠ ⎝ ⎠
有限元素法有限体积法有限差分法有限容积法的区别
1.1 概念有限差分方法(FDM)是计算机数值模拟最早采用的方法,至今仍被广泛运用。
该方法将求解域划分为差分网格,用有限个网格节点代替连续的求解域。
有限差分法以Taylor级数展开等方法,把控制方程中的导数用网格节点上的函数值的差商代替进行离散,从而建立以网格节点上的值为未知数的代数方程组。
该方法是一种直接将微分问题变为代数问题的近似数值解法,数学概念直观,表达简单,是发展较早且比较成熟的数值方法。
1.2 差分格式(1)从格式的精度来划分,有一阶格式、二阶格式和高阶格式。
(2)从差分的空间形式来考虑,可分为中心格式和逆风格式。
(3)考虑时间因子的影响,差分格式还可以分为显格式、隐格式、显隐交替格式等。
目前常见的差分格式,主要是上述几种形式的组合,不同的组合构成不同的差分格式。
差分方法主要适用于有结构网格,网格的步长一般根据实际地形的情况和柯朗稳定条件来决定。
1.3 构造差分的方法构造差分的方法有多种形式,目前主要采用的是泰勒级数展开方法。
其基本的差分表达式主要有三种形式:一阶向前差分、一阶向后差分、一阶中心差分和二阶中心差分等,其中前两种格式为一阶计算精度,后两种格式为二阶计算精度。
通过对时间和空间这几种不同差分格式的组合,可以组合成不同的差分计算格式。
2. FEM2.1 概述有限元方法的基础是变分原理和加权余量法,其基本求解思想是把计算域划分为有限个互不重叠的单元,在每个单元内,选择一些合适的节点作为求解函数的插值点,将微分方程中的变量改写成由各变量或其导数的节点值与所选用的插值函数组成的线性表达式,借助于变分原理或加权余量法,将微分方程离散求解。
采用不同的权函数和插值函数形式,便构成不同的有限元方法。
2.2 原理有限元方法最早应用于结构力学,后来随着计算机的发展慢慢用于流体力学、土力学的数值模拟。
在有限元方法中,把计算域离散剖分为有限个互不重叠且相互连接的单元,在每个单元内选择基函数,用单元基函数的线形组合来逼近单元中的真解,整个计算域上总体的基函数可以看为由每个单元基函数组成的,则整个计算域内的解可以看作是由所有单元上的近似解构成。
有限差分法
有 限 差 分 法流体运动的控制方程多为偏微分方程,在复杂的情况下不存在解析解。
但是对于一些简单的情况存在解析解,偏微分方程的解析解可用精确的数学表达式表示,该表达式给出了因变量在整个定义域中的连续变化状况。
有限差分法(Finite Difference Method ,FDM )是数值计算中比较经典的方法,由于其计算格式直观且计算简便,因此被广泛地应用在计算流体力学中。
有限差分法首先将求解区域划分为差分网格,变量信息存储在网格节点上,然后将偏微分方程的导数用差商代替,代入微分方程的边界条件,推导出关于网格节点变量的代数方程组,通过求解代数方程组,获得偏微分方程的近似解。
偏微分方程被包含离散点未知量的代数方程所替代,这个代数方程能求出离散节点处的变量,这种离散方法叫做有限差分法。
2.1有 限 差 分 逼 近2.1.1 有限差分网格 由于有限差分法求解的是网格节点上的未知量值,因此首先介绍有限差分网格。
图2.1 – 1是x-y 平面上的矩形差分网格示意图。
在x 轴方向的网格间距为△x ,在y 轴方向的网格间距为△y ,网格的交点称为节点,计算变量定义在网格节点上。
称△x 和△y 为空间步长,△x 一般不等于△y ,且△x 和△y 也可以不为常数。
取各方向等距离的网格,可以大大简化数学模型推导过程,并且经常会取得更加精确的数值解。
本章作为计算流体力学入门知识,假设沿坐标轴的各个方向网格间距分别相等,但是并不要求各方向的网格间距一致。
例如假设△x 和△y 是定值,但是不要求△x 等于△y 。
在图2.1 - 1中,网格节点在x 方向用i 表示,在y 方向用j 表示。
因此,假如(i ,j )是点P 在图2.1 – 1中的坐标,那么,点P 右边的第一个点的就可以用(i+1,j )表示;在P 左边的第一个点的就可以用(i —1,j )表示;点P 上边的第一个点的就可以用(i ,j+1)表示;点P 下边的第一个点的就可以用(i ,j —1)表示。
偏微分方程差分方法
第9章 偏微分方程的差分方法含有偏导数的微分方程称为偏微分方程。
由于变量的增多和区域的复杂性,求偏微分方程的精确解一般是不可能的,经常采用数值方法求方程的近似解。
偏微分方程的数值方法种类较多,最常用的方法是差分方法。
差分方法具有格式简单,程序易于实现,计算量小等优点,特别适合于规则区域上偏微分方程的近似求解。
本章将以一些典型的偏微分方程为例,介绍差分方法的基本原理和具体实现方法。
9.1椭圆型方程边值问题的差分方法9.1.1 差分方程的建立最典型的椭圆型方程是Poisson (泊松)方程G y x y x f yux u u ∈=∂∂+∂∂-≡∆-),(),,()(2222 (9.1)G 是x ,y 平面上的有界区域,其边界Γ为分段光滑的闭曲线。
当f (x ,y )≡0时,方程(9.1)称为Laplace(拉普拉斯)方程。
椭圆型方程的定解条件主要有如下三种边界条件第一边值条件 ),(y x u α=Γ (9.2) 第二边值条件),(y x nuβ=∂∂Γ (9.3) 第三边值条件 ),()(y x ku nuγ=+∂∂Γ (9.4) 这里,n 表示Γ上单位外法向,α(x,y ),β(x,y ),γ(x,y )和k (x,y )都是已知的函数,k (x,y )≥0。
满足方程(9.1)和上述三种边值条件之一的光滑函数u (x ,y )称为椭圆型方程边值问题的解。
用差分方法求解偏微分方程,就是要求出精确解u (x ,y )在区域G 的一些离散节点(x i ,y i )上的近似值u i ,j ≈(x i ,y i )。
差分方法的基本思想是,对求解区域G 做网格剖分,将偏微分方程在网格节点上离散化,导出精确解在网格节点上近似值所满足的差分方程,最终通过求解差分方程,通常为一个线性方程组,得到精确解在离散节点上的近似值。
设G ={0<x <a , 0<y <b }为矩形区域,在x ,y 平面上用两组平行直线x =ih 1, i =0,1,…,N 1, h 1=a /N 1 y =jh 2, j =0,1,…,N 2, h 2=b /N 2将G 剖分为网格区域,见图9-1。
指数差分格式
指数差分格式
指数差分格式(Exponential Difference Method)是一种用于处理离散数据序列的数学方法。
它主要用于对非平稳时间序列进行平稳化处理,使其更适合应用于统计分析和建模。
指数差分格式的基本思想是通过对原始数据序列进行指数平滑处理,得到一个新的序列,然后对这个新序列再次进行差分操作,以得到一个平稳的序列。
这个差分操作可以多次进行,直至得到满足平稳性的序列。
具体而言,指数差分格式的步骤如下:
1. 对原始数据序列应用指数平滑法,得到一个平滑序列。
2. 对平滑序列进行差分操作,得到一个新的序列。
3. 如果新序列不满足平稳性条件,则重复步骤1和步骤2,直至得到满足平稳性条件的序列。
指数差分格式在时间序列分析中具有广泛的应用,特别是在经济学中常用于处理非平稳的经济数据。
通过平稳化时间序列,我们可以更好地理解和预测数据的趋势和周期性变化,从而提高我们对数据的分析和决策能力。
差分格式的稳定性与收敛性
差分格式的稳定性与收敛性1 基本概念所谓稳定性问题是指在数值计算过程中产生的误差的积累和传播是否受到控制.在应用差分格式求近似解的过程中,由于我们是按节点逐次递推进行,所以误差的传播是不可避免的,如果差分格式能有效的控制误差的传播,使它对于计算结果不会产生严重的影响,或者说差分方程的解对于边值和右端具有某种连续相依的性质,就叫做差分格式的稳定性.差分格式的收敛性是指在步长h 足够小的情况下,由它所确定的差分解m u 能够以任意指定的精度逼近微分方程边值问题的精确解()m u x .下面给出收敛性的精确定义:设{}m u 是差分格式定义的差分解,如果当0h → 并且m u x →时,有()0m u u x -→,则称此格式是收敛的.2 差分方程的建立对于二阶边值问题'''()(),,(),(),Lu u q x u f x a x b u a u b αβ⎧≡-+=<<⎨==⎩ (1) 其中()q x 、[](),,()0.f x C a b q x ∈≥将区间[],a b 分成N 等份,记分点为,0,1,,,m x a mh m N =+=⋅⋅⋅ 这里步长b a h N-=.利用泰勒公式,得''1121[(()2()()]()m m m m m u x u x u x u x R h+--+=- (2) 其中 2(4)11(),(,)12m m m m m h R u x x ξξ-+=-∈(3) 把式(2)代入式(1)中的微分方程,有1121()[(()2()()]()()h m m m m m m L u x u x u x u x q x u x h+-≡--++ ()m m f x R =+ (4) 略去余项m R ,便得到(1)式中的微分方程在内部节点m x 的差分方程;再考虑到式(1)中的边界条件,就得到边值问题(1)的差分方程11201(2)()(),,,,h m m m m m m m N L u u u u q x u f x a x b h u u αβ+-⎧≡--++=<<⎪⎨⎪==⎩(5) 解线性代数方程组(5),得()m u x 的近似值m u .01,,,N u u u ⋅⋅⋅称为边值问题(1)的差分解.从上面的推导过程可以看出,在节点m x 建立差分方程的关键是在该点用函数()u x 的二阶中心差商代替二阶导数,最后用差分算子h L 代替微分算子L 就产生差分方程(5).记 ()()()m m h m R u Lu x L u x =-,称()m R u 是用差分算子h L 代替微分算子L 所产生的截断误差.由式(2),二阶中心差商代替二阶导数所产生的截断误差m R ,从式(4)和式(5)可以得出(())m h m m R L u x u =-,m R 称为差分方程(5)的截断误差.3 讨论差分方程组(5)的解的稳定性与收敛性引理3.1(极值原理) 设01,,,N u u u ⋅⋅⋅是一组不全相等的数,记01{,,,}N S u u u =⋅⋅⋅,11(),1,2,,1,h m m m m m m m L u a u b u c u m N -+=++=⋅⋅⋅- (6) 其中0,0,0,.m m m m m m b a c b a c ><<≥+(1) 若0(1,2,,1)h m L u m N ≤=⋅⋅⋅-,则不能在121,,,N u u u -⋅⋅⋅中取到S 中正的最大值;(2) 若0(1,2,,1)h m L u m N ≥=⋅⋅⋅-,则不能在121,,,N u u u -⋅⋅⋅中取到S 中负的最小值.证 首先用反证法证明(1).假设在121,,,N u u u -⋅⋅⋅中取到S 中正的最大值,记为M ,那么{}0max 0m m NM u ≤≤=>,由于S 中的数不全相等,一定存在某个(11)i i N ≤≤-,使得i u M =,并且1i u -与1i u +中至少有一个小于M .于是11()h i i i i i i i L u a u bu c u -+=++11i i i i i b M a u c u -+=++()0i i i b M a c M >++≥这与0h i L u ≤矛盾,从而(1)得证.同理可证明(2).现在运用极值原理论证差分方法的稳定性及收敛性.定理3.2 差分方程组(5)的解m u 满足{}111max ,()()max ,1,2,,1,2m m m m m N u x a b x f m N αβ≤≤-≤+--=⋅⋅⋅- (7) 证 把方程组 00,1,2,,1,,h m N L u m N u u αβ==⋅⋅⋅-⎧⎨==⎩和 0,1,2,,1,0h m m N L u f m N u u ==⋅⋅⋅-⎧⎨==⎩的解分别记为(1)m u 和(2)m u ,其中差分算子h L 由式(5)定义,则方程组(5)的解m u 为(1)(2)m m m u u u =+ (8)由极值原理可知 {}(1)max ,,1,2,,1m u m N αβ≤=⋅⋅⋅-. (9)接下来再估计(2)m u ,考虑差分方程11201(2),1,2,,1,0m m m N v v v M m N h u u +-⎧--+==⋅⋅⋅-⎪⎨⎪==⎩(10)其中 {}0max m m NM f ≤≤= 容易验证该微分方程是从边值问题'',()()0v M v a v b ⎧-=⎨==⎩ (11) 得到的,而在此边值问题的解是 ()()()2M v x x a b x =--. 因为()v x 是x 的二次函数,它的四阶导数为零,从式(2)、(3)看到()v x 在点m x 的二阶中心差商与''()m v x 相等,因此差分方程(10)的解等于边值问题(11)的解,即()()()02m m m m M v v x x a b x ==--≥. 另一方面,(2)(2)(2)(2)00()0,0,h m m h m h m m m m N N L v u L v L u q v M f v u v u ±=±=+±≥±=±=由极值原理可知 (2)0,m mv u ±≥ 即 (2)()(),1,2,, 1.2m m m m M u v x a b x m N ≤=--=⋅⋅⋅-(12) 综合式(8)、(9)、(12)就得到式(7).定理3.2表明差分方程(5)的解关于边值问题(1)的右端项和边值问题是稳定的,亦即当f 、α、β有一个小的改变时,所引起的差分解的改变也是小的.定理3.3 设()u x 是边值问题(1)的解,m u 是差分方程(5)的解,则22(4)()()max (),1,2,, 1.96m m a x b b a u x u h u x m N ≤≤--≤=⋅⋅⋅-(13) 证 记 ()m m m u x u ε=-,由式(3)、(4)、(5)可知0,1,2,,1,0,h m m N L R m N εεε==⋅⋅⋅-⎧⎨==⎩ 其中m R 由式(3)定义.从定理3.2得111()()max 2m m m m m N x a b x R ε≤≤-≤-- 22(4)()max ().96a xb b a h u x ≤≤-≤ 式(13)给出了差分方程(5)的解的误差估计,而且表明当0h →差分解收敛到原边值问题的解,收敛速度为2h .4 小结收敛性和稳定性是从不同角度讨论差分法的精确情况,稳定性主要是讨论初值的误差和计算中的舍入误差对计算结果的影响,收敛性则主要讨论推算公式引入的截断误差对计算结果的影响.使用既收敛有稳定的差分格式才有比较可靠的计算结果,这也是讨论收敛性和稳定性的重要意义.参考文献[1] 李瑞遐、何志东.微分方程数值方法,上海:华东理工大学出版社[2] 黄明游、冯果忱.数值分析(下册)北京:高等教育出版社,2008[3] 杨大地、王开荣.数值分析.北京:科学出版社,2006[4] 袁东锦.计算方法——数值分析.南京:南京师范大学出版社.2007[5] 李清扬等.数值分析(第4版).武汉:华中科技大学出版社.2006。
40种常用差分格式的源代码
40种常用差分格式的源代码对于网格差分的语言处理40种常用差分格式的源代码(Fortran语言),附说明应该可以说这些格式见证了CFD的发展历史,从简单的CTCS到TVD、ENO这里都应有尽有。
不知道放在这里合适不?其中包括如下源代码:1 Simple Burgers' Equation Solver2 Exact Riemann Solver3 Roe's Approximate Riemann Solver4 Lagrange Form Polynomial Interpolation5 Newton Form Polynomial Interpolation6 Cubic Splines7 Piecewise-Quadratic ENO Reconstruction (via the Primitive Function)8 Average-Quadratic ENO Reconstruction (via the Primitive Function)9 Implicit Euler Method (BTCS)10 Leapfrog Method (CTCS)11 Generator for Initial Conditions12 Lax-Friedrichs Method13 Lax-Wendroff Method14 Roe's First-Order Upwind Method15 Beam-Warming Second-Order Upwind Method with Flux Splitting16 Lax-Friedrichs Method (18.1)17 Lax-Wendroff Methods (MacCormack and Richtmyer)18 Steger-Warming Flux Split First-Order Upwind Method19 Van Leer Flux Split First-Order Upwind Method20 Liou-Steffen Flux Split First-Order Upwind Method (AUSM)21 Zha-Bilgen Flux Split First-Order Upwind Method22 Beam-Warming Second-Order Upwind Method w/Three Options for Flux Vector Splitting 23 Godunov's First-Order Upwind Method24 Roe's First-Order Upwind Method25 Van Leer's Flux Limited Method26 Sweby's Flux Limited Method (TVD)27 Davis-Roe Flux Limited Method (TVD)28 Yee-Roe Flux Limited Method (TVD)29 Boris-Book Flux-Corrected Method (FCT)30 Harten's Flux-Corrected Method (TVD)31 Shu-Osher Method (ENO): Second-Order32 Shu-Osher Method (ENO): Second-Order plus Subcell Resolution33 Shu-Osher Method (ENO): Third-Order Method34 Shu-Osher Method (ENO): Third-Order plus Subcell Resolution35 Shu-Osher Method (ENO): Arbitrary Grid and Order-of-Accuracy36 Jameson's Method37 Jameson's Method: Arbitrary Grid38 Original MUSCL (A Slope-Limited Version of Fromm's Method)对于网格差分的语言处理39 UNO40 Second-Order ENO41 Second-Order ENO with Subcell Resolution42 Third-Order ENO43 First-Order Upwind Method Based on One-Wave Solver 就这些了,全都是很重要的差分格式的源代码,以前上传了一些东西,再申请之后就没有回音了,这回我把比较小的文件都贴上来。
差分方程和差分方程组的求解方法
差分方程和差分方程组的求解方法差分方程(difference equation)是一类离散时间的数学方程,它的形式是$$f(x_{n}) = g(x_{n-1},x_{n-2},\dots,x_{n-k})$$其中,$f$ 和 $g$ 是给定的函数,$x_n$ 表示第 $n$ 个时间点上的值,$k$ 是差分方程的阶数。
差分方程可以看做是差分格式(discretization scheme)的离散时间版本,它在数学建模中有着广泛的应用,特别是在自然科学、工程科学和金融学等领域。
在实际问题中,常常会遇到包含多个变量的复杂差分关系,这时候就需要考虑差分方程组(difference equation system),它可以写成如下形式:$$\mathbf{x}_n = \mathbf{g}(\mathbf{x}_{n-1},\mathbf{x}_{n-2},\dots,\mathbf{x}_{n-k})$$其中,$\mathbf{x}_n$ 是一个 $m$ 维列向量,表示第 $n$ 个时间点上所有变量的取值,$\mathbf{g}$ 是一个$m$ 维列向量函数,它的每个分量 $g_i$ 表示与 $\mathbf{x}$ 的第 $i$ 个分量有关的函数。
如果差分方程组是非线性的,那么它的求解通常需要使用数值方法,比如欧拉法(Euler method)、龙格-库塔方法(Runge-Kutta method)、辛普森法(Simpson's rule)等数值积分方法。
接下来我们将介绍这些常用的求解方法。
欧拉法欧拉法(Euler method)是一种初值问题的数值解法,它的核心思想是将连续的问题离散化,然后用迭代的方式在离散时间上逐步逼近真实解。
对于一阶差分方程$$y_n = f(y_{n-1},t_{n-1},\Delta t)$$欧拉法的迭代公式可以写成如下形式:$$y_{n+1} = y_n + \Delta t f(y_n,t_n,\Delta t)$$其中,$\Delta t$ 表示时间间隔,它可以取足够小的正数以保证求解精度。
一阶精度差分格式
一阶精度差分格式差分格式是在数值计算中用于求解偏微分方程的一种数值方法。
一阶精度差分格式就是用一阶精度差分公式进行离散化,从而将偏微分方程转化成一个差分方程。
这种方法是数值计算中最基本的方法之一,广泛应用于科学计算、工程计算、金融计算等领域。
首先,我们需要了解什么是一阶精度差分。
一阶精度差分就是将函数在某一点的导数用函数在该点和其相邻点的函数值表示出来。
如果用向前差分的方式,可以写成f'(x) ≈ (f(x+h) - f(x))/h,其中h为步长。
类似地,用向后差分的方式可以写成f'(x) ≈ (f(x) -f(x-h))/h。
这两种差分都是一阶精度的,也就是说误差与步长成正比。
基于差分格式,我们可以将偏微分方程进行离散化,并通过一些迭代方法求解。
例如,假设我们要求解二维泊松方程,即∇²u = f,其中u(x,y)为未知函数,f(x,y)为已知函数,∇²是拉普拉斯算子。
我们可以采用五点差分方法,将二维空间离散化为网格点,然后将泊松方程中的导数用差分公式表示出来。
具体地,对于每个内部网格点(x,y),我们可以用以下公式求解:(1/h²) [u(x-h,y) + u(x+h,y) + u(x,y-h) + u(x,y+h) -4u(x,y)] = f(x,y)其中h为网格步长。
以上公式是一个线性方程组,可以采用迭代算法求解。
最常用的方法是雅可比迭代和高斯-赛德尔迭代,它们都是基于差分格式进行的。
一阶精度差分格式虽然在精度上不及高阶差分格式,但在计算效率和稳定性上具有很大优势。
因此,它被广泛应用于科学计算、工程计算和金融计算等领域。
在实际应用中,我们需要根据实际情况选择合适的差分格式和迭代算法,以获得更高的计算效率和更高的精度。
一维热传导方程的差分法
一维热传导方程的差分法1. 引言1.1 介绍一维热传导方程的差分法一维热传导方程是描述物体内部温度分布随时间变化的数学模型。
差分法是一种常用的数值解法,通过将时间和空间进行离散化,将偏微分方程转化为差分方程,从而可以通过计算机进行数值求解。
在一维热传导方程的差分法中,我们通常将时间和空间分别进行离散化,将连续的温度变化转化为离散的温度值。
通过迭代计算,可以得到物体内各个离散点的温度随时间的变化情况。
差分法的优点在于可以较好地模拟物体内部温度分布的变化,同时可以较快地得到数值解,对于复杂的边界条件和非线性问题也有较好的适用性。
通过研究一维热传导方程的差分法,可以更好地理解物体内部温度分布的变化规律,为工程实践提供有效的数值模拟手段。
同时也可以探讨数值解法的稳定性和收敛性,为进一步的数值模拟研究提供参考。
通过不断改进差分法的算法和技术,可以更准确地预测物体内部温度变化,为工程设计和科学研究提供有力支持。
1.2 研究背景一维热传导方程是描述热量在一维空间内传递和分布的数学模型,广泛应用于工程领域和物理学中。
研究热传导方程的差分法是为了解决实际问题中复杂边界条件和非线性情况下的热传导问题,以及对传热过程进行数值模拟和分析。
在工程实践中,热传导问题经常出现在各种材料的传热过程中,例如石油钻井中地下油层的温度分布、金属材料的焊接过程中的温度控制等。
研究热传导方程的差分法可以帮助工程师们更好地理解热传导过程,优化工程设计,提高生产效率。
研究热传导方程的差分法还可以为其他科学领域提供理论支持和数值计算方法。
在地质学中用于模拟地热传导过程、在气象学中用于模拟大气环流等。
深入研究一维热传导方程的差分法对于推动科学研究和解决实际问题具有重要意义。
1.3 研究目的研究目的是通过对一维热传导方程的差分法进行深入分析和研究,探索其在实际工程和科学问题中的应用潜力。
具体来说,我们的研究目的包括以下几个方面:我们希望能够建立一种有效的数学模型,用以描述和解决一维热传导问题,为实际问题的数值模拟提供理论基础。
一维热传导方程的差分法
一维热传导方程的差分法1. 引言1.1 简介一维热传导方程是描述物体内部热分布随时间变化的数学模型,广泛应用于工程领域中的热传导问题。
而差分法是求解偏微分方程的一种常用数值求解方法,通过将连续空间离散化为离散节点,时间离散化为不同时间步长,将偏微分方程转化为代数方程组进行求解。
在一维热传导方程的求解中,差分法可以分为显式差分法和隐式差分法两种主要方法。
显式差分法根据当前时刻的温度值和相邻节点的温度值计算下一个时刻各节点的温度值,而隐式差分法则需要求解一个代数方程组来更新温度值。
通过稳定性分析可以确定差分法的条件和参数选择,保证数值解的收敛性和准确性。
本文将从一维热传导方程的基本概念出发,介绍差分法的基本原理以及显式、隐式差分法的求解过程,最后对稳定性进行分析和讨论。
通过对差分法的研究,可以更好地理解和应用于解决实际工艺过程中的热传导问题,提高问题求解的效率和准确性。
【简介】1.2 研究背景热传导是物体内部热量传递的一种方式,其在工程、材料学、气象学等领域有着广泛的应用。
而研究热传导方程的数值解法,对于模拟和预测各种实际问题中的热传导过程具有重要意义。
研究背景部分主要介绍了一维热传导方程的差分法。
研究一维热传导方程的差分法是研究热传导过程的重要方法之一,它通过将物体划分成若干个小区间,并在每个小区间内利用差分格式逼近偏微分方程,从而得到离散的数值解。
差分法基本原理部分将介绍差分法的基本原理,包括离散化、边界条件的处理等内容。
显式差分法和隐式差分法部分将详细介绍这两种经典的差分格式及其数值求解过程。
稳定性分析部分将讨论差分法的稳定性问题,这是保证数值解的准确性和可靠性的重要因素。
通过对一维热传导方程的差分法进行研究,可以更深入地了解热传导过程的数值模拟方法,并为实际工程中的热传导问题提供有效的数值解法。
在未来的研究中,我们可以进一步探索更高维度热传导方程的差分法,以及将差分法与其他数值方法相结合,提高数值求解的效率和精度。
有限差分方法
数学方程的建立
稳定过程: 稳定过程:泊松方程 静电场:电场的散度正比电流密度,等于势场u的梯度 静电场:电场的散度正比电流密度,等于势场 的梯度
静磁场: 静磁场:类似于静电场
√
物理问题和数学方程(2/5) 物理问题和数学方程(2/5)
输运过程: 输运过程:扩散方程 扩散:流体由于不均匀而发生扩散, 扩散:流体由于不均匀而发生扩散,扩散密度正比于 密度的梯度, 密度的梯度,同时满足质量守恒
√
物理问题和数学方程(5/5) 物理问题和数学方程(5/5)
第三类
∂u v (a0u + b0 ) = c0 (rb , t ), a0、b0和c0是已知函数 ∂n Γ 热传导,系统通过表面与外界交换热量: 例:热传导,系统通过表面与外界交换热量:表面 热流 ∂u 正比于表面温度 u 与外界温度 u0 之差,即 之差, ∂n ∂u = k (u − u0 ) ∂n 初始条件 v 在各处的值: 初始瞬间待求函数 u 在各处的值: u t =0 = f1 (r )
拉普拉斯方程
方程( ( , )=0 方程( f(x,y)=0 ) ∂ 2u ∂ 2u ∇ 2u = 2 + 2 = 0 ∂x ∂y 五点差商格式
√
迭代解法(1/6) 迭代解法(1/6)
差分方程组的特点
方程个数等于内点数,每条方程最多含5 方程个数等于内点数,每条方程最多含5个未知项 系数矩阵是稀疏和带状的 跌代法求解:同步法、 跌代法求解:同步法、异步法和逐次超松弛法
边界条件的差分格式
√
一维扩散方程(3/3) 一维扩散方程(3/3)
差分方程组及其求解
0.10
1.000 0.7500
0.08
0.5000 0.2500 0
一阶迎风差分格式求解非线性对流扩散方程的精度
第 36 卷 第 5 期 2003 年 10 月武汉大学学报(工学版) Engineering Journal of Wuhan UniversityVol. 36 No. 5Oct. 2003文章编号 :167128844 (2003) 052001204一阶迎风差分格式求解非线性对流扩散方程的精度张小峰 , 张艳霞 , 谢作涛(武汉大学水资源与水电工程科学国家重点实验室 ,湖北 武汉 430072)摘要 :采用一阶迎风格式分别对一维线性对流扩散方程和非线性对流扩散方程进行了求解 ,检验了一阶迎风格式用于求解一维线性对流扩散方程和一维非线性对流扩散方程的适用性. 多个计算算例的结果表明 :一阶迎风差分格式用于求解线性对流扩散方程的结果不甚理想 ,但用于求解非线性对流扩散方程时能获得相当精度. 工 程计算中 ,该格式可用于求解水流运动方程 ,但不宜用于求解被水流输移的物质对流扩散方程.关键词 :迎风差分格式 ; 对流扩散方程 ; Burgers 方程 ; 计算水动力学 中图分类号 : TV 131. 4文献标识码 :ASimulated accuracy of nonlinear convection diffusionequation by f irst order upwind difference schemeZHAN G Xiao 2feng , ZHAN G Yan 2xia , XIE Zuo 2tao( State Key Laboratory of Water Resources and Hydropower Engineering Science ,Wuhan University Wuhan , 430072 , China )Abstract : Through the numerical computation and comparison with the exact solutions of one dimensional lin 2 ear and nonlinear convection diffusion equations , simulated accuracy by the first order conservative upwind difference scheme was analyzed in detail. It shows that the first order upwind difference scheme has high ac 2 curacy in simulating nonlinear convection diffusion equation , although it could not repeat the exact solution of linear convection diffusion equation well. In engineering application , this scheme can be used to compute mo 2 mentum equation of flow and is not suitable to simulate material mixing process driven by the flow.Key words : upwind difference scheme ; convection diffusion equation ; Burgers equation ; computational fluid dynamics一维对流扩散方程用于水利工程 、环境工程及航空 、航海 、化工 、冶金5 s 5 s52s等领域 , 因此对流扩散方程的求解方法在这些领域 5 t + u 5 x = μ 5 x 2(1)其中 u 是对流速度 ; s 是任一物理量 , 可以包括 s ≡u 的情况 , 此时式( 1) 为一维非线性对流扩 散(Burgers ) 方程 ,μ 是扩散系数. 式 ( 1) 常用来描 述水流运动 、物质传输和扩散的综合过程 , 广泛适都受到充分重视.一阶迎风差分格式用于线性对流扩散方程求 解时 , 虽然其形式简单 , 但因有一定的数值扩散问 题 ,其计算结果往往不令人满意. 线性方程数值计 算的稳定性分析也证明了这一点. 围绕提高对流收稿日期 :2002 - 11 - 12作者简介 :张小峰 (1962 - ) ,男 ,浙江嵊州人 ,教授 ,主要从事水力学及河流动力学研究.基金项目 :中国欧盟国际合作研究 ANFAS 项目资助和国家自然科学基金项目资助(50279035) .= μ 5 s , t > 0 , - ∞ < x < ∞ 2 1 +2μt 2武汉大学学报 (工学版)2003扩散方程数值求解的精度问题 , 先后提出的有欧拉 s n +1 - s ns n - s nsn+ sn- 2 sn———拉 格 朗 日 型 方 法[ 1 ] , 半 隐 式 指 数 型 差 分 格i ii τ + ui - 1h= μi +1i - 1h 2i( 2)式[ 2 ] , 交替分组显示方法[ 3 , 4 ] , 特征型 Garlerkin 方 法[ 5 ]等. 最近还有李炜提出的混合有限分限分析 解法[ 6 ] , 它是在局部单元线性化微分方程和插值 近似边界条件下 , 求局部单元上的精确解 , 从而构 成整体的线性代数方程组求解.文献[ 7 ]曾对一阶守恒型迎风格式用于一维对 其中 :τ, h 分别为差分网格的时间步长和空间步长.为检验迎风格式求解线性对流扩散方程的计 算精度 , 下面给出了 2 个有代表性的具体算例.算例 1 方波问题[ 6 ] , 其控制方程和定解条件 为5 s + u 5 s 流方程计算的精度问题进行过讨论. 发现用于计 算一维线性纯对流方程时 , 其计算结果的精度不够 理想 , 但当用于计算非线性对流方程时却是可以获 5 t 5x s ( x , 0) = 5 x 1 , x 0 ≤ x ≤ x 10 , - ∞ < x < x 0 , x 1< x < ∞(3)得较高精度的 , 由此说明 , 人们对迎风格式需有更 新的认识. 本文拟在文献 [ 7 ]的基础上 , 进一步检 其中 : u ,μ为常数 ,μ> 0. 定解问题的精确解为s ( x , t ) = 验该格式用于求解一维线性对流扩散方程和一维 非线性对流扩散方程的适用性. 由于数值计算稳 1erf 2x 1 - x + ut + erf 2 μt - x 0 + x - ut (4) 2 μt 定性分析不能用于非线性方程 , 本文将结合实际算 2 x- t例 ,将计算结果与理论解进行比较 , 来检验该格式 式中 , 误差函数 erf ( x ) =π∫0ed t .的计算精度.1 求解线性对流扩散方程的精度当 u ,μ为常数且 u > 0 时 , 采用迎风差分格式对式 (1) 进行离散 , 得计算时参数取 μ = 0. 01 m 2/ s , u = 50 m/ s ,x 0 = 0. 1 m , x 1 = 0. 2 m , 时间步长τ= 10 - 4 s ,空间 步长 h = 0. 01 m , t = 6 ×10 - 3s ,计算结果与理论解如图 1 (a ) 所示.图 1 迎风格式求解线性对流扩散问题的数值计算结果及与精确解比较算例 2瞬时波问题[ 6 ] , 考虑某一时刻原点2x长τ= 0. 01 s ,空间步长 h = 0. 1 m , t = 0. 15 s , 计 算结果与理论解如图 1 ( b ) 所示.周围的一个以 e-2 分布的污染源, 在强对流作用 从图 1 可见 ,迎风格式由于明显的数值效应 ,计算 下它的对流扩散由下列定解问题决定 :结果与理论解符合较差 ,不能重现实际的物理过程.5 s 5 s 52s 5 t+ u5 x= μ5 x2 , t > 0 , - ∞ < x < ∞2xs ( x , 0) = e -2 , - ∞ < x < ∞(5) 2 求解非线性对流扩散方程的精度一维非线性对流扩散方程 :其中 : u ,μ为常数 ,μ> 0. 定解问题的精确解为2 5 u + u5 u 52u= ε 2(7)s ( x , t ) = 1 e -( x - ut) (6)5 t 5 x 5 x1 + 2μt计算时参数取 μ= 0. 001 m 2/ s , u = 20 m/ s ,时间步因具有 Navier 2Stokes 方程的特性 ,而且数值求解 方法也很相似 ,所以在复杂的 N - S 方程的数值求222第 5 期 张小峰等 :一阶迎风差分格式求解非线性对流扩散方程的精度 3解中 ,该方程是一个很好的模型方程 ,且在某些初 算例 3 非线性对流扩散方程初边值问题[ 6 ]边值条件下存在理论解 , 对检验数值格式的精度有 5 u 5 u 1 52u 重要意义.当 u > 0 时 , 采用守恒型迎风差分格式对式5 t + u 5 x = Re 5 x 2, - 1 < x < 1 , t > 01 , - 1 ≤ x ≤0(7) 进行离散 , 得u ( x , 0) = u 0 ( x ) =0 , 0 < x ≤1u n +1 - u n( ii 1 τ +2nn ) 2 - ( u n ) 2i i - 1 h nnu ( - 1 , t ) = 1 , u (1 , t ) = 0 , t > 0(9)其中雷诺数 Re > 0.= εu i +1 + u i - 1 - 2 u ih 2(8)计算时选取 2 组参数 :1) Re = 10 , τ= 0. 01 s , h = 0. 05 m , t = 0. 92 s ; 2) Re = 100 , τ= 0. 001 s , 以下给出了 4 个非线性对流扩散方程存在理 论解的算例 , 用以检验该格式求解非线性对流扩散 方程的计算精度.h = 0. 01 m , t = 0. 92 s . 计算结果与精确解如图 2 所示.图 2 算例 3 数值计算结果及与精确解的比较算例 4 非线性对流扩散方程初边值问题[ 6 ]如下 :当时间充分长时 , 解趋向于定常解c 1 Re 5 u 5 u 1 52uu ( x ) = c 1 th ( c 2 -2x )(11)5 t + u 5 x =Re 5 x 2, 0 < x < 1 , t > 0其中 : c 1 , c 2为独立的任意常数.u ( x , 0) = 0 , 0 ≤ x ≤1u (0 , t ) = 1 , u (1 , t ) = 0 , t > 0(10)其中雷诺数 Re > 0.计算时选取 2 组参数 : ①Re = 10 , τ= 0. 000 2s , h = 0. 01m ; ②Re = 1 000 , τ= 0. 001s , h = 0. 01m. 计算结果与精确解如图 3 所示.算例5图 3 算例 4 数值计算结果及与精确解的比较ε εu (2 , t ) = [ 2 + tg ] , t > 0 (12)5 u 5 u52 u1 + εt1 + εt5 t+ u5 x= ε5 x2 , 0 < x < 2 , t >u (0 , t ) = 0 , t > 0该问题有解析解[ 8 ]εx u ( x , t ) =[ x + tg ] (13)1 + εt2 (1 +εt )计算时选取 2 组参数 : ①Re = 10,τ= 0. 000 5s ,uh = 0. 01 m , t = 0. 05 s ; ②Re = 200 , τ= 0. 001 s , h = 0. 01 m , t = 0. 1 s. 计算结果与精确解如图4 所示.图4 算例5 数值计算结果及与精确解的比较算例6 非线性对流扩散方程初边值问题[ 2 ]如下:其定态解析解为(15)(14)计算时选取2 , τ = 0. 000 1 s ,u 1 , t= - 1h = 0. 01 m; ②Re , h = 0. 01 m. 初值由边值插值得到,计算结果与精确解如图5 所示.图5 算例6 数值计算结果及与精确解的比较从图2~5 可见, 迎风格式计算一维线性对流扩散方程时, 其计算结果的精度不够理想, 但当用于计算非线性对流扩散方程时, 计算结果与理论解相当吻合. 同时也说明, 同样的一个数值计算格式分别用于求解线性和非线性方程时, 其计算精度可能存在相当大的差别;以线性方程为基础得到的计算格式稳定性分析结论对非线性方程不一定适用.产生这种差异的原因可能是:线性对流扩散方程描述的是输移量(如浓度场) 在速度场中的对流扩散方程, 浓度场的变量浓度s 和速度场中的流速u 是相对独立的2 个变量, 当速度场中各点的流速u 为常量时, 由于对流扩散作用, 浓度s 仍将随时间和地点发生变化;而非线性对流扩散方程描述的是速度本身的对流扩散过程, 当流速场中各点的流速为常量时, 非线性对流扩散方程中的各项为零. 由于这一原因, 导致计算结果的迥异.3 结语通过计算算例,检验了一阶迎风格式用于求解一维线性对流扩散方程和一维非线性对流扩散方程的适用性. 得到与一阶对流方程相似的结论,即虽然用一阶迎风格式计算一维线性对流扩散方程时,其计算结果的精度不够理想,但当用于计算非线性对流扩散方程时却是可以获得较高精度的. 根据这一认识,进行具体的工程问题计算时可以认为:一阶守恒型迎风格式用于求解水流运动方程时可以获得较高精度数值解,但不宜用于求解被水流输移的物质对流扩散方程. (下转第8 页)d p U - u cos θ程中将产生一系列变形行为 ,由此而生成的溅抛水L Jp = U w T m -K 1ln 1 + K 1wSS (19)滴的运动速度及溅抛角可用式(2) 、(4) 进行估算. (2) 溅抛水滴将形成一定范围的溅水区 ,该区式 (19) 中 , T m 为溅抛水滴在空中运动的时间.图 4 给出了根据式( 19) 进行计算所得溅水长 度 L Jp 与模型试验[ 1 , 3 ]及原型观测[ 2 ]相应溅水长度 L J mp 的比较 , 图中直线为 L Jp = L J mp . 由图可知 , 两 者甚为一致.为雾化流的暴雨中心 ,对工程的潜在威胁最大. 溅水区的纵向范围可用式 (19) 进行估算. 参考文献 :[ 1 ] 李奇伟. 库区雾化运动规律研究 [ D ] . 武汉 : 武汉水 利电力学院 ,1985.[ 2 ] 王 翔. 挑流雾化溅水区范围的确定 [ D ] . 武汉 : 武 汉水利电力学院 ,1989.[ 3 ] 刘永川. 安康水电站厂区雾化预报 [ R ] . 陕西 : 水电 部西北水科所 ,1988.[ 4 ] E ngle O G. Crater depth in fluid impacts[J ] . Journal ofApplied Physics , 1996 ,37 (4) :178921808. [ 5 ]蔡一坤. 液滴和液面碰撞 [J ] . 力学学报 , 1989 , 21(3) :2732279.图 4 溅水长度试验及原型观测成果与计算成果的比较4 结 论(1) 挑流水舌外缘的水滴在与下游水面碰撞过(上接第 4 页)参考文献 :[ 1 ] 忻孝康 ,黄光伟. 对流扩散方程的一种简单有效的欧拉 ———拉格朗日分裂格式 [J ] . 空气动力学报 ,1986 ,4 (1) :65273.[ 2 ] 王汝权 ,周保民. 一个半隐式指数型差分格式[J ] . 计算数学 ,1986 ,8 (1) :1092113.[ 3 ] Evans D J ,SahimiMS.Thenumerical 2solutionofBurgersequationbythealternatinggroupexplicit (A GE ) method[J ] . Intern J Computer Math ,1989 ,29 : 39264.[ 4 ] 陈景良 ,陆金甫 ,肖世江. Burgers 方程的交替分组显示方法 [J ] . 清华大学学报 (自然科学版) , 1994 , 34 (3) :1082116.[ 5 ] 韩庆书 ,龚霄雁. 用特征型 Garlerkin 方法求解 Burgers方程[J ] . 水动力学研究与进展 ,1988 ,3 (1) :36245.[ 6 ] 李炜. 黏性流体的混合有限分析解法[ M ] . 北京 : 科 学出版社 ,2001. [ 7 ] 张小峰 ,中川一 ,许全喜. 一阶迎风格式的精度问题[J ] . 武汉大学学报 (工学版) ,2001 ,34 (1) :6210. [ 8 ] 金承日 ,刘家琦. Buegers 方程的交替分组显示迭代方法[J ] . 计算物理 ,1989 ,15 (5) :6072613.。
一阶导数边界处的高阶差分格式
一阶导数边界处的高阶差分格式在数学和科学领域中,一阶导数边界处的高阶差分格式是一个重要且复杂的概念。
它在数值计算和科学工程中有着广泛的应用。
本文将探讨一阶导数边界处的高阶差分格式,讨论其基本原理、应用场景以及个人理解。
1. 基本原理一阶导数边界处的高阶差分格式是用差分来逼近微分的方法。
在边界处求解一阶导数时,我们需要使用高阶的差分格式来更精确地逼近导数的值。
常见的高阶差分格式包括中心差分、向前差分和向后差分。
在边界处,特别是当函数在该点不可导或者导数变化剧烈时,高阶差分格式能够提高逼近的准确性。
2. 应用场景一阶导数边界处的高阶差分格式广泛应用于数值计算、科学工程和实际问题的求解中。
在物理学中,当需要计算边界处的导数时,高阶差分格式能够提供更精确的数值结果。
在工程领域中,处理边界条件时,高阶差分格式也能够有效地提高数值计算的准确性。
在金融领域和生物医学领域,一阶导数边界处的高阶差分格式也有着重要的应用价值。
3. 个人理解对于我个人而言,一阶导数边界处的高阶差分格式是一个具有挑战性但又十分重要的概念。
通过学习和应用高阶差分格式,我意识到数值计算中的边界条件处理非常关键,而高阶差分格式能够帮助我们更准确地处理这些边界条件。
在我的实际工作中,我也经常需要使用高阶差分格式来解决复杂的数值计算问题,因此对其原理和应用有着更深入的理解和实际经验。
总结一阶导数边界处的高阶差分格式是数值计算和科学工程中不可或缺的重要概念。
通过本文的探讨,我们对其基本原理和应用场景有了更深入的了解,并且探讨了个人对该概念的理解和应用经验。
在今后的工作和研究中,我将继续深入学习和探索一阶导数边界处的高阶差分格式,以提高自己在数值计算和科学工程领域的能力。
通过以上内容,我希望本文能够对一阶导数边界处的高阶差分格式有一个更全面、深刻和灵活的理解。
一阶导数边界处的高阶差分格式在数学和科学领域中扮演着重要的角色。
它是一种用差分逼近微分的方法,特别在边界处求解一阶导数时,能够提供更精确的数值结果。
一阶差分stata命令
一阶差分stata命令
一阶差分是时间序列分析中常用的一种技术,它可以用来消除或减少时间序列数据中的趋势和季节性变化,使得数据更具有平稳性和可比性。
在Stata中,一阶差分可以通过使用“d.”命令来实现,具体命令格式如下:
d.variable [if] [in], lag(n)
其中,d.variable表示需要进行一阶差分的变量名;[if]和[in]为可选参数,用于指定数据子集;lag(n)表示一阶差分时采用的滞后期数,通常默认为1。
例如,我们要对一个变量“y”进行一阶差分,可以使用以下命令:
d.y
如果需要对数据子集进行一阶差分,可以在命令中加入“if”和“in”参数,例如:
d.y if year >= 2000 & year <= 2020, lag(2)
这条命令表示对年份在2000年至2020年之间的数据进行两期滞后的一阶差分。
一阶差分可以帮助我们更好地分析时间序列数据,但需要注意的是,过度使用一阶差分可能会导致信息损失和误判,因此需要根据具体情况进行谨慎使用。
- 1 -。
1差分格式
§1. 差分 1.一阶导数的差分近似(差商)导数的定义: ()()()0000limx x f x f x f x x x ®-¢=-导数的近似:()()()10010f x f x f x x x -¢»- (当 1x 与 0x 足够接近时)这样的表达式称为差商,它可作为导数的近似,称为导数的差分近似。
误差分析 - 泰勒展开:将 ()1f x 在 0x 处做泰勒展开,有()()()()()()21001001012f x f x f x x x f x x x ⅱ =+-+-+L于是()()()()1001010f x f x f x x x x x -¢-=--各种差分近似: 取 0h >(称为步长),则可以有 向前差分近似(相当于取 100x x h x =+>)()()()000f x h f x f x h+-¢»向后差分近似(相当于取 100x x h x =-<)()()()000f x f x h f x h--¢»中心差分近似 (前差近似与后差近似的算术平均)()()()0002f x h f x h f x h+--¢»2. 差分近似的一般形式差分近似的一般形式可写成()()()()()()()()022********* m m n n f x c f x c f x c f x hc f x c f x c f x c f x ------é¢?++êë+ù++++úûL L或简写为()()01nj j j mf x c f x h =-¢»å 称为一阶导数 ()0f x ¢ 的一个 1m n ++ 点差分近似。
这里0 ( , , 2 , 1 , 0 , 1 , 2 , , )j x x jh j m n =+=---L L差分近似的精度 : 阶 定义:若()()()01np j j j mf x c f x h h=-¢-=å则称表达式 ()1nj j j mc f x h =-å 是一阶导数 ()0f x ¢ 的 p 阶差分近似。
差分格式——精选推荐
差分格式1. 重要概念1.1 单调格式:如果⼀个格式可以写成:u n+1i=f(u n i−p,u n i−p+1,…,u n i+q)的形式,并且对于每⼀个变元u n k,k=i−p,i−p+1,…,i+q都有:∂f(u n i−p,u n i−p+1,…,u n i+q)∂u n i>0则该格式为单调格式。
⼀个典型的例⼦是:u n+1 i =∑k a k u n j+k当组合系数为正时(a k>0)为单调格式。
1.2 保单调格式设n时刻u n i是单调的,如果通过某个格式,得到n+1时刻的u n+1i也是单调的,则该格式为保单调格式。
1.3 TVD格式总变差定义为:TV=∑i|u i+1−u i|。
TVD格式定义为:满⾜条件TV n+1≤TV n的格式。
1.3.1 Harten定理如果⼀个三点格式,可以写成:u n+1i=u n i+C(u n i+1−u n i)−D(u n i−u n i−1)且:C≥0,D≥0,C+D≤1,则该格式为TVD格式。
1.3.2 构建TVD格式的思路对原有格式进⾏改造:原有格式=⼀阶迎风+修正项TVD型格式=⼀阶迎风+限制器*修正项限制器ψ=ψ(r),其中:r=u i−u i−1 u i+1−u i⼆阶精度范围:1≤ψ(r)≤r;或者r≤ψ(r)≤1;TVD范围:0≤ψ(r)≤min(2,2r);如图:结论:1. 常系数的单调格式只能是⼀阶精度。
2. 单调格式必是保单调格式。
3. 保单调格式必是TVD格式。
4. 对于线性格式(形如u n+1i =∑k a k u n j+k的格式),单调性和保单调性等价。
Processing math: 100%。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§1. 差分 1.一阶导数的差分近似(差商)导数的定义: ()()()0000limx x f x f x f x x x ®-¢=-导数的近似:()()()10010f x f x f x x x -¢»- (当 1x 与 0x 足够接近时)这样的表达式称为差商,它可作为导数的近似,称为导数的差分近似。
误差分析 - 泰勒展开:将 ()1f x 在 0x 处做泰勒展开,有()()()()()()21001001012f x f x f x x x f x x x ⅱ?=+-+-+L于是()()()()1001010f x f x f x x x x x -¢-=--各种差分近似: 取 0h >(称为步长),则可以有 向前差分近似(相当于取 100x x h x =+>)()()()000f x h f x f x h+-¢»向后差分近似(相当于取 100x x h x =-<)()()()000f x f x h f x h--¢»中心差分近似 (前差近似与后差近似的算术平均)()()()0002f x h f x h f x h+--¢»2. 差分近似的一般形式差分近似的一般形式可写成()()()()()()()()022********* m m n n f x c f x c f x c f x hc f x c f x c f x c f x ------é¢?++êë+ù++++úûL L或简写为()()01nj j j mf x c f x h =-¢»å 称为一阶导数 ()0f x ¢ 的一个 1m n ++ 点差分近似。
这里0 ( , , 2 , 1 , 0 , 1 , 2 , , )j x x jh j m n =+=---L L差分近似的精度 : 阶 定义:若()()()01n pj jj mf x c f x h h =-¢-=å 则称表达式 ()1nj j j mc f x h =-å 是一阶导数 ()0f x ¢ 的 p 阶差分近似。
例:通过误差分析,上面给出的向前和向后差分近似都是一阶的,而中心差分近似是二阶的。
中心差分近似的精度较高。
差分近似的分类若 m n = ,则 ()1mj j j mc f x h =-å 称为中心差分近似;若 m n ¹ ,则 ()1nj j j mc f x h =-å 称为偏心差分近似,特别是若 0m = ,则 ()01nj j j c f x h =å 称为向前差分近似(前差近似);若 0n = ,则 ()01j j j mc f x h =-å 称为向后差分近似(后差近似)。
3. 待定系数法构造导数的差分近似可用待定系数法。
【例1】用 1x -、0x 、1x 、2x 四点构造一阶导数 ()0f x ¢ 的差分近似。
【解】由泰勒展开,有()()()()()()234(4)1000001112624f x f x hf x h f x h f x h f x -ⅱⅱⅱ=-+-+-L ()()()()()()234(4)1000001112624f x f x hf x h f x h f x h f x ⅱⅱⅱ=+++++L ()()()()()()234(4)200000422233f x f x hf x h f x h f x h f x ⅱⅱⅱ=+++++L 将这些展开式带入所求得差分近似,得()()()()()()110011221012011201120111211 2221 6c f c f c f c f c c c c f x h h c c c f x c c c hf x c ------+++=+++¢+-++骣÷çⅱ÷+++ç÷÷ç桫+-+()()21203(4)11201463112 24243c c h f x c c c h f x -骣÷çⅱ?÷+ç÷ç÷桫骣÷ç÷+-+++ç÷ç÷桫L为了使上式能够成为一阶导数的差分近似且具有尽可能高的精度,式中的四个待定系数应满足1012112112112 0 211120221140663c c c c c c c c c c c c c ----ìïï+++=ïïïïïïï-++=ïïïíïïï++=ïïïïïïï-++=ïïî解得10121312116c c c c -ìïï=-ïïïïïïï=-ïïïíïïï=ïïïïïïï=-ïïî因此,若将函数值 ()j f x 简写成 j f ,所求的差分近似就是()()010121012111112363266f x f f f f f f f f h h--骣÷ç¢÷?-+-=--+-ç÷÷ç桫 误差为()()()()3(4)11203(4)03(4)0112 242431112112432436112c c c h f x h f x h f x -骣÷ç÷-+++ç÷ç÷桫轾骣骣骣骣骣鼢鼢?珑珑?犏鼢鼢?=--++-+珑珑?鼢鼢?犏珑珑?鼢鼢?桫桫桫桫桫犏臌=-+L L L 所以上述差分近似具有三阶精度。
【例2】用 1x -、1x 两点构造一阶导数 ()0f x ¢ 的差分近似。
【解】由泰勒展开,有()()()()()23100001126f x f x hf x h f x h f x -ⅱⅱⅱ=-+-+L ()()()()()23100001126f x f x hf x h f x h f x ⅱⅱⅱ=++++L 将这些展开式带入所求得差分近似,得()()()()()()()111111011011021101111 2211 66c f c f c c f x h h c c f x c c hf x c c h f x ------+=+¢+-+骣÷çⅱ÷++ç÷ç÷桫骣÷çⅱ?÷+-++ç÷ç÷桫L为了使上式能够成为一阶导数的差分近似且具有尽可能高的精度,式中的两个待定系数应满足111101c c c c --ìï+=ïïíïï-+=ïïî 解得 111212c c -ìïï=-ïïïíïïï=ïïî因此,所求的差分近似为()11011111222f f f x f f h h--骣-÷ç¢÷?+=ç÷÷ç桫 这正好是前面提到过的中心差分近似,其误差为()()()211011001111 22661111111122226262c c hf x c c h f x hf x --骣骣鼢珑ⅱⅱ?鼢++-++珑鼢鼢珑桫桫轾?骣骣骣骣骣骣骣骣鼢鼢鼢鼢珑珑珑珑犏ⅱ鼢鼢鼢鼢=-++--+珑珑珑珑鼢鼢鼢鼢犏珑珑鼢鼢鼢鼢珑珑桫桫桫桫桫桫桫桫犏臌L ()()()()202002010616h f x hf x h f x h f x ù犏ⅱ?+犏犏臌ⅱⅱ?=?+ⅱ?=+L L L由于选点的对称性,误差中二阶导数项的系数恰好抵销为零,所以上述差分近似具有二阶精度。
这就是中心差分近似精度较高的原因。
4.高阶导数的差分近似以上关于一阶导数的差分近似,完全可以推广到高阶导数。
高阶导数的差分近似:其一般形式为()()()()()()()()()022*********k m m kn n fx c f x c f x c f x h c f x c f x c f x c f x ------é?++êë+ù++++úûL L待定系数法:构造高阶导数的差分近似,仍可用待定系数法。
【例3】用 1x -、0x 、1x 三点构造二阶导数 ()0f x ⅱ 的差分近似。
【解】由泰勒展开,有()()()()()()234(4)1000001112624f x f x hf x h f x h f x h f x -ⅱⅱⅱ=-+-+-L ()()()()()()234(4)1000001112624f x f x hf x h f x h f x h f x ⅱⅱⅱ=+++++L 将这些展开式带入所求得差分近似,得()()()()()()1100111010221101101111111 2211 66c f c f c f c c c f x h h c c f x h c c f x c c hf x ------++=++¢+-+骣÷çⅱ÷++ç÷ç÷桫骣÷çⅱ?÷+-+ç÷÷ç桫()()02(4)11011 2424c c h f x -骣÷ç÷+++ç÷ç÷桫L为了得到二阶导数的差分近似且具有尽可能高的精度,式中的三个待定系数此时应满足1011111 0011+122c c c c c c c ---ìïï++=ïïïïïïï-+=íïïïïïï=ïïïî 解得 101121c c c -ìï=ïïïïï=-íïïïïï=ïî 因此,所求的差分近似为()()101010122212f f f f x f f f hh---+ⅱ?+=误差为()()()()()()()()()()2(4)1101102(4)002(4)001111 662424111111116624241012112c c hf x c c h f x hf x h f x hf x h f x h --骣骣鼢珑ⅱ?鼢-++++珑鼢鼢珑桫桫轾轾骣骣骣骣鼢鼢珑珑犏犏ⅱ?鼢鼢=-++++珑珑鼢鼢犏犏珑鼢鼢珑桫桫桫桫犏犏臌臌ⅱ?=?+=L L L ()2(4)0f x +L所以上述差分近似具有二阶精度。