差分定義
差分(difference)又名差分函式或差分運算,差分的結果反映了離散量之間的一種變化,是研究離散數學的一種工具。它將原函式f(x) 映射到f(x+a)-f(x+b) 。差分運算,相應於微分運算,是微積分中重要的一個概念。總而言之,差分對應離散,微分對應連續。差分又分為前向差分、向後差分及中心差分三種。
在社會經濟活動與自然科學研究中,我們經常遇到與時間t有關的變數,而人們往往又只能觀察或記錄到這些變數在離散的t時的值。對於這類變數,如何去研究它們的相互關係,就離不開差分與差分方程的工具。微積分中的微分與微分方程的工具,事實上來源於差分與差分方程.因此差分與差分方程更是原始的客觀的生動的材料。
讀者熟悉等差數列:a a aa其中a= a + d( n = 1,2,…n )d為常數,稱為公差, 即 d = a-a , 這就是一個差分, 通常用D(a) = a- a來表示,於是有D(a)= d , 這是一個最簡單形式的差分方程。
定義. 設變數y依賴於自變數t ,當t變到t + 1時,因變數y = y(t)的改變數D y(t)= y(t+1) - y(t)稱為函式y(t)在點t處步長為1的(一階)差分,常記作D yt= yt+1- yt ,簡稱為函式y(t)的(一階)差分,並稱D為差分運算元。
差分具有類似於微分的運算性質。
前向差分
函式的前向差分通常簡稱為函式的差分。對於函式f(x),如果在等距節點:
則稱Δf(x),函式在每個小區間上的增量y(k+1)-yk為f(x)的一階前向差分。在微積分學中的有限差分(finite differences),前向差分通常是微分在離散的函式中的等效運算。差分方程的解法也與微分方程的解法相似。當是多項式時,前向差分為Delta運算元,一種線性運算元。前向差分會將多項式階數降低1。
向後差分
對於函式,一階向後差分為:
註:差分方程:difference equations
中心差分
對於函式,一階中心差分為:
差分的階
稱為階的差分,即前向階差分 ,如果 數學運用根據數學歸納法,有其中,為二項式係數。特別的,有前向差分有時候也稱作數列的二項式變換
首先我們來看在“無限演算”中所使用的
Df(x) = Limit[f(x+h)-f(x),h -> 0]
這是定義微分運算元D的性質。“有限演算”基於由
Δf(x)=f(x+1)-f(x)
定義在 差分運算元Δ的性質上。
差分與微分有許多類似的性質(事實上微分可認為是差分的極限),對於冪函式的微分有
D(x^m) = m * x^(m-1) dx
我們尋找一種類似的差分性質:
設:
Mi(x,m) = x(x-1)(x-2)…(x-m+1) , 整數 m > 0
Mi(x,m) = x/((x+0)(x+1)(x+2)…(x+m)),整數 m ≤ 0
那么
ΔMi(x,m) = m * Mi(x,m-1) .
逆差分
定義了差分,那么就有其逆運算元,我們稱之為 逆差分:
g(x) = Σf(x) + C
Σ為 逆差分運算元,g(x) 為 f(x) 的逆差分,C是在x,x+1,x+2……上為任意常數的函式,我們可以使用逆差分來進行求和運算:
Sum[f(x),{x,m,n-1}] (Mathematica語法)
= Sum[g(x+1)-g(x),{x,m,n-1}]
= g(n) - g(m)
註:Sum即Σ逆差分運算元。
這裡我們可以求出一些函式的逆差分:
ΣMi(x,m) = Mi(x,m+1)/(m+1) + C,
Σ1/x = H(x-1) + C,H(x) = 1 + 1/2 + 1/3 + … + 1/x,
Σ2^x = 2^x + C,
Σ1 = x + C
例 求:
Sum[x^2,{x,0,n}] (Mathematica語法)
= Sum[Mi(x,2) + Mi(x,1),{x,0,n}]
= Sum[Mi(x,2),{x,0,n}] + Sum[Mi(x,1),{x,0,n}]
= (Mi(n+1,3) - Mi(0,3))/3 + (Mi(n+1,2) - Mi(0,2))/2
= n(1+n)(1+2n)/6
因為:
Δ(u(x)*v(x))
= u(x+1)*v(x+1) - u(x)*v(x)
= u(x+1)*v(x+1) - u(x+1)*v(x) + u(x+1)*v(x) - u(x)*v(x)
= u(x+1)*Δv(x) + v(x)*Δu(x)
所以:
v(x)*Δu(x) = Δ(u(x)*v(x)) - u(x+1)*Δv(x)
所以:
Σv(x)*Δu(x) = u(x)*v(x) - Σu(x+1)*Δv(x)
例 求:
Σx*H(x)
= ΣH(x)ΔMi(x,2)/2
= H(x) * Mi(x,2)/2 - ΣMi(x+1,2)/2*ΔH(x)
= H(x) * Mi(x,2)/2 - ΣMi(x+1,2)/2 * 1/(x+1)
= H(x) * Mi(x,2)/2 - Σx/2
= H(x) * Mi(x,2)/2 - Mi(x,2)/4 + C
差分方程
差分方程是微分方程的離散化。一個微分方程不一定可以解出精確的解,把它變成差分方程,就可以求出近似的解來。 比如 dy+y*dx=0,y(0)=1 是一個微分方程, x取值[0,1] (註:解為y(x)=e^(-x)); 要實現微分方程的離散化,可以把x的區間分割為許多小區間 [0,1/n],[1/n,2/n],...[(n-1)/n,1] 這樣上述微分方程可以離散化為:y((k+1)/n)-y(k/n)+y(k/n)*(1/n)=0, k=0,1,2,...,n-1 (n 個離散方程組) 利用y(0)=1的條件,以及上面的差分方程,就可以計算出 y(k/n) 的近似值了。
套用
差分的結果反映了離散量之間的一種變化,是研究離散數學的一種工具,常用函式差近似導數。
一階導數的差分表示
由泰勒公式:
取可得向前差分公式:
取可得向後差分公式:
取,分別取並將兩式相減,可得中心差分公式:
二階導數的差分表示
由泰勒公式:
取,分別取並將兩式相加,可得中心差分公式: