張榮培, 楊程程, 劉 佳
(1. 沈陽師范大學 數(shù)學與系統(tǒng)科學學院, 沈陽 110034; 2. 沈陽師范大學 大學外語教學部, 沈陽 110034)
離散余弦變換(discrete cosine transform,DCT)主要用到余弦函數(shù)逼近給定樣本函數(shù)的最小二乘和插值[1],在信號處理[2]、圖像壓縮[3]以及偏微分方程求解領(lǐng)域[4-5]得到了廣泛的應用。由于DCT能夠?qū)⒖沼虻男盘栟D(zhuǎn)換到頻域上,具有良好的相關(guān)性的性能。
其次,將離散余弦變換應用于求解偏微分方程。將要逼近的函數(shù)u的最小二乘余弦插值多項式代入微分方程,余弦擬譜離散化應用于空間導數(shù),然后在這些離散點集上應用配置方法,結(jié)合離散余弦變換,最終得到關(guān)于頻域上的常微分方程組。通過向后Euler方法離散時間導數(shù)使之具有更好的穩(wěn)定性,應用Picard迭代求解非線性代數(shù)方程組。在求解過程中,使用了快速余弦變換,提高了計算效率。
首先,將求解區(qū)域劃分成J個網(wǎng)格,然后取每個網(wǎng)格的中心點得到離散點集。對于函數(shù)u,將[a,b]剖分為J個網(wǎng)格,定義
定理1 當-(2J-1)≤k≤2J-1時,有
(1)
故得證。
定理2 函數(shù){φk},k=0,1,…J-1在點集{xj}上正交,即
(2)
當k=m時,式(2)顯然成立。當k≠m時,即k-m≠0,有-(J-1)≤k-m≤J-1,1≤k+m≤2J-1由定理1可證。
這說明了余弦函數(shù){φk},k=0,1,…,J-1在點集{xj}(j=1,2,…,J)上是正交的。
(3)
(4)
如果將離散點集代入最小二乘余弦逼近多項式(3)中,得到函數(shù)值uj等于SN(xj)。下面給出證明,
(5)
反應擴散方程(組)是一類非線性偏微分方程,在生態(tài)學[6-8]、燃燒學[9]和化學反應流[10]等領(lǐng)域有著重要的應用。近年來,許多學者對該方程提出了許多數(shù)值方法,比如緊致積分因子法[11]、間斷有限元法[12]、 格子Boltzmann方法[13]。下面將上面的離散余弦變換應用于求解偏微分方程,得到余弦擬譜方法[14]??紤]如下一維反應擴散方程
(6)
由定理3和上述二階導數(shù)離散得
該非線性方程組可由如下Picard迭代法求解
下面給出反應擴散方程的一些算例。在凝膠反應中,Gray-Scott方程模擬化學反應。對應的無量綱反應擴散方程為
其中:u,v為系統(tǒng)變量,代表反應物——基質(zhì)和催化劑的濃度;Du,Dv為擴散系數(shù);A,B為系統(tǒng)控制參量——無尺度的流速度和催化劑的衰變常數(shù)[15]。
圖1 u,v的數(shù)值解圖,當A=0.01,B=0.1時Fig.1 The plot of solution of u,v at A=0.01,B=0.1
在圖2中,取t=4 000,A=0.01,B=0.1,可以看到,2個脈沖每一個都分裂成2個行波脈沖,現(xiàn)在產(chǎn)生了4個脈沖,又過了一段時間,這4個脈沖再一次分裂,此時得到了8個脈沖。這個過程在2個脈沖之外繼續(xù),直到填滿整個間隔,在這個自我復制的過程中,v在2個峰之間成幅度減小,在脈沖之間u不趨近于1,u的最大值隨著2個行波脈沖之間距離的增加而增加。
圖2 u,v的數(shù)值解圖,當A=0.01,B=0.1時Fig.2 The plot of solution of u,v at A=0.01,B=0.1
圖3 u,v的數(shù)值解圖,當Fig.3 The plot of solution of u,v at
本文推導了離散余弦變換是如何得到的,通過離散余弦變換的方法對反應擴散方程進行了求解。首先通過考慮區(qū)域上有具有齊次Neumann邊界的函數(shù)u,將求解區(qū)域劃分為N個網(wǎng)格,取每個網(wǎng)格的中心點得到離散點集。然后根據(jù)余弦函數(shù)族在點集上的正交性,得到函數(shù)u的最小二乘余弦逼近多項式SN。將離散點集代入SN中,可以證明SN(xj)=uj。通過建立映射得到了離散余弦變換,然后應用離散余弦變換得到了關(guān)于頻域上的常微分方程組,通過向后Euler方法離散時間導數(shù),最后應用Picard迭代求解非線性代數(shù)方程組。通過對數(shù)值算例的數(shù)值結(jié)果進行仿真計算,證實了通過離散余弦變換來求解反應擴散方程是有效的,快速的。