06.08.2013 Views

内容简介作者简介 - 科学与工程计算系

内容简介作者简介 - 科学与工程计算系

内容简介作者简介 - 科学与工程计算系

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

11.3.2 由 M 文件创建外部应用程序的入门算例<br />

【例 11.3.2-1】建立一个脱离 MATLAB 环境,可独立运行的外部程序。该程序的功能是:<br />

对于给定矩阵 A,如果存在 S 使得 S -1 AS=Λ,则要求出一个 S,否则给出信息说明所给的矩<br />

阵 A 不能对角化。<br />

(1)<br />

[exm2.m]<br />

function exm2<br />

A=[4,0,0;0,3,1;0,1,3];<br />

S=exm2_f(A)<br />

[exm2_f.m]<br />

function S=exm2_f(A)<br />

[m,n]=size(A);<br />

if m~=n<br />

error('输入矩阵应是方阵!');<br />

end;<br />

e=eig(A);<br />

%<br />

same=0;<br />

for i=1:m-1<br />

for j=(i+1):m<br />

if e(j)==e(i)<br />

same=1;<br />

end<br />

end<br />

end<br />

%<br />

if any(any((A'-A)))&(same==1)<br />

error('矩阵无法对角化!');<br />

end<br />

[v,d]=eig(A);<br />

S=v;<br />

(2)<br />

exm2<br />

S =<br />

0 0 1.0000<br />

-0.7071 0.7071 0<br />

0.7071 0.7071 0<br />

(3)<br />

mcc -m exm2 exm2_f<br />

(4)<br />

5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!