📄 mifa.m
字号:
% Created by colent 12/7% Copyright (C) 2007-2008 XMU 数值分析 Experiment. All rights% reserved.\nAuthors: 廖绮绮(ID:04120049).% 幕法function [ ] = Mifa()format long % 数据显示格式A = importdata('data_matrix.txt') % 用户输入矩阵u0 = importdata('data_u0.txt'); % 用户输入的初始迭代值u0 ,注意必须是行向量,否则出错!!!!u0 = u0' % 对用户输入的初始迭代值u0进行转置成列向量pause; % 等待用户输入 v0 = u0; % v0u0 = v0/max(v0); % u0 规范化向量 v1 = A * u0; % v1 maxCount = 10000; % 最大容许迭代次数,为了计算出精确值,因此设置得很大,相信Matlab可以处理得很好count = 0; % 显示迭代次数 for i = 0:maxCount % 最多迭代10000次 tmp = max(v1); % max(v1) u1 = v1 / tmp; % u1 v1 = A * u1; % v1 if ( abs(max(v1) - tmp )<eps*abs(max(v1))) % 两次的max(v1)若很相近,则说明已经得出特征值了 break; % 退出 end count = count +1; % 显示迭代次数 v1; % 显示v1 u1; % 显示u1 tmp; % 显示max(v1)endcount % 显示迭代次数lamda = tmp % 特征值vector = u1 % 特征向量
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -