我们先看看《数值计算方法》这本书上关于古典雅可比方法的例题:

%author FoddcusL  FAFU
%The Jacobi For root%输入:目标矩阵(input);目标接近的特征值(charnum)、迭代上限(aimnum)、目标误差(errorS)
%输出:目标特征值(output);xform、zfrom,包含x、z特征向量的值。%input输入矩阵,包括系数和参数
%inputC 用于分解LU矩阵的合成矩阵
%oringinData保留的初始矩阵
%output 输出答案,对应X的各个值
%Toutput:修正顺序后的答案,对应输入数据的X顺序
%rememberdet:行列变化中介值
%remember:行列变化记录矩阵
%xnum,ynum 输入矩阵的尺寸
%Lneed 消元中,主式需要乘的变量
%keepnum 保留小数位数%clear all%启用模块化后需要注释该句input=[2,-1,0;-1,2,-1;0,-1,2];%输入矩阵
errorS=10^(-20);%%
oringinData=input;
error1='the condition are not meet for using this algorithm' ;
keepnum=-10;%设置保留n位小数,记得加负号表示小数位
[ynum,xnum]=size(input);%获取输入矩阵大小
if ynum~=xnumdisp(error1)
end
dealdet=input;
knum=1000;
R3det=[];
ddet=[];
%%
for k=1:knum%迭代次数knum%挑选i值和j值absfator=0;id=0;jd=0;for i=1:xnumfor j=1:ynumif i~=jif absfator<roundn(abs(dealdet(j,i)),keepnum)absfator=abs(dealdet(j,i));id=i;%++列jd=j;%++行endendendend%计算旋转矩阵a=(dealdet(jd,jd)-dealdet(id,id))/(2*dealdet(jd,id));fiv=acot(a)/2;b=tan(fiv);c=cos(fiv);d=sin(fiv);%V值 V=eye(ynum);V(id,id)=c;V(jd,jd)=c;V(id,jd)=-d;V(jd,id)=d;V3det(:,:,k)=V;%计算新矩阵dealdet=V*dealdet*(V');R3det(:,:,k)=dealdet;ddet(k,1)=jd;ddet(k,2)=id;%计算误差errorN=0;for i=1:xnumfor j=1:ynumif i~=jerrorN=errorN+dealdet(i,j)^2;endendenderrorf(k,1)=errorN;if errorN<errorSbreakendend
Vedet=V3det(:,:,1);
for i=1:k-1Vedet=Vedet*V3det(:,:,k+1-i);
endfor i=1:ynumdisp(["特征向量",num2str(i)]);Vedet(:,i)numX(i,1)=R3det(i,i,k);
end
numend=sort(numX(:));
for i=1:ynumdisp(["特征值",num2str(i),num2str(numend(4-i))]);
end[V,D]=eig(oringinData);

得出结果:

但需要注意的是:古典雅可比方法对于对称矩阵有较好的效果,但是如果矩阵对角线上有元素为0的话,表现的效果则就不好了。

matlab 用古典雅可比方法求矩阵特征根 (仅使用基础函数)相关推荐

  1. [NA]Lab5:反幂法求矩阵特征根

    任务概述 给定一个n*n矩阵A以及A的某一个特征根的近似值p,从一个给定向量 x⃗ (0) {\vec{x}}^{(0)}出发,求该特征根的高精度近似值,并且求出其对应的无穷范数下的单位特征向量. 函 ...

  2. 雅可比算法求矩阵特征值C语言源代码,雅可比(Jacobi)计算特征值和特征向量

    雅可比迭代法法 在图形图像中不少地方用到求矩阵的特征值和特征向量,好比主成分分析.OBB包围盒等.编程时通常都是用数值分析的方法来计算,这里介绍一下雅可比迭代法求解特征值和特征向量.雅可比迭代法的原理 ...

  3. 系统稳定性(基于matlab求传递函数特征根)

    本文包含以下内容: 一.系统稳定性概念 二.系统稳定性判断 一.系统稳定性概念 系统加入扰动后偏离了原来的状态,当把干扰去掉后,系统如果能恢复到原来的状态,则说明系统稳定. 二.系统稳定性判断 脉冲信 ...

  4. 利用雅可比方法求线性方程组C语言_优化方法(一)

    1. 梯度下降法(Gradient Descent) 针对无约束最优化问题,梯度下降法是常用的最优化方法之一,其法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解. 梯度下降法的优化思想是用当前 ...

  5. 利用雅可比方法求线性方程组C语言_无基准轮廓度的测量与计算方法

    精彩不容错过 尺寸链计算及公差分析案例免费咨询,点击下方链接报名!https://mp.weixin.qq.com/s/Th35HGmJAol0NGnK03jxOQ 重庆诚智鹏2020年度尺寸链计算及 ...

  6. 利用雅可比方法求线性方程组C语言_工程项目经济评价的基本方法

    投资项目评价的经济指标一般可以分作三大类:第一类是以时间单位计量的时间型指标,如投资回收期:第二类是以货币单位计量的价值型指标,如净现值.净年值.费用现值.费用年值等:第三类是反映资金利用效率的效率型 ...

  7. matlab中数据归一化方法,矩阵归一化

    matlab中数据一行归一化 默认的map范围是[-1, 1],所以如果需要[0, 1],则按这样的格式提供参数 Data1 = mapminmax(lData, 0, 1); 矩阵归一化 data= ...

  8. 利用雅可比方法求线性方程组C语言_【新说】深度学习融入博弈论的方法居然会迸发出这些新思路!...

    随着人工智能的发展,博弈论迎来了复兴.关于博弈论,数据科学家需要了解哪些经典思想和新思路呢?本文作者就这些问题一一展开了分析.通过此文,相信读者会对博弈论的概念和分类有更清晰的理解. 博弈论是最让人着 ...

  9. python求雅可比矩阵_雅可比算法求矩阵的特征值和特征向量

    目的 求一个实对称矩阵的所有特征值和特征向量. 前置知识 对于一个实对称矩阵\(A\),必存在对角阵\(D\)和正交阵\(U\)满足$$D=U^TAU$$\(D\)的对角线元素为\(A\)的特征值,\ ...

最新文章

  1. Android应用开发提高篇(4)-----Socket编程(多线程、双向通信)(转载)
  2. Python 2 中文乱码解决方案:
  3. 看了这一篇,就不用看别的——Java中Object关于锁的的三个方法:wait,notify,notifyAll的作用
  4. 4行代码AC——L1-038 新世界 (5分)
  5. SAP Fiori issue排查:why search by ID does not work
  6. mete30是鸿蒙系统么,华为mete30pro什么时候能用上鸿蒙系统?
  7. 2020广西师范大学计算机学院调剂,2020广西师范大学计算机视觉与应用接收考研调剂...
  8. ebs开发入门 oracle 知乎_微信小程序云开发入门第一篇---开发准备事项
  9. GraphQL 技术浅析
  10. 营销理论模型:4P、STP理论、SWOT图解
  11. 【综述】方面级情感分析 Aspect-level Sentiment Classification
  12. clk_get_rate函数
  13. 如何查看网站的访问量?查看访问量的二个主要方法【站长之家的SEO综合查询工具】
  14. c语言中常用英语词汇,C语言常见英语词汇
  15. 我把跨境电商当副业 ,一周赚了7000块:想给有梦想的人提个醒 !
  16. ArcGIS教程:区域填充
  17. EIGRP协议(NA、NP知识点)
  18. 百度地图API获取某个行政区
  19. 短跑运动员求一个记时小程序
  20. 2018hdu个人排位赛:涮羊肉

热门文章

  1. css3倾斜的平行四边形,CSS3技巧之形状(平行四边形)
  2. 时间窗口(Time Windows)的原理和使用
  3. Python爬虫系列之MeiTuan优选商家端商品自动化管理(商品发布、商品排期、订单采集)
  4. 网易考拉规则引擎平台架构设计与实践
  5. Clickhouse(5)---Clickhouse语法
  6. python基础_面向对象进阶
  7. leetcode377组合总和 ⅣC++
  8. 程序员的核心竞争力分享
  9. AndroidX TabLayout使用、扩展及解析All In One,跪了
  10. python做乘法运算定律_四年级乘法运算定律-