matlab入门经典教程--第四章 数值计算(9)

2019-08-30 18:39

4.15 稀疏矩阵

4.15.1 稀疏矩阵的存储方式 4.15.2 稀疏矩阵的创建

4.15.2.1 稀疏矩阵创建指令:sparse 4.15.2.2 稀疏带状矩阵创建指令:spdiags

4.15.2.3 外部数据转换为稀疏矩阵的指令:spconvert

【例 4.15.2.3-1】用两种不同方式创建三对角稀疏矩阵。

n=5;SM1=sparse(1:n,1:n,-2*ones(1,n),n,n,n);

SM2=sparse(2:n,1:n-1,ones(1,n-1),n,n,n-1);S1=SM1+SM2+SM2'

e=ones(n,1);S2=spdiags([e,-2*e,e],[-1,0,1],n,n),SF=full(S1) S1 =

(1,1) -2 (2,1) 1 (1,2) 1 (2,2) -2 (3,2) 1 (2,3) 1 (3,3) -2 (4,3) 1 (3,4) 1 (4,4) -2 (5,4) 1 (4,5) 1 (5,5) -2 S2 =

(1,1) -2 (2,1) 1 (1,2) 1 (2,2) -2 (3,2) 1 (2,3) 1 (3,3) -2 (4,3) 1 (3,4) 1 (4,4) -2 (5,4) 1 (4,5) 1 (5,5) -2 SF =

-2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2 1 0 0 0 1 -2

41

4.15.3 稀疏矩阵的运算 4.15.3.1 基本规则

4.15.3.2 常用指令及应用举例

【例4.15.3.2-1】全元素矩阵、稀疏矩阵、最小排序稀疏矩阵三角分解所需时间的比较。

clear all,n=200; % rand('state',1),randn('state',2) % A=sprandsym(n,0.015,0.1,1); %

subplot(1,2,1),spy(A,'b',10),title('Spy plot of matrix A') subplot(1,2,2),d=symmmd(A); %

spy(A(d,d),'b',10),title('Matrix A with Minimun degree ordering'); B=full(A); % %

format short e

tic, L1=chol(B);t1=toc; % tic, L2=chol(A);t2=toc/t1; % tic, L3=chol(A(d,d));t3=toc/t1; %

disp(' 全元素阵 稀疏矩阵 最小排序阵'),disp([1,t2,t3]) 全元素阵 稀疏矩阵 最小排序阵

1 0 0

图 4.15-1 稀疏结构

42


matlab入门经典教程--第四章 数值计算(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《上海市建筑和装饰工程预算定额(2000)》装配整体式混凝土住宅体

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: