8.m

来自「matlab的基础应用,主要是基础部芬的学习笔记,大家看看有没有用!」· M 代码 · 共 31 行

M
31
字号
11.3.2	由M文件创建外部应用程序的入门算例
【例11.3.2-1】建立一个脱离MATLAB环境,可独立运行的外部程序。该程序的功能是:对于给定矩阵A,如果存在S使得S-1AS=Λ,则要求出一个S,否则给出信息说明所给的矩阵A不能对角化。
(1)
[exm2.m]
function exm2
A=[4,0,0;0,3,1;0,1,3];
S=exm2_f(A)

[exm2_f.m]
function S=exm2_f(A)
[m,n]=size(A);
if m~=n
	error('输入矩阵应是方阵!');
end;
e=eig(A);
%
same=0;
for i=1:m-1
   for j=(i+1):m
      if e(j)==e(i)
         same=1;
      end
   end
end
%
if any(any((A'-A)))&(same==1)
   error('矩阵无法对角化!');
end
[v,d]=eig(A);
S=v;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?