数值计算_特徵值与奇异值篇

上传人:第*** 文档编号:51235584 上传时间:2018-08-13 格式:PPT 页数:26 大小:2.30MB
返回 下载 相关 举报
数值计算_特徵值与奇异值篇_第1页
第1页 / 共26页
数值计算_特徵值与奇异值篇_第2页
第2页 / 共26页
数值计算_特徵值与奇异值篇_第3页
第3页 / 共26页
数值计算_特徵值与奇异值篇_第4页
第4页 / 共26页
数值计算_特徵值与奇异值篇_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《数值计算_特徵值与奇异值篇》由会员分享,可在线阅读,更多相关《数值计算_特徵值与奇异值篇(26页珍藏版)》请在金锄头文库上搜索。

1、教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值數值計算 特徵值與奇異值篇陳鴻智1教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 有關於本教材u數值計算是件很好玩的事,可以用很精簡的程式完成並且可以將它用圖形的方式展示出來。uMatlab可以讓我們作到。2教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 教材內容u數值計算介紹試圖告訴你數值計算是件很棒 的事3教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 為啥需要數值計算?u工程需求資料探索分析資料探索分析“透過觀察讓科學大幅進展”牛頓“數學就是要求嚴密、美感和結構”- 高斯牛頓高斯

2、 4教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值uGeorge Forsythe 於1960年代後期在 Stanford 大學開創了數值方法的課程 。uForsythe, Malcolm和 Moler合寫了一 本教材。u那時的課程都是以Fortran語言編寫 的程式庫為主。u為解決線性代數課程中矩陣運算 問題, Cleve Moler博士於1980年開 發出一套簡單易用的矩陣運算工具, Matlab於是誕生。MATLAB語言的發展Cleve Moler5教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 歷史故事Matlab(MATrix LABoratory)由

3、 Cleve Moler 研發將EISPACK 2,000條Fortran語法程式碼80 個函數 (現已超過 8000個函數 )u1979: 在史丹佛與 Jack Little 相遇,開始將源碼轉換成Cu1984: Mathworks 成立6教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 Matlab與Mathworks現況uMatlab, Simulink, Stateflowu Matlab 2009bu 各種領域的運用航太,國防, 電腦,通信, 測繪u Mathworks 公司u3,500 以上的大學使用,500,000以上的用戶,100以上國家使用u2008年收益: 3

4、億美元以上.u2008員工: 2,000人以上u 價錢: 2,000$ (商務版價), 100$ (學生版價)7教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 誰需要?u研發單位u老師實驗室軟體設備之一 Matlab 著重在演算法而不是程式語言探討u學生批次處理檔案u不必再需要另外學其他的語言!給你一個測試概念的好環境u把概念很快轉換成程式碼, 然後轉成 C或Java 等易懂的視覺圖8教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 應具備的課程知識u微積分u常微分方程u矩陣u計算機程式編寫經驗9教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 特徵

5、值與奇異值分解u起源:線性常微分系統。u由某個向量空間到自身的變換:Ax=x。u特徵值-特徵向量方程式(A-I)x=0,x0,det(A-I)=0。uAX=XA=XX-1(A矩陣的特徵值分解,可以通過分 析對角陣來研究A的性質,簡化研究的內容)uB=T-1AT (相似變換,A與B相似,可以保持特徵值不 變)u奇異值分解(SVD):A=UVH(:對角矩陣,UVH=I ,目的是長度與角度不變,轉換後不會放大誤差)振動頻率、穩定性參數的臨界 值、原子的能量的等級矩陣A的特徵方程(特 徵多項式)10教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 例子uA=gallery(3)u特徵值:

6、U,D=eig(A)u奇異值:U,S,V=svd(A)u請注意:特徵值與奇異值之間有重大區別u體驗:demoegishow11教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 對稱矩陣和Hermit矩陣u對稱矩陣:A=ATuHermit矩陣:A=AH(複數矩陣)u特點:一個非負特徵值0,奇異值=;對應的向量:u=v=x一個負特徵值 A=gallery(3);X,lambda=eig (A);condest(X)特徵值的擾動 是受矩陣A的 捨入誤差或其 他的擾動影響矩陣的 條件數13教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 左特徵向量14教材-應用MATLAB

