Remove ads
来自维基百科,自由的百科全书
擬譜法(Pseudo-spectral methods)[1]也稱為離散變數表示(discrete variable representation、DVR)法,是在應用數學及計算科學中求解偏微分方程用的數值分析方法。擬譜法和譜方法有密切關係,但在譜方法中基底函數中使用了擬譜的基底函數,也就是可以在分割網格上表示的函數。此作法簡化一些運算子的計算,在使用快速演算法(例如快速傅立葉變換)時可以加速計算速度。
此條目需要補充更多來源。 (2019年7月17日) |
考慮以下的初值問題
有週期性條件。這個例子是勢能為之粒子的薛丁格方程,不過其結構可適用到其他應用。在許多實務上的偏微分方程中,其中有一項是和導數(例如是動能相關的量)有關,另一項則是和另一個函數(此處為勢能)的乘積。
在譜方法中,其解會展開為一組適合基底函數的組合,例如平面波。
將解代入,並且計算係數的方程,可以得到係數的常微分方程
而其元素可以透過顯式的傅立葉轉換求得
若將基底函數的展開到一定項次後截斷,並且找的解,就可以得到偏微分方程的解。一般而言會用數值方法進行,例如龍格-庫塔法。為了數值解,常微分方程的右側需重覆計算在許多不同時間間隔下的值。此時,譜方法有個和勢能項有關的主要問題。
在譜方法下,和勢能函數的相乘會轉換為向量和矩陣的乘法,其複雜度是,而且在求解係數的微分方程時,需要另外去計算矩陣元素,這也需要時間。
在擬譜法中,會用不同的方式來計算。給定係數,會用反離散傅立葉轉換來計算函數在離散格點下的值。在格點上,計算函數的乘積 ,再用傅立葉轉換轉換回來,可以得到一組新的係數,來代替矩陣乘積運算。
可以證明二個方法有類似的精準度,而且擬譜法可以使用快速傅立葉轉換,其時間複雜度為,理論上比矩陣乘法要快很多。而且,可以直接計算函數,不用再經過額外的積分運算。
若用比較抽象的方式來描述,擬譜法是處理在偏微分方程中二個函數和的乘積。為了簡化表示式,省略掉函數中時間的自變數。在概念上,擬譜法包括三個步驟:
函數和可以用一組有限基底的函數來擴展:
為了簡化起見,令基底是正交且正規化的,,利用內積配合適當的邊界,其係數為
配合一些計算可得
而。這是譜方法的基礎。為了區分的基底以及正交的基底,有時會將上述擴展稱為有限基底表示(Finite Basis Representation、FBR)。
針對給定基底以及個基底函數,可以設法找到分割方式,也就是個點以及加權,使得
特別的例子包括多項式的高斯求積以及平面波的離散傅立葉變換,特別需注意的是格點及加權都是基底及數量的函數。
利用分割方式,可以透過格點上的值,以另一種方式來表示函數的數值。此表示法有時稱為離散變數表示法(Discrete Variable Representation、DVR),完全等效於基底的展開。
和函數的相乘會在格點上進行
一般來說這裡會有一些近似,可以計算其中一個係數:
利用譜方法,對應的係數會是。擬譜法則會用以下皂的近似來處理
若乘積可以用給定的有限基底函數組合來表現,則上式在給定分割方式上會完全正確。
若問題中有週期性的邊界條件,其週期為,基底函數可以用平面波來產生,
其中,而是取整函數。
在處截斷的分割為離散傅立葉轉換,格點會平均分佈,間隔為,各點的加權會是相同旳定值。
在討論誤差時,需注意到平面波的乘積也是平面波,,。因此,定量來說,若函數可以用基底函數足夠準確的呈現,只要用個基底函數,即可用擬譜法得到足夠準確的結果。
平面波的擴展一般效果較差,需要許多的基底函數才能收斂。不過。基底展開和格點表示的轉換可以用快速傅立葉轉換進行,其時間複雜度較低,為。因此,平面波是擬譜法中常用的一種基底函數。
另一種常見的展開方式是多項式,此處會使用高斯求積(Gaussian quadrature),其中提到可以找到加權係數及格點使得
對任意的次或是更低次的多項式都成立。一般而言,加權函數及範圍都是根據特定問題所選定的,因此會選擇幾種分割方式中的一種。若要用在擬譜法,需選擇基底函數為,其中為階多項式,有以下特性
在上述條件下,the 會是正交基底,其內積為。此基底以及分割點可以用在擬譜法中。
有關其誤差,若可以用個基底函數很好的呈現,而可以用階多項式很好的呈現,則其積可以用前個基底函數很好的呈現。且擬譜法用該數量的基底函數,會有足夠準確的結果。
在一些標準問題中,會出現這些多項式。例如量子簡諧振動子可以擴展為埃爾米特多項式,而在轉動問題中,會用雅可比多項式來定義相關的勒壤得多項式。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.