標題: | 以Jacobi-Davidson 及平移-反逆殘量Arnoldi 方 法求解廣義特徴值問題的MATLAB 軟件包 MATLAB package of Jacobi-Davidson and Shift-Invert Residual Arnoldi methods for eigenvalue problem computations |
作者: | 張瓊文 林文偉 Chang, Chiung-Wen Lin, Wen-Wei 應用數學系所 |
關鍵字: | Jacobi-Davidson 方法;平移-反逆殘量Arnoldi 方法;Jacobi-Davidson method;Shift and Invert Residual Arnoldi method. |
公開日期: | 2017 |
摘要: | 對於大型特徵值問題中,想要求出特定區域的特徵值,我們需要
求解線性系統。而不精準Jacobi-Davidson 及不精準平移-反逆殘量
Arnoldi 方法可以降低內迭代的線性系統精度,計算出所需要的特徵
對,因為兩種迭代法在演算法中只有修正方程不同,所以我們整合兩
個迭代法,並使用MATLAB 語言撰寫程式。此程式除了可用來解決
標準特徵值外,我們也增加解決多項式特徵值問題以及解決非線性特
徵值問題的功能,另外也增加了Harmonic Rayleigh-Ritz 方法的功能
提供給使用者。在本文的數值實驗中,我們針對了一般大型矩陣、多
項式特徵值問題以及非線性特徵值問題進行測試,並記錄程式的收斂
情形。當求解馬克斯威爾方程組在特定光子晶體所對應的矩陣特徵值
問題時,存在許多問題使得程式可能不穩定,我們根據數值結果與觀
察,通過調整適當的參數以及在程式中增加一些策略,使程式能夠更
有效率的解出想要求的特徵值。 For the large and sparse eigenvalue problems, we usually want to find the eigenvalues in a specific region. Since we need to solve the linear system at each step, we use the inexactly Jacobi-Davidson method or the inexactly Shift and Invert Residual Arnoldi method which can reduce the accuracy of the linear systems and compute the eigenpairs which we want. Notice that the only difference between the algorithms of the Jacobi-Davidson and the shift and invert residual Arnoldi methods is the correction equations, so we combine these two methods by adjusting the correction equations to construct a program JDSIRA with MATLAB. In addition to solving the standard eigenvalue problem, this program can also solve polynomial eigenvalue problem and nonlinear eigenvalue problem. Moreover, we also develop the function of harmonic Rayleigh-Ritz method which can be used to solve the approximate eigenpairs. In the numerical experiment, we test the large and sparse matrices, some polynomial eigenvalue problems, and some nonlinear eigenvalue problems and also record the convergence processes of the program. In addition, when we test the eigenvalue problem of the Maxwell equations in the specific photonic crystal, there are some problems to make the program become unstable. Based on the numerical results, we can adjust the appropriate parameters and add some strategies in the program so that the program can solve the desired eigenvalues more efficiently. |
URI: | http://etd.lib.nctu.edu.tw/cdrfb3/record/nctu/#GT070352222 http://hdl.handle.net/11536/140551 |
顯示於類別: | 畢業論文 |