matlab 求特征值的命令,MATLAB自学笔记(九):稀疏矩阵、特征值与特征向量
稀疏矩阵
稀疏矩阵定义:含有大量0元素的矩阵
一个稀疏矩阵包括m*3项元素,其中m是原数组中非零项的个数。其第一列是行下标,第二列是列下标,第三列是非零项的值
储存一个浮点数需要8字节,一个下标值需要4字节,则储存整个矩阵需要16*m个字节
1.稀疏矩阵的存储方式
对于稀疏矩阵,MATLAB仅存储矩阵所有的非零元素的值及其位置
2.稀疏矩阵的生成
利用函数sparse(稀疏)建立一般的稀疏矩阵
sparse(A):由非零元素和下标生成稀疏矩阵A
sparse(m,n):生成一个m*n的所有元素都是0的稀疏矩阵
sparse(u,v,a):生成大小为max(u) * max(v)的稀疏矩阵。其中u和v是整数向量,a是实数或者是复数向量
sparse(u,v,a,m,n):生成一个m*n的稀疏矩阵,(u,v)是对应值a的坐标
spconvert(D):生成一个稀疏矩阵。D有三列,第一列是行下标,第二列是列下标,第三列是非零项的值
full(S):将稀疏矩阵S转换成一个满矩阵
Python
>> s = sparse([12,4,5,5,2],[1,4,5,2,6],[41,532,2,4,6],12,6)
s =
(12,1) 41
(5,2) 4
(4,4) 532
(5,5) 2
(2,6) 6
>> A = [1 0 0 0; 0 9 0 0; 4 0 8 0]
A =
1 0 0 0
0 9 0 0
4 0 8 0
>> S = sparse(A)
S =
(1,1) 1
(3,1) 4
(2,2) 9
(3,3) 8
>> A_1 = full(S)
A_1 =
1 0 0 0
0 9 0 0
4 0 8 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
>>s=sparse([12,4,5,5,2],[1,4,5,2,6],[41,532,2,4,6],12,6)
s=
(12,1)41
(5,2)4
(4,4)532
(5,5)2
(2,6)6
>>A=[1000;0900;4080]
A=
1000
0900
4080
>>S=sparse(A)
S=
(1,1)1
(3,1)4
(2,2)9
(3,3)8
>>A_1=full(S)
A_1=
1000
0900
4080
spy()函数可以对稀疏矩阵中的非零元素进行图形化显示,采用nnz(S)/prod(size(S))计算稀疏矩阵的非零元素密度
Python
spy(A)
1
spy(A)
利用特定函数建立稀疏矩阵
S = speye(m,n):创建单位稀疏矩阵
S = spones(X):创建非零元素为1的稀疏矩阵
S = sprand(X):创建非零元素为均匀分布的随机数稀疏矩阵
S = sprandn(X):创建非零元素为高斯分布的随机数稀疏矩阵
S = sprandsym(X):创建非零元素为高斯分布的随机数对称稀疏矩阵
S = spdiags(X):创建对角稀疏矩阵
S = spalloc(X):为稀疏矩阵分配空间
3.稀疏矩阵的运算
满矩阵的四则运算法则对稀疏矩阵同样有效,但是返回结果可能是稀疏矩阵或满矩阵。只要参与运算的任一矩阵为满矩阵,则返回结果为满矩阵
稀疏矩阵的数乘与幂计算结果都是稀疏矩阵
特征值与特征向量
1.特征值的定义
设 A 是n阶方阵,如果存在数m和非零n维列向量 x,使得 Ax=mx 成立,则称 m 是矩阵A的一个特征值(characteristic value)或本征值(eigenvalue)。
2.相关函数
eig(A):求包含矩阵A的特征值向量
[X,D] = eig(A):产生一个矩阵A的特征值在对角线上的对角矩阵D和矩阵X,他们的列是相应的特征向量,满足AX = XD。为了得到有更好条件特征值的矩阵,要进行相似变换
[T,B] = balance(A):找到一个相似变换矩阵T和矩阵B,使得他们满足B = T-A·T。B是用命令balance求得的平衡矩阵
eig(A,’nobalance’):不经过平衡处理求得的A的特征值和特征向量,也就会不进行平衡相似变换
eigs(A):返回一个由矩阵A的部分特征值组成的向量,和eig命令一样,但不是返回全部的特征值。 如果不带有参量,则计算出最大的特征值。当计算所有的特征值时,如果矩阵A的特征值不小于6,则计算出6个特征值
eigs(f,n):求出矩阵A的部分特征值。 在使用一个矩阵列的线性运算符时,字符串f中包含的是M文件的文件名,n指定问题的阶次。用这种方法来求特征值比开始就用运算符来求快得多
eigs(A,B,k,sigma):求矩阵A的部分特征值,矩阵B的大小与A相同;若没有给出B = eye(size(A)),那么k就是要计算的特征值得个数;若k没有给出就用小于6的数或者A的秩
condeig(A):返回一个由矩阵A的特征值条件数组成的向量
[V,D,s] = condeig(A):返回[V,D] = eig(A) 和 S = condeig(A)
赞赏作者
喜欢 (4)or分享 (0)
matlab 求特征值的命令,MATLAB自学笔记(九):稀疏矩阵、特征值与特征向量相关推荐
- matlab求高阶微分的命令,matlab求解高阶微分方程辅导
同学你好,我们可以辅导matlab高阶微分方程.关于matlab解决高阶微分方程的知识点如下,如果同学感觉还死有不明白的地方,可以直接联系我们,安排专业老师进行一对一授课讲解. 微分方程(Differ ...
- 程序阅读_全面详解LTE:MATLAB建模仿真与实现_自学笔记(1)调制与编码_程序阅读
程序阅读_全面详解LTE:MATLAB建模仿真与实现_自学笔记(1)调制与编码_程序阅读 在粗浅地掌握了LTE知识后,从今天开始对<全面详解LTE:MATLAB建模仿真与实现>一书的学习. ...
- matlab数值拟合r2_用MATLAB求RMSE怎么用MATLAB计算均方误差
用MATLAB求RMSE 怎么用MATLAB计算均方误差 www.zhiqu.org 时间: 2020-12-07 function f=RMSE(h1,h2) %RMSE return RM ...
- matlab 求n 的和,MATLAB求1的阶乘加到n的阶乘和 不要现有的函数,要自己编写出来的...
点击查看MATLAB求1的阶乘加到n的阶乘和 不要现有的函数,要自己编写出来的具体信息 答:myfactorial = @(n) factorial(n) myfactorial = @(n) pro ...
- 用matlab求微分方程系数,用Matlab软件求解微分方程的解析解和数值解.pdf
用Matlab软件求解微分方程的解析解和数值解.pdf Matlab软件求解微分方程 的解析解和数值解 数学与信息科学学院 孔祥庆 数学建模实验项目2 (1) 一.实验名称: Matlab软件求解微分 ...
- matlab求离散系统,离散系统的MATLAB的实现.doc
离散系统的MATLAB的实现 离散系统的MATLAB实现 一.设计目的 通过该设计,理解系统的单位抽样响应,频率响应及零极点增益的概念及意义. 课程设计环境 计算机.MATLAB软件 设计内容及其主要 ...
- matlab求微分方程同届,matlab求微分方程精确解及近似解.ppt
matlab求微分方程精确解及近似解 求微分方程的解 问题背景和实验目的 Euler 折线法 初值问题的Euler折线法 Euler 折线法举例 Euler 折线法源程序 Euler折线法举例(续) ...
- matlab中dist的命令,matlab dist函数
dist--欧式距离加权函数(Euclidean distance weight function) 语法: Z = dist(W,P) df = dist('deriv') D = dist(pos ...
- Matlab App Designer自学笔记(九):容器及图窗控件
一.容器 容器,顾名思义,就是装东西的.Matlab里的容器有面板和选项卡组两个(2018a版本). 1.1 卡组 选项卡组就是分栏使用,下图这个就是: 例如在画布里设置这么两个卡组(可以点击+增加) ...
- matlab求微分方程同届,Matlab学习——求解微分方程(组)
介绍: 1.在 Matlab 中,用大写字母 D 表示导数,Dy 表示 y 关于自变量的一阶导数,D2y 表示 y 关于自变量的二阶导数,依此类推.函数 dsolve 用来解决常微分方程(组)的求解问 ...
最新文章
- cad关闭图层的快捷命令是什么_CAD快捷命令汇总
- 12306订票候补是个坑_加30元就能抢到火车票?12306这个功能更靠谱!今起可买除夕火车票,抢票高峰来了...
- 升级鸿蒙系统的手机名单,倒计时2天!首批鸿蒙OS适配名单确定,你的手机在列吗?...
- 用CFree写的Windows SDK 画线程序
- Matlab如何绘制散点图矩阵,不同版本的散点图矩阵
- 如何验证本地磁盘或网络磁盘是否可以进行读写操作
- 研究partner determination的逻辑能否抽出来,以API的形式被我们Odata service implementation code里调用?
- 视频来了!Visual Studio Online 东半球首秀 @ .NET Conf 2019 中国峰会
- Windows平台RTMP推送摄像头对接介绍
- dbhelper的使用
- 百度自动驾驶出租车服务在北京开放:无需预约免费试乘
- 自旋锁--Test and Set Clock机制分析
- 计算机 蓝牙鼠标卡顿,蓝牙鼠标卡顿、漂移现象的解决方法
- HTML5“爱心鱼”游戏总结
- matlab 利用polyfitpolyval函数进行基线矫正【matlab程序】
- 儿童python入门书籍推荐_有哪些Python入门的书籍值得推荐?
- 华为2019算法大赛CTR预估数据探索
- ffmpeg获取音频信息
- USB调试时出现“because an app is obscuring a permission request settings cab't verify your resonse”问题
- 网页抓取及信息提取(三)