fbpx
维基百科

有限差分法

数学中,有限差分法finite-difference methods,簡稱FDM),是一种微分方程数值方法,是通过有限差分近似导數,从而寻求微分方程的近似解。

由泰勒展開式的推導 编辑

首先假設要近似函數的各級導數都有良好的性質,依照泰勒定理,可以形成以下的泰勒展開式

 

其中n!表示是n階乘Rn(x)為餘數,表示泰勒多項式和原函數之間的差。可以推導函數f一階導數的近似值:

 

設定x0=a,可得:

 

除以h可得:

 

求解f'(a):

 

假設 相當小,因此可以將"f"的一階導數近似為:

 

準確度及誤差 编辑

近似解的誤差定義為近似解及解析解之間的差值。有限差分法的兩個誤差來源分別是捨入誤差截尾誤差英语truncation error(或稱為離散化誤差),前者是因為電腦計算小數時四捨五入造成的誤差,後者則是用有限阶级数表示导数引起的误差。

 
有限差分法是以在格點上函數的值為準

在運用有限差分法求解一問題(或是說找到問題的近似解)時,第一步需要將問題的定義域離散化。一般會將問題的定義域用均勻的網格分割(可參考右圖)。因此有限差分法會制造一組導數的離散數值近似值。

一般會關注近似解的局部截尾誤差英语local truncation error,會用大O符號表示,局部截尾誤差是指應用有限差分法一次後產生的誤差,因此為 ,此時 是實際值,而 為近似值。泰勒多項式的餘數項有助於分析局部截尾誤差。利用 泰勒多項式的餘數項,也就是

 , 其中 ,

可以找到局部截尾誤差的主控項,例如用前項差分法計算一階導數,已知 ,

 

利用一些代數的處理,可得

 

注意到左邊的量是有限差分法的近似,右邊的量是待求解的量再加上一個餘數,因此餘數就是局部截尾誤差。上述範例可以用下式表示:

 

在此例中,局部截尾誤差和時間格點的大小成正比。

範例:常微分方程 编辑

例如考慮以下的常微分方程

 

利用數值方法中歐拉法求解,利用以下的有限差分式

 

來近似導數,並配合一些代數處理(等號兩側同乘以h,再加上u(x)),可得

 

最後的方程式即為有限差分方程,求解此方程則可得到原方程的近似解。

範例:熱傳導方程 编辑

考慮正規化的一維熱傳導方程式,為齊次的狄利克雷邊界條件

 
 (邊界條件)
 (初始條件)

對此問題求數值解的一種方式是用差分去近似所有的導數,可以將空間分割為 ,將時間也分割為 。假設在時間及空間都是均勻的網格切割,空間中兩個連續位置的間隔為h,兩個連續時間之間的間隔為k。點

 

表示 的數值近似解。

顯式方法 编辑

 
熱傳導方程最常用顯式方法的模版英语Stencil (numerical analysis)

利用在時間 的前向差分,以及在位置 的二階中央差分(FTCS 格式英语FTCS scheme),可以得到以下的迭代方程:

 

這是用求解一維導熱傳導方程的顯式方法

可以用以下的式子求解 

 

其中 

因此配合此迭代關係式,已知在時間n的數值,可以求得在時間n+1的數值。  的數值可以用邊界條件代入,在此例中為0。

此顯式方法在 時,為數值稳定收斂[1]。其數值誤差和時間間隔成正比,和位置間隔的平方成正比:

 

隱式方法 编辑

 
隱式方法的模版

若使用時間 的後向差分,及位置 的二階中央差分(BTCS 格式),可以得到以下的迭代方程:

 

這是用求解一維導熱傳導方程的隱式方法

在求解線性聯立方程後可以得到 

 

此方法不論 的大小,都數值稳定且收斂,但在計算量會較顯式方法要大,因為每前進一個時間間隔,就需要求解一個聯立的數值方程組。其數值誤差和時間間隔成正比,和位置間隔的平方成正比:

 

克兰克-尼科尔森方法 编辑

若使用時間 的中間差分,及位置 的二階中央差分(CTCS 格式),可以得到以下的迭代方程:

 

此公式為克兰克-尼科尔森方法(Crank–Nicolson method)。

 
克兰克-尼科尔森方法的模版

在求解線性聯立方程後可以得到 

 

此方法不論 的大小,都數值稳定且收斂,但在計算量會較顯式方法要大,因為每前進一個時間間隔,就需要求解一個聯立的數值方程組。其數值誤差和時間間隔的平方成正比,和位置間隔的平方成正比:

 

若時間刻度較小時,克兰克-尼科尔森方法是最精確的,而顯式方法是最不精確的,而且可能會不穩定,但是是最容易計算的,其數值計算量也最少。若時間刻度較大時,隱式方法的效果最好。

相關條目 编辑

  • 有限元分析
  • 差分
  • 時域有限差分
  • 模版 (數值分析)英语Stencil (numerical analysis)
  • 有限差分係數
  • 五點Stencil英语Five-point stencil
  • Lax等價定理英语Lax equivalence theorem
  • 期权定价的有限差分法英语finite difference methods for option pricing

參考資料 编辑

  1. ^ Crank, J. The Mathematics of Diffusion. 2nd Edition, Oxford, 1975, p. 143.
  • K.W. Morton and D.F. Mayers, Numerical Solution of Partial Differential Equations, An Introduction. Cambridge University Press, 2005.
  • Oliver Rübenkönig, , (2006) Albert Ludwigs University of Freiburg
  • Autar Kaw and E. Eric Kalu, Numerical Methods with Applications, (2008) [1] (页面存档备份,存于互联网档案馆

外部連結 编辑

  • Finite Difference Method of Solving ODEs (Boundary Value Problems) Notes, PPT, Maple, Mathcad, Matlab, Mathematica (页面存档备份,存于互联网档案馆
  • Shih-Hung Chen, National Central University
  • Randall J. LeVeque英语Randall J. LeVeque, Finite Difference Methods for Ordinary and Partial Differential Equations (页面存档备份,存于互联网档案馆, SIAM, 2007.
  • Finite Difference Method for Boundary Value Problems (页面存档备份,存于互联网档案馆
  • Numerical Methods for time-dependent Partial Differential Equations (页面存档备份,存于互联网档案馆

有限差分法, 在数学中, finite, difference, methods, 簡稱fdm, 是一种微分方程数值方法, 是通过有限差分來近似导數, 从而寻求微分方程的近似解, 目录, 由泰勒展開式的推導, 準確度及誤差, 範例, 常微分方程, 範例, 熱傳導方程, 顯式方法, 隱式方法, 克兰克, 尼科尔森方法, 相關條目, 參考資料, 外部連結由泰勒展開式的推導, 编辑首先假設要近似函數的各級導數都有良好的性質, 依照泰勒定理, 可以形成以下的泰勒展開式, displaystyle, frac, frac, . 在数学中 有限差分法 finite difference methods 簡稱FDM 是一种微分方程数值方法 是通过有限差分來近似导數 从而寻求微分方程的近似解 目录 1 由泰勒展開式的推導 2 準確度及誤差 3 範例 常微分方程 4 範例 熱傳導方程 4 1 顯式方法 4 2 隱式方法 4 3 克兰克 尼科尔森方法 5 相關條目 6 參考資料 7 外部連結由泰勒展開式的推導 编辑首先假設要近似函數的各級導數都有良好的性質 依照泰勒定理 可以形成以下的泰勒展開式 f x 0 h f x 0 f x 0 1 h f 2 x 0 2 h 2 f n x 0 n h n R n x displaystyle f x 0 h f x 0 frac f x 0 1 h frac f 2 x 0 2 h 2 cdots frac f n x 0 n h n R n x nbsp 其中n 表示是n的階乘 Rn x 為餘數 表示泰勒多項式和原函數之間的差 可以推導函數f一階導數的近似值 f x 0 h f x 0 f x 0 h R 1 x displaystyle f x 0 h f x 0 f x 0 h R 1 x nbsp 設定x0 a 可得 f a h f a f a h R 1 x displaystyle f a h f a f a h R 1 x nbsp 除以h可得 f a h h f a h f a R 1 x h displaystyle f a h over h f a over h f a R 1 x over h nbsp 求解f a f a f a h f a h R 1 x h displaystyle f a f a h f a over h R 1 x over h nbsp 假設R 1 x displaystyle R 1 x nbsp 相當小 因此可以將 f 的一階導數近似為 f a f a h f a h displaystyle f a approx f a h f a over h nbsp 準確度及誤差 编辑近似解的誤差定義為近似解及解析解之間的差值 有限差分法的兩個誤差來源分別是捨入誤差及截尾誤差 英语 truncation error 或稱為離散化誤差 前者是因為電腦計算小數時四捨五入造成的誤差 後者則是用有限阶级数表示导数引起的误差 nbsp 有限差分法是以在格點上函數的值為準在運用有限差分法求解一問題 或是說找到問題的近似解 時 第一步需要將問題的定義域離散化 一般會將問題的定義域用均勻的網格分割 可參考右圖 因此有限差分法會制造一組導數的離散數值近似值 一般會關注近似解的局部截尾誤差 英语 local truncation error 會用大O符號表示 局部截尾誤差是指應用有限差分法一次後產生的誤差 因此為f x i f i displaystyle f x i f i nbsp 此時f x i displaystyle f x i nbsp 是實際值 而f i displaystyle f i nbsp 為近似值 泰勒多項式的餘數項有助於分析局部截尾誤差 利用f x 0 h displaystyle f x 0 h nbsp 泰勒多項式的餘數項 也就是 R n x 0 h f n 1 3 n 1 h n 1 displaystyle R n x 0 h frac f n 1 xi n 1 h n 1 nbsp 其中x 0 lt 3 lt x 0 h displaystyle x 0 lt xi lt x 0 h nbsp 可以找到局部截尾誤差的主控項 例如用前項差分法計算一階導數 已知f x i f x 0 i h displaystyle f x i f x 0 ih nbsp f x 0 i h f x 0 f x 0 i h f 3 2 i h 2 displaystyle f x 0 ih f x 0 f x 0 ih frac f xi 2 ih 2 nbsp 利用一些代數的處理 可得 f x 0 i h f x 0 i h f x 0 f 3 2 i h displaystyle frac f x 0 ih f x 0 ih f x 0 frac f xi 2 ih nbsp 注意到左邊的量是有限差分法的近似 右邊的量是待求解的量再加上一個餘數 因此餘數就是局部截尾誤差 上述範例可以用下式表示 f x 0 i h f x 0 i h f x 0 O h displaystyle frac f x 0 ih f x 0 ih f x 0 O h nbsp 在此例中 局部截尾誤差和時間格點的大小成正比 範例 常微分方程 编辑例如考慮以下的常微分方程 u x 3 u x 2 displaystyle u x 3u x 2 nbsp 利用數值方法中歐拉法求解 利用以下的有限差分式 u x h u x h u x displaystyle frac u x h u x h approx u x nbsp 來近似導數 並配合一些代數處理 等號兩側同乘以h 再加上u x 可得 u x h u x h 3 u x 2 displaystyle u x h u x h 3u x 2 nbsp 最後的方程式即為有限差分方程 求解此方程則可得到原方程的近似解 範例 熱傳導方程 编辑考慮正規化的一維熱傳導方程式 為齊次的狄利克雷邊界條件 U t U x x displaystyle U t U xx nbsp U 0 t U 1 t 0 displaystyle U 0 t U 1 t 0 nbsp 邊界條件 U x 0 U 0 x displaystyle U x 0 U 0 x nbsp 初始條件 對此問題求數值解的一種方式是用差分去近似所有的導數 可以將空間分割為x 0 x J displaystyle x 0 x J nbsp 將時間也分割為t 0 t N displaystyle t 0 t N nbsp 假設在時間及空間都是均勻的網格切割 空間中兩個連續位置的間隔為h 兩個連續時間之間的間隔為k 點 u x j t n u j n displaystyle u x j t n u j n nbsp 表示u x j t n displaystyle u x j t n nbsp 的數值近似解 顯式方法 编辑 nbsp 熱傳導方程最常用顯式方法的模版 英语 Stencil numerical analysis 利用在時間t n displaystyle t n nbsp 的前向差分 以及在位置x j displaystyle x j nbsp 的二階中央差分 FTCS 格式 英语 FTCS scheme 可以得到以下的迭代方程 u j n 1 u j n k u j 1 n 2 u j n u j 1 n h 2 displaystyle frac u j n 1 u j n k frac u j 1 n 2u j n u j 1 n h 2 nbsp 這是用求解一維導熱傳導方程的顯式方法 可以用以下的式子求解u j n 1 displaystyle u j n 1 nbsp u j n 1 1 2 r u j n r u j 1 n r u j 1 n displaystyle u j n 1 1 2r u j n ru j 1 n ru j 1 n nbsp 其中r k h 2 displaystyle r k h 2 nbsp 因此配合此迭代關係式 已知在時間n的數值 可以求得在時間n 1的數值 u 0 n displaystyle u 0 n nbsp 及u J n displaystyle u J n nbsp 的數值可以用邊界條件代入 在此例中為0 此顯式方法在r 1 2 displaystyle r leq 1 2 nbsp 時 為數值稳定且收斂 1 其數值誤差和時間間隔成正比 和位置間隔的平方成正比 D u O k O h 2 displaystyle Delta u O k O h 2 nbsp 隱式方法 编辑 nbsp 隱式方法的模版若使用時間t n 1 displaystyle t n 1 nbsp 的後向差分 及位置x j displaystyle x j nbsp 的二階中央差分 BTCS 格式 可以得到以下的迭代方程 u j n 1 u j n k u j 1 n 1 2 u j n 1 u j 1 n 1 h 2 displaystyle frac u j n 1 u j n k frac u j 1 n 1 2u j n 1 u j 1 n 1 h 2 nbsp 這是用求解一維導熱傳導方程的隱式方法 在求解線性聯立方程後可以得到u j n 1 displaystyle u j n 1 nbsp 1 2 r u j n 1 r u j 1 n 1 r u j 1 n 1 u j n displaystyle 1 2r u j n 1 ru j 1 n 1 ru j 1 n 1 u j n nbsp 此方法不論r displaystyle r nbsp 的大小 都數值稳定且收斂 但在計算量會較顯式方法要大 因為每前進一個時間間隔 就需要求解一個聯立的數值方程組 其數值誤差和時間間隔成正比 和位置間隔的平方成正比 D u O k O h 2 displaystyle Delta u O k O h 2 nbsp 克兰克 尼科尔森方法 编辑 若使用時間t n 1 2 displaystyle t n 1 2 nbsp 的中間差分 及位置x j displaystyle x j nbsp 的二階中央差分 CTCS 格式 可以得到以下的迭代方程 u j n 1 u j n k 1 2 u j 1 n 1 2 u j n 1 u j 1 n 1 h 2 u j 1 n 2 u j n u j 1 n h 2 displaystyle frac u j n 1 u j n k frac 1 2 left frac u j 1 n 1 2u j n 1 u j 1 n 1 h 2 frac u j 1 n 2u j n u j 1 n h 2 right nbsp 此公式為克兰克 尼科尔森方法 Crank Nicolson method nbsp 克兰克 尼科尔森方法的模版在求解線性聯立方程後可以得到u j n 1 displaystyle u j n 1 nbsp 2 2 r u j n 1 r u j 1 n 1 r u j 1 n 1 2 2 r u j n r u j 1 n r u j 1 n displaystyle 2 2r u j n 1 ru j 1 n 1 ru j 1 n 1 2 2r u j n ru j 1 n ru j 1 n nbsp 此方法不論r displaystyle r nbsp 的大小 都數值稳定且收斂 但在計算量會較顯式方法要大 因為每前進一個時間間隔 就需要求解一個聯立的數值方程組 其數值誤差和時間間隔的平方成正比 和位置間隔的平方成正比 D u O k 2 O h 2 displaystyle Delta u O k 2 O h 2 nbsp 若時間刻度較小時 克兰克 尼科尔森方法是最精確的 而顯式方法是最不精確的 而且可能會不穩定 但是是最容易計算的 其數值計算量也最少 若時間刻度較大時 隱式方法的效果最好 相關條目 编辑有限元分析 差分 時域有限差分 模版 數值分析 英语 Stencil numerical analysis 有限差分係數 五點Stencil 英语 Five point stencil Lax等價定理 英语 Lax equivalence theorem 期权定价的有限差分法 英语 finite difference methods for option pricing 參考資料 编辑 Crank J The Mathematics of Diffusion 2nd Edition Oxford 1975 p 143 K W Morton and D F Mayers Numerical Solution of Partial Differential Equations An Introduction Cambridge University Press 2005 Oliver Rubenkonig The Finite Difference Method FDM An introduction 2006 Albert Ludwigs University of Freiburg Autar Kaw and E Eric Kalu Numerical Methods with Applications 2008 1 页面存档备份 存于互联网档案馆 外部連結 编辑Finite Difference Method see and listen to lecture 9 List of Internet Resources for the Finite Difference Method for PDEs Finite Difference Method of Solving ODEs Boundary Value Problems Notes PPT Maple Mathcad Matlab Mathematica 页面存档备份 存于互联网档案馆 Lecture Notes Shih Hung Chen National Central University Randall J LeVeque 英语 Randall J LeVeque Finite Difference Methods for Ordinary and Partial Differential Equations 页面存档备份 存于互联网档案馆 SIAM 2007 Finite Difference Method Finite Difference Method for Boundary Value Problems 页面存档备份 存于互联网档案馆 Finite Difference Methodology in Materials Science Numerical Methods for time dependent Partial Differential Equations 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 有限差分法 amp oldid 76673061, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。