7、於數值計算-特徵值與奇異值特徵值與奇異值 左特徵向量uMATLABcondeig A=gallery(3);lambda=egi(A);kappa=condeig(A)u給一個小小的隨機擾動,觀察一下特徵值發生的變化 format long delta = 1.e-6; lambda = eig(A + delta*randn(3,3) u特徵值所產生的擾動 lambda - (1:3)15教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 特殊情形-是一個多重特徵值時A=gallery(5) lambda=eig (A)ugallery(5)的矩陣對應的特徵方程應滿足5=0,試看

8、看計算的結果如何?u特徵值所的誤差是由擾動所造成的 A = gallery(5) e = eig(A) plot(real(e),imag(e),r*,0,0,ko) axis(.1*-1 1 -1 1) axis squareu擾動後的結果為 e = eig(A + eps*randn(5,5).*A)u計算出來的特徵值實際上是矩陣A+E的準確特徵值,其中E的元素和A的元素相比,在捨入誤差的量級上。16教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 奇異值的敏感度和精度 A = gallery(5) format long e svd(A)1.010353607103610e

9、+005最大奇異值(比A最大元素93365大一些)1.679457384066496e+0001.462838728086172e+000 接近100的奇異值1.080169069985612e+0004.988578262459575e-014 最小奇異值(接近機器的誤差值,介於和|A|之 間) while 1 clc svd(A+eps*randn(5,5).*A) pause(.25) endu試與之前的結果作一比較,看看變化情形如何。17教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 約當型和舒爾型u緣由:特徵值分解有兩個困難 理論上:這種分解並非總是存在。儘可能找到對

10、角陣替代(JCF,約當型) 數值上:即使存在它也不可能為robust的計算提供基礎。用三角陣替代對角陣 並且使用正交變換或酉變換(舒爾型) A = gallery(3) T,B = schur(A) A =-149 -50 -154537 180 546-27 -9 -25 T =0.3162 -0.6529 0.6882-0.9487 -0.2176 0.22940.0000 0.7255 0.6882 B = 對角線元素就是A矩陣的特徵值1.0000 -7.1119 -815.87060 2.0000 -55.02360 0 3.000018教材-應用MATLAB於數值計算-特徵值與奇異值

11、特徵值與奇異值 QR算法u功用:計算實對稱矩陣的特徵值實非對稱矩陣、複矩陣和一般矩陣的奇異值求多項式的根求解特殊的線性系統考察穩定性 求解特徵值的例子(當對角線以下緊臨元素已為0,即已得到特徵值此時應縮 小問題規模並繼續迭代左上角的子陣以求出下一個特徵值) clear all;clc A=gallery(3) for i=1:20 i n = size(A,1); I = eye(n,n); s = A(n,n); Q,R = qr(A - s*I); A = R*Q + s*I end19教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 主分量u透過求特徵值,將特大的特徵值留下

12、,較小的則剃除( 研究影響力較大就行了)u理論:Amn簡化為SVD A=UVT,即A=E1+E2+EpEp=kukvkT,EjEkT=0,jk,| Ek|=k每個分量矩陣Ek在重建矩陣A時所起的作用由奇異值k決 定u應用:分類、影像壓縮(不失真下又能保有原來影像) 、多變量分析(K. Peason所創)20教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 圓生成器-特徵值應用例u用加法畫圓:xn+1=xn+hyn xn+1=xn+hyn yn+1=yn-hxn+1 yn+1=hxn-(1-h2)yn21教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值u寫成矩陣AX=

13、XA=XX-1 An=XnX-1 u如果特徵向量矩陣非奇異並且特徵值k滿足|k|1,則An是有界 的 u測試:h = 2*rand, A = 1 h; -h 1-h2, lambda = eig(A), abs(lambda) u用符號工具:syms h A = 1 h; -h 1-h2 lambda = eig(A) d = simple(prod(lambda)或d=det(A)22教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值u寫成矩陣AX=XA=XX-1 An=XnX-1 u如果特徵向量矩鎮非奇異並且特徵值k滿足|k|1,則An是有界 的 u測試:h = 2*rand,

14、 A = 1 h; -h 1-h2, lambda = eig(A), abs(lambda) u用符號工具:syms h A = 1 h; -h 1-h2 lambda = eig(A) d = simple(prod(lambda)或d=det(A)23教材-應用MATLAB於數值計算-特徵值與奇異值特徵值與奇異值 進一步閱讀uJ. Wilkinson, The Algebraic Eigenvalue Problem, Clarendon Press, Oxford,1965. uR. B. Lehoucq, D. C. Sorensen, and C. Yang, ARPACK Use

15、rs Guide:Solution of Large-Scale Eigenvalue Problems with Implicitly Restarted ArnoldiMethods, SIAM, 1998, 160 pages. http:/www.caam.rice.edu/software/ARPACK uBio Motion Lab, Ruhr University, http:/www.bml.psy.ruhr-uni- bochum.de/Demos/BMLwalker.html uNikolaus Troje, http:/journalofvision.org/2/5/2 uNikolaus Troje, http:/www.biomotionlab.de/Text/WDP2002_Troje.pdf uE. Anderson, Z. Bai, C. Bisch

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号