matlab程序的幂法,数值分析课程设计+幂法与反幂法MATLAB
數值分析課程設計+冪法與反冪法MATLAB
1一、問題的描述及算法設計(一)問題的描述本次課程設計我所要做的課題是對稱矩陣的條件數的求解設計1、求矩陣 A 的二條件數問題 A 2102、設計內容1)采用冪法求出 A 的 .2)采用反冪法求出 A 的 .3)計算 A 的條件數 A 2* A 2A) / .(精度要求為10、設計要求1)求出A 2。2)并進行一定的理論分析。(二)算法設計1、冪法算法(1)取初始向量 u (例如取 u 1,1,1 ),置精度要求 ,置 k1. 0 0T(2)計算v m v , u v / mk1kkkk(3)若| m m || || |12m v , u v / m (1)kkkkv 表示向量 v 絕對值的最大分量。于冪法的定理按式(1)計算出 m 和 u 滿足k , u )反冪法算法的理論依據及推導反冪法是用來計算絕對值最小的特征值忽然相應的特征向量的方法。是對冪法的修改,可以給出更快的收斂性。1、反冪法的迭代格式與收斂性質設 A 是非奇異矩陣,則零不是特征值,并設特征值為| || || || |121n 的特征值絕對值的大小排序,有1| || 1n|| |1對 A 實行冪法,就可得 A 的絕對值最大的特征值 1/ 和相應的特征向量,1 n即 A 的絕對值最小的特征值和相應的特征向量。由于用 A 代替 A 作冪法計算,因此該方法稱為反冪法,反冪法的迭代格16式為 v A u ,m v , u v / m (2)kkk于反冪法的定理按式(2)計算出的 m 和 u 滿足k , u liax)中,需要用到 A ,這給計算帶來很大的不方便,因此,把( 2)式1的第一式改為求解線性方程組 A v u (3)k1但由于在反冪法中,每一步迭代都需求解線性方程組(3)式,迭代做了大量的重復計算,為了節省工作量,可事先把矩陣 A 作 解,即 A)改為u ,yk1k四、相關的數值結果(一)冪法程序的運行結果m u )反冪法程序的運行結果m u )矩陣 A 的二條件數的結果A 2* A 2)m/ m 值計算結果的分析求 n 階方陣 A 的特征值和特征向量,是實際計算中常常碰到的問題。對于n 階矩陣 A,若存在數 和 n 維向量 x 滿足x (1)則稱 為矩陣 A 的特征值,x 為相應的特征向量。由線性代數知識可知,特征值是代數方程| a a a 0 (2)n表面上看,矩陣特征值與特征向量的求解問題似乎很簡單,只需求解方程(2)的根,就能得到特征值 ,再解齊次方程組( x0 (3)的解,就可得到相應的特征向量。上述方法對于 n 很小時是可以的。但當 n 稍大時,計算工作量將以驚人的速度增大,并且由于計算帶有誤差,方程(2)未必是精確的特征方程,自然就不必說求解方程(2)與(3)的困難了。本次實驗所用的冪法和反冪法分別是求解最大特征值和最小特征值,并根據它們的結果求解二條件數。冪法和反冪法的 序很好的解決了手算時所會遇到的麻煩。通過實驗我們可以看到,冪法程序可以用來計算矩陣絕對值最大的特征值及相應的特征向量。冪法的缺點是開始的時候并不知道矩陣是否有單一的主特征值。也不知道如何選擇 x 以保證它關于矩陣特征向量的表達中包含一個與主0特征值相關的非零特征向量。反冪法程序可以用來計算矩陣絕對值最小的特征值及相應的特征向量,反冪法的收斂是線性的,它是對冪法的修改,可以給出更快的收斂性。8六、附件一 冪法程序/*冪法程序,函數名m,u,,A 為矩陣;精度要求;N 為最大迭代次數;m 為絕對值最大的特征值;100;n;un,1;;k0;
總結
以上是生活随笔為你收集整理的matlab程序的幂法,数值分析课程设计+幂法与反幂法MATLAB的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab氢原子杂化轨道,网络版原子和
- 下一篇: matlab人脸追踪,求大神帮助我这个菜