科学计算实务matlab 08 稀疏矩阵与结构阵列 - 明新科技大学[ 电子 .pdfVIP

科学计算实务matlab 08 稀疏矩阵与结构阵列 - 明新科技大学[ 电子 .pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
科学计算实务matlab 08 稀疏矩阵与结构阵列 - 明新科技大学[ 电子

科學計算實務 MATLAB08 稀疏矩陣與結構陣列 主 講 :呂 明 峰 副 教 授 明新科技大學電子工程系 E- mail : mflu@must.edu.tw Outline 稀疏矩陣 結構陣列 sparse指令 struct指令 spdiags指令 取用及改變結構陣列的資料 spconvert指令 Bracket Operation 稀疏矩陣的圖示 取用及改變結構陣列的欄位 稀疏矩陣的相關指令表 其他相關指令 科學計算實務 2 1 稀疏矩陣 一個矩陣中 ,如果包含很多零元素 ,此矩陣即可稱為稀疏 矩陣 (Sparse Matrix )。稀疏矩陣在工程上的用途相當廣 泛 ,舉凡電路 、圖學、有限元素法及偏微分方程等 ,都會 用到稀疏矩陣。 但在稀疏矩陣中,由於大部分的元素都是0 ,因此只須儲 存 「非零元素的位置」及其 「元素值」即可 ,這種特殊的 內部儲存方式有下列兩大優點: 1. 節省記憶體儲存空間 2. 節省許多不必要的運算 (因為很多元素都是零) MATLAB 用三個內部陣列來儲存稀疏矩陣的相關資訊: 1. 第一個陣列:以double 方式儲存了所有的非零元素 。 2. 第二個陣列:以整數方式儲存了每個元素的列索引 。 3. 第三個陣列:以整數方式儲存了每個直行的起始指標 。 科學計算實務 3 sparse指令 MATLAB 的sparse 指令可將一個完全矩陣轉換成稀疏矩陣 : A = [2 0 0 0; 0 0 0 1; 0 4 0 0] S = sparse(A) %將一個完全矩陣轉換成稀疏矩陣 S = (1,1) 2 (3,2) 4 (2,4) 1 由此可看出 ,S 是一個稀疏矩陣 ,MATLAB 只儲存其各個非零 元素的位置 (即其二維下標 「(1,1) 、(3,2) 、(2,4) 」)和元素值 (「2 、4 、1」)。若要比較矩陣A 和S 所佔用的記憶體大 小,可輸入如下 : whos Name Size Bytes Class A 3x4 96 double array S 3x4 56 sparse array 科學計算實務 4 2 可以使用sparse 指令來直接產生稀疏矩陣 ,其使用語 法如下 : S = sparse(i, j, s, m, n); 其中i 是列索引 ,j 是行索引 ,s 是非零元素所形成的向量 ,m 是 s 的列維度 ,n 是 s 的行維度。i 、j 、s 都是長度相同的向量 ,s(k) 的二維下標即是i(k)及j(k ) 。 例如,以下語法可以產生與前例相同的稀疏矩陣S : S = sparse([1 3 2], [1 2 4], [2 4 1], 3, 4) S = (1,1) 2 (3,2) 4 (2,4) 1 科學計算實務 5 sp

文档评论(0)

wujianz + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档