矩陣的特征值和特征向量二次型.ppt
實驗三,矩陣的特征值和特征向量二次型,實驗目的,1、學會用MATLAB軟件求矩陣的特征值和特征向量,2、學會用MATLAB軟件將二次型化為標準型,3、通過用MATLAB軟件編程來判斷二次型的正定性,一、特征值與特征向量,其中:D為由特征值構成的對角陣,V為由特征向量作為列向量構成的矩陣。且使AV=VD成立,用Matlab計算特征值和特征向量的命令如下:,d=eig(A),僅計算A的特征值(以向量形式d存放),V,D=eig(A),trace(A),計算矩陣A的跡,例1:求方陣,的特征值、特征向量和跡,解:,>>A=22-2;25-4;-2-45;,>>VD=eig(A),>>trace(A),V=-0.29810.89440.3333-0.5963-0.44720.6667-0.74540-0.6667,D=1.00000001.000000010.0000,>>trace(A)ans=12,答:,特征值為:,例2:求方陣,的特征值、特征向量和跡,解:,>>A=460;-3-50;-3-61;,>>VD=eig(A),>>trace(A),二、矩陣的相似對角化,例3:判斷下列方陣是否可對角化。若可對角化,求出可逆陣P,使P-1AP為對角陣。,解(1):,>>A=460;-3-50;-3-61;,>>VD=eig(A),>>rank(V),ans=3,答:A可對角化,且,V=00.5774-0.89440-0.57740.44721.0000-0.57740,D=1000-20001,>>A=010;-120;-111;,>>VD=eig(A),>>rank(V),ans=2,答:A不可對角化。,解(2):,V=00.63250.451100.63250.45111.00000.44720.7701,D=100010001,下述函數(shù)可用來判斷矩陣是否可對角化,若可對角化返回1,否則返回0。,functiony=trigle(A)%可對角化返回1,否則返回0。y=1;c=size(A);ifc(1)=c(2)y=0;return;ende=eig(A);n=length(A);while1ifisempty(e),return;endd=e(1);f=sum(abs(e-d)<10*eps);g=n-rank(A-d*eye(n);iff=gy=0;return;ende(find(abs(e-d)<10*eps)=;end,functiony=trigle(A)%可對角化返回1,否則返回0。y=1;c=size(A);ifc(1)=c(2)y=0;returnende=eig(A);n=length(A);while1ifisempty(e)%若為空陣則為真,return;endd=e(1);f=sum(abs(e-d)<10*eps);%特征值d的代數(shù)重數(shù)g=n-rank(A-d*eye(n);%特征值d的幾何重數(shù)iff=gy=0;return;ende(find(abs(e-d)>A=4-312;5-854;6-1285;1-322,>>trigle(A),ans=0,>>A=1111;1111;1111;1111;,>>trigle(A),ans=1,答:A不可對角化。,>>PD=eig(A),解(2):,答:A可對角化,且,P=-0.50000.21130.28870.78870.50000.7887-0.28870.21130.5000-0.5774-0.28870.57740.500000.86600,D=-2.000000002.000000002.000000002.0000,二、二次型化標準型,例5:判斷下列矩陣是否對稱,A=1346;3795;4941;6510;B=A;if(A=B)fprintf(A是對稱矩陣)elseif(A=-B)fprintf(A是反對稱矩陣)elsefprintf(A既不是對稱矩陣,也不是反對稱矩陣)endend,A是對稱矩陣,解:,Matlab中二次型化成標準形的命令為:,P,T=schur(A),其中:A二次型矩陣(即實對稱矩陣);T為A的特征值所構成的對角形矩陣;P為T對應的正交變換的正交矩陣,P的列向量為A的特征值所對應的特征向量,P,T=eig(A),例6:求一個正交變換,將二次型,解:該二次型所對應的矩陣為,化成標準形,>>A=1101;1110;0111;-1011;,>>P,T=schur(A),P=-0.50000.70710.00000.50000.5000-0.00000.70710.50000.50000.70710.0000-0.5000-0.500000.7071-0.5000,P,T=eig(A),T=-1.000000001.000000001.000000003.0000,答:所作的正交變換為:,二次型的標準型為:,例7:求一個正交變換,將二次型,解:該二次型所對應的矩陣為,化成標準形,>>A=422;-211/2;21/21;,>>P,T=schur(A),P=0.5458-0.00000.83790.59250.7071-0.3859-0.59250.70710.3859,T=-0.34230000.50000005.8423,答:所作的正交變換為:,二次型的標準型為:,三、正定二次型的判定,1.順序主子式判斷法,求二次型F=XAX的矩陣A的各階順序主子式Di(i=1,2,3.);,判斷Di是否大于0.,程序:建立函數(shù)文件shxu.m,functionC,M=shxu(A)%C為A的各階順序主子式組成的向量%M為判定向量:ifC(i)>0,thenM(i)=1;%othersM(i)=0n=size(A);C=;M=;fori=1:n(1)A1=A(1:i,1:i);D=det(A1);,C=CD;ifD>0m=1;elsem=0;endM=M,m;end,2、特征值判別法,求二次型f=XAX的矩陣A的全部特征值(i=1,2,);,判斷是否大于0.,程序:建立函數(shù)文件tezh.m,functionT,M=tezh(A)n=size(A);T=(eig(A);M=;fori=1:n(1)ifT(i)>0m=1;elsem=0;endM=M,m;end,例8判定下列二次型是否正定,解二次型矩陣,方法一順序主子式,>>A=1121;-1303;2096;13619;>>C,M=shxu(A),答:此二次型是正定的。,C=12624M=1111,方法二特征值法,T=0.06432.24217.494522.1991M=1111,>>A=1121;-1303;2096;13619>>T,M=tezh(A),答:此二次型是正定的。,例9判定下列二次型是否正定,解二次型矩陣,方法一順序主子式,>>A=9624;-613030;243071;>>C,M=shxu(A),答:此二次型是正定的。,C=911346174M=111,方法二特征值法,T=0.657665.0894144.2530M=111,>>A=9624;-613030;243071;>>T,M=tezh(A);,答:此二次型是正定的。,例10判定下列二次型是否正定,解二次型矩陣,方法一順序主子式,>>A=10412;4214;12141;>>C,M=shxu(A),答:此二次型不是正定的。,C=104-3588M=110,方法二特征值法,T=-17.420910.170820.2501M=011,>>A=10412;4214;12141;>>T,M=tezh(A),答:此二次型不是正定的。,functionC,M=shxuf(A)%C為A的各階順序主子式組成的向量%M為判定向量:ifC(i)>0,thenM(i)=1;ifC(i)0m=1;elseifD<0m=-1;elsem=0;endM=M,m;end,functionT,M=tezhf(A)n=size(A);T=(eig(A);M=;fori=1:n(1)ifT(i)0m=1;elseifT(i)>A=-1121;1303;-2096;-136-19;>>C,M=shxuf(A),答:此二次型是負定的。,C=-12-624M=-11-11,方法二特征值法,T=-22.1991-7.4945-2.2421-0.0643M=-1-1-1-1,>>A=-1121;1303;-2096;-136-19;>>T,M=tezhf(A),答:此二次型是負定的。,1、已知矩陣,(1)求矩陣A的特征值;,(2)求矩陣A的特征值對應的全部特征向量.,習題,2判斷下列方陣是否可對角化,若可對角化,求出可逆陣P,使P-1AP為對角陣。,3、已知二次型f=x1x2+x2x3+x3x4+x4x1(1)寫出二次型矩陣A;(2)用正交變換將二次型化為標準形,并寫出所作的正交變換;,5、判別下列二次型是否為負定二次型(用兩種方法求,寫出程序),4、判別下列二次型是否為正定二次型(用兩種方法求,寫出程序),