一个简单的MATLAB读写文本文件程序--稀疏矩阵向量乘法
2010-11-06 16:09
701 查看
%矩阵向量乘,写入文件 %双重for循环处,运行了很久,还需要改进,请多关照 clear clc n=150000;%矩阵的维数 a = sprand(n, n, 0.0001);%产生一个稀疏矩阵 fid1 = fopen('matrix.mtx', 'w');%要写入的矩阵文件 fid2 = fopen('matrix_b.mtx', 'w');%向量文件 disp('1') len = nnz(a);%稀疏矩阵中非零元个数 disp('2') fprintf(fid1, '%d %d %d/n', n, n, len);%行、列、非零元个数 disp('3') for j = 1:n for i = 1:n if a(i,j) ~= 0 fprintf(fid1, '%d %d %f/n', i, j, a(i,j));%三元组形式写入文件 end end end disp('4') fprintf(fid2, '%d/n', n); b = sprand(n, 1, 0.9);%产生一个稀疏向量 disp('6') for i = 1:n fprintf(fid2, '%d/n', b(i,1));%写入向量 end disp('5') s = a *b; full_s = full(s);%将结果转换成全矩阵 save s.txt full_s -ascii %保存矩阵向量乘的结果 fclose(fid1); fclose(fid2);
相关文章推荐
- 一个简单的std 读写简单数据的文件程序
- .net 入门小程序(1):简单的文本文件读写及相应鼠标事件小程序
- 一个简单的mfc单页界面文件读写程序(MFC 程序入口和执行流程)
- 一个简单的矩阵乘法(快速幂)
- 假设nn的稀疏矩阵A采用三元组表示,设计一个程序exp6-4.cpp实现如下功能:
- 关于MATLAB入门的简单记录8 高维数组与稀疏矩阵/三维作图
- 一个简单的读写文件程序-适用于MTK平台资源管理
- 一个简单求和函数的matlab实现(带程序耗时功能)
- 稀疏矩阵A和B,其行数和列数对应相等,编写一个程序,计算A和B之和,假设稀疏矩阵采用三元组表示
- Matlab中特征向量间距离矩阵的并行mex程序
- matlab 复制一个行向量为多个相同的行向量,用于求向量和矩阵距离
- cuda初学(1):稀疏矩阵向量乘法(单精度)
- 编写一个程序用于执行矩阵的乘法。 m1是一个x行y列的矩阵,m2是y行z列的矩阵。 这两个矩阵应该相乘,结果存储在r中,它是x行z列的矩阵。
- Matlab使用for循环将多个行向量合成一个行向量或者一个多维矩阵
- 关于一个简单的矩阵运算程序,将A矩阵加上A矩阵的逆放到B矩阵中。
- 一个简单的matlab图形界面程序GUI
- 一个简单的mfc单页界面文件读写程序(MFC 程序入口和执行流程)
- MATLAB向量和矩阵的简单操作
- 【matlab】一个简单的matlab图形界面程序GUI
- 【java学习记录】3.采用面向对象的方法设计一个能对复数(Complex)进行加、减、乘法的简单运算的程序