Matlab_day_11

稀疏矩阵
指零元素的个数远远多于非零元素的个数的矩阵
矩阵的存储方式
完全存储方式:将矩阵的所有元素按列存储
稀疏存储方式:只存储矩阵的非零元素的值及其位置即行号和列号
两种存储方式的转化:
A=sparse(S):将矩阵S转化为稀疏存储方式的矩阵A
S=full(A):将矩阵A转化为完全存储方式的矩阵S
直接建立稀疏存储矩阵
sparse函数的其他调用格式
sparse(m,n):生成一个mxn的所有元素均为零的稀疏矩阵
sparse(u,v,S):u,v,S是三个等长的向量,S是建立的稀疏存储矩阵的非零元素,u(i),v(i)分别是S(i)的行和列下标 如

A=sparse([1,2,2],[2,1,4],[4,5,-7])
A=(2,1) 5
(1,2) 4
(2,4) -7

B=full(A)
B=0 4 0 0
5 0 0 -7

使用spconvert函数直接建立稀疏存储矩阵,调用格式为
B=spconvert(A)
A为一个mx3或mx4的矩阵,其每行表示一个非零元素,m是非零元素的个数

A=[2,2,1;2,1,-1;2,4,3]
A=2 2 1
2 1 -1
2 4 3

B=spconvert(A)
B=(2,1) -1
(2,2) 1
(2,4) 3

带状稀疏矩阵的稀疏存储
带状稀疏矩阵:所有非零元素集中在对角线上的矩阵
稀疏矩阵有两种基本类型:无规则结构的稀疏矩阵和有规则结构的稀疏矩阵
带状稀疏矩阵属于有规则结构的稀疏矩阵
[B,d]=spdiags(A):从带状稀疏矩阵A中提取所有的非零对角线元素赋给矩阵B,及这些非零对角线的位置组成向量d
A=spdiags(B,d,m,n):产生带状稀疏矩阵的稀疏存储矩阵A,其中m,n为原带状稀疏矩阵的行数和列数,矩阵B的第i列即为原带状稀疏矩阵的第i条非零对角线,向量d为原带状稀疏矩阵所有非零对角线的位置
单位矩阵的稀疏存储
speye(m,n)返回一个mxn的稀疏存储单位矩阵

speye(3)
ans=(1,1) 1
(2,2) 1
(3,3) 1

稀疏矩阵应用举例
求三对角线性方程组的解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值