【数值分析】用幂法计算矩阵的主特征值和对应的特征向量(附matlab代码)

简介: 【数值分析】用幂法计算矩阵的主特征值和对应的特征向量(附matlab代码)

题目


用幂法计算下列矩阵的按模最大特征值及对应的特征向量



幂法



代码


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 简介:用幂法计算矩阵的主特征值和对应的特征向量
% 作者:不雨_亦潇潇
% 文件:mifa.m
% 日期:20221109
% 博客:https://blog.csdn.net/weixin_43470383
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc; clear all;
% A = [7 3 -2; 3 4 -1; -2 -1 3];
A = [3 -4 3; -4 6 3; 3 3 1];
u =[1; 1; 1];
err = 10^(-4);
% 第一次迭代
k = 1;
m0 = 1;
V =A*u;
m = max(V);
u = V/m;
disp('k=')
disp(k)
disp('V^T=')
disp(V')
disp('m=')
disp(m)
disp('u^T=')
disp(u')
while abs(m0-m)>err
    m0 = m;
    k = k+1;
    V =A*u;
    m = max(V); % V绝对值最大的分量
    u = V/m; % 规范化向量  
    disp('k=')
    disp(k)
    disp('V^T=')
    disp(V')
    disp('m=')
    disp(m)
    disp('u^T=')
    disp(u')
end
lambda = m0 % 最终得到的主特征值
vector = u % 最终得到的特征向量



题目1输出结果


k=

1

V^T=

8 6 0

m=

8

u^T=

1.0000 0.7500 0

k=

2

V^T=

9.2500 6.0000 -2.7500

m=

9.2500

u^T=

1.0000 0.6486 -0.2973

k=

3

V^T=

9.5405 5.8919 -3.5405

m=

9.5405

u^T=

1.0000 0.6176 -0.3711

k=

4

V^T=

9.5949 5.8414 -3.7309

m=

9.5949

u^T=

1.0000 0.6088 -0.3888

k=

5

V^T=

9.6041 5.8240 -3.7753

m=

9.6041

u^T=

1.0000 0.6064 -0.3931

k=

6

V^T=

9.6054 5.8187 -3.7857

m=

9.6054

u^T=

1.0000 0.6058 -0.3941

k=

7

V^T=

9.6056 5.8172 -3.7881

m=

9.6056

u^T=

1.0000 0.6056 -0.3944

k=

8

V^T=

9.6056 5.8168 -3.7887

m=

9.6056

u^T=

1.0000 0.6056 -0.3944

lambda =

9.6056

vector =

1.0000

0.6056

-0.3944


题目2输出结果


k=

1

V^T=

2 5 7

m=

7

u^T=

0.2857 0.7143 1.0000

k=

2

V^T=

1.0000 6.1429 4.0000

m=

6.1429

u^T=

0.1628 1.0000 0.6512

k=

3

V^T=

-1.5581 7.3023 4.1395

m=

7.3023

u^T=

-0.2134 1.0000 0.5669

k=

4

V^T=

-2.9395 8.5541 2.9268

m=

8.5541

u^T=

-0.3436 1.0000 0.3421

k=

5

V^T=

-4.0045 8.4010 2.3112

m=

8.4010

u^T=

-0.4767 1.0000 0.2751

k=

6

V^T=

-4.6047 8.7320 1.8451

m=

8.7320

u^T=

-0.5273 1.0000 0.2113

k=

7

V^T=

-4.9481 8.7432 1.6293

m=

8.7432

u^T=

-0.5659 1.0000 0.1864

k=

8

V^T=

-5.1387 8.8228 1.4886

m=

8.8228

u^T=

-0.5824 1.0000 0.1687

k=

9

V^T=

-5.2412 8.8359 1.4214

m=

8.8359

u^T=

-0.5932 1.0000 0.1609

k=

10

V^T=

-5.2969 8.8553 1.3814

m=

8.8553

u^T=

-0.5982 1.0000 0.1560

k=

11

V^T=

-5.3265 8.8606 1.3615

m=

8.8606

u^T=

-0.6011 1.0000 0.1537

k=

12

V^T=

-5.3425 8.8655 1.3502

m=

8.8655

u^T=

-0.6026 1.0000 0.1523

k=

13

V^T=

-5.3509 8.8673 1.3445

m=

8.8673

u^T=

-0.6034 1.0000 0.1516

k=

14

V^T=

-5.3555 8.8686 1.3413

m=

8.8686

u^T=

-0.6039 1.0000 0.1512

k=

15

V^T=

-5.3579 8.8692 1.3396

m=

8.8692

u^T=

-0.6041 1.0000 0.1510

k=

16

V^T=

-5.3592 8.8695 1.3387

m=

8.8695

u^T=

-0.6042 1.0000 0.1509

k=

17

V^T=

-5.3599 8.8697 1.3383

m=

8.8697

u^T=

-0.6043 1.0000 0.1509

k=

18

V^T=

-5.3602 8.8698 1.3380

m=

8.8698

u^T=

-0.6043 1.0000 0.1509

lambda =

8.8697

vector =

-0.6043

1.0000

0.1509

相关文章
|
3天前
|
机器学习/深度学习 算法
基于鲸鱼优化的knn分类特征选择算法matlab仿真
**基于WOA的KNN特征选择算法摘要** 该研究提出了一种融合鲸鱼优化算法(WOA)与K近邻(KNN)分类器的特征选择方法,旨在提升KNN的分类精度。在MATLAB2022a中实现,WOA负责优化特征子集,通过模拟鲸鱼捕食行为的螺旋式和包围策略搜索最佳特征。KNN则用于评估特征子集的性能。算法流程包括WOA参数初始化、特征二进制编码、适应度函数定义(以分类准确率为基准)、WOA迭代搜索及最优解输出。该方法有效地结合了启发式搜索与机器学习,优化特征选择,提高分类性能。
|
4天前
|
传感器 算法
ANC主动降噪理论及Matlab代码实现
ANC主动降噪理论及Matlab代码实现
|
14天前
|
存储 算法 计算机视觉
m基于FPGA的FIR低通滤波器实现和FPGA频谱分析,包含testbench和滤波器系数MATLAB计算程序
在Vivado 2019.2平台上开发的系统,展示了数字低通滤波器和频谱分析的FPGA实现。仿真结果显示滤波效果良好,与MATLAB仿真结果一致。设计基于FPGA的FIR滤波器,利用并行处理和流水线技术提高效率。频谱分析通过离散傅里叶变换实现。提供了Verilog核心程序以示例模块工作原理。
15 4
|
18天前
|
算法
m基于PSO粒子群优化的LDPC码NMS译码算法最优归一化参数计算和误码率matlab仿真
MATLAB2022a仿真实现了基于遗传优化的NMS LDPC译码算法,优化归一化参数以提升纠错性能。NMS算法通过迭代处理低密度校验码,而PSO算法用于寻找最佳归一化因子。程序包含粒子群优化的迭代过程,根据误码率评估性能并更新解码参数。最终,展示了迭代次数与优化过程的关系,并绘制了SNR与误码率曲线。
20 2
|
5天前
|
算法
基于蝗虫优化的KNN分类特征选择算法的matlab仿真
摘要: - 功能:使用蝗虫优化算法增强KNN分类器的特征选择,提高分类准确性 - 软件版本:MATLAB2022a - 核心算法:通过GOA选择KNN的最优特征以改善性能 - 算法原理: - KNN基于最近邻原则进行分类 - 特征选择能去除冗余,提高效率 - GOA模仿蝗虫行为寻找最佳特征子集,以最大化KNN的验证集准确率 - 运行流程:初始化、评估、更新,直到达到停止标准,输出最佳特征组合
|
15天前
|
算法
m基于PSO粒子群优化的LDPC码OMS译码算法最优偏移参数计算和误码率matlab仿真
MATLAB2022a仿真实现了Offset Min-Sum (OMS)译码算法与粒子群优化(PSO)结合,以优化偏移参数,提升LDPC码解码性能。PSO通过迭代寻找最小化误码率(BER)的最佳偏移量。核心程序运用PSO进行参数更新和适应度函数(BER)评估,最终在不同信噪比下展示OMS解码性能,并保存结果。
21 0
|
1月前
|
资源调度 算法 块存储
m基于遗传优化的LDPC码OMS译码算法最优偏移参数计算和误码率matlab仿真
MATLAB2022a仿真实现了遗传优化的LDPC码OSD译码算法,通过自动搜索最佳偏移参数ΔΔ以提升纠错性能。该算法结合了低密度奇偶校验码和有序统计译码理论,利用遗传算法进行全局优化,避免手动调整,提高译码效率。核心程序包括编码、调制、AWGN信道模拟及软输入软输出译码等步骤,通过仿真曲线展示了不同SNR下的误码率性能。
30 1
|
1月前
|
算法 Serverless
m基于遗传优化的LDPC码NMS译码算法最优归一化参数计算和误码率matlab仿真
MATLAB 2022a仿真实现了遗传优化的归一化最小和(NMS)译码算法,应用于低密度奇偶校验(LDPC)码。结果显示了遗传优化的迭代过程和误码率对比。遗传算法通过选择、交叉和变异操作寻找最佳归一化因子,以提升NMS译码性能。核心程序包括迭代优化、目标函数计算及性能绘图。最终,展示了SNR与误码率的关系,并保存了关键数据。
26 1
|
1月前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
1月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度

热门文章

最新文章