首页 > 其他 > 详细

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

时间:2019-05-02 12:16:30      阅读:368      评论:0      收藏:0      [点我收藏+]

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

打开矩阵市场主页

矩阵市场主页网址
如图所示,点击by matrix name 按名字查找。
技术分享图片
找到自己的矩阵
技术分享图片
这时候,发现有2种格式:
第一种是Matrix Market .mtx 格式,中间right hand side 是方程组 Ax=b 的右端项b。
第二种是 Harwell—boeing .rua 格式。
技术分享图片

下载两个格式矩阵文件

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

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);    即,将其上三角部分补上。

附上子函数mmread和hb_to_msm下载网址
mmread.m 下载网址
技术分享图片
hb_to_msm.m 下载
技术分享图片

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

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

原文:https://www.cnblogs.com/sunzhenwei/p/10801862.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!