matlab 稀疏矩阵转换,如何将矩阵市场(matrix market)下载的矩阵格式转换为matlab稀疏矩阵...

矩阵市场收集了很多矩阵,可以供我们做数值实验。假如我们要查找一个矩阵叫作 fidap036

打开矩阵市场主页

矩阵市场主页网址

如图所示,点击by matrix name 按名字查找。

%E5%A4%96%E9%93%BE%E7%BD%91%E5%9D%80%E5%B7%B2%E5%B1%8F%E8%94%BD

找到自己的矩阵

%E5%A4%96%E9%93%BE%E7%BD%91%E5%9D%80%E5%B7%B2%E5%B1%8F%E8%94%BD.

这时候,发现有2种格式:

第一种是Matrix Market .mtx 格式,中间right hand side 是方程组 Ax=b 的右端项b。

第二种是 Harwell—boeing .rua 格式。

%E5%A4%96%E9%93%BE%E7%BD%91%E5%9D%80%E5%B7%B2%E5%B1%8F%E8%94%BD

下载两个格式矩阵文件

将两种格式都下载,解压到自己的matlab文件夹,如 E:/matlab/,如图

%E5%A4%96%E9%93%BE%E7%BD%91%E5%9D%80%E5%B7%B2%E5%B1%8F%E8%94%BD

matlab加载矩阵

下面介绍如何加载矩阵

第一种mtx格式使用如下:需要子函数 mmread.m

clear;clc;

filename = 'fidap036.mtx';

[A,rows,cols,entries,rep,field,symm] = mmread(filename);

第二种Harwell 格式 (.rua) 使用如下:需要子函数 hb_to_msm

%% HB to matlab matrix

clear;clc;

filename = 'fidap036.rua';

A = hb_to_msm ( filename );

于是即可生成我们所需要的matlab稀疏矩阵格式。大家可以自己对照网页上面矩阵的性质进行验证,生成的矩阵是否正确。

注意:有的矩阵是对称矩阵,所以加载后得到的它的上三角或者下三角部分,需要自己在进行处理例如:如果得到的是下三角矩阵,那么需要A=A+tril(A,-1);    即,将其上三角部分补上。

第一篇博客,欢迎大家多多交流。有问题请与我留言。QQ群:315241287

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值