稀疏矩阵

来自testwiki
跳转到导航 跳转到搜索

Template:NoteTA

稀疏矩陣的例子
[11220000003344000000556677000000088000000099]
Template:Midsize
计算有限元问题时得到的稀疏矩阵。非零元素用黑点表示。

稀疏矩阵Template:Lang-en),在数值分析中,是其元素大部分为零的矩阵。反之,如果大部分元素都非零,则这个矩阵是稠密(dense)的。在科学工程学领域中求解线性模型时经常出现大型的稀疏矩阵。

在使用计算机存储和操作稀疏矩阵时,经常需要修改标准算法以利用矩阵的稀疏结构。由于其自身的稀疏特性,通过压缩可以大大节省稀疏矩阵的内存代价。更为重要的是,由于过大的尺寸,标准的算法经常无法操作这些稀疏矩阵。

定义

给定一个N×M的稀疏矩阵A,其第n行的行带宽定义为:

bn(𝐀):=min1mM{man,m0}

整个矩阵的带宽定义为:

B(𝐀):=max1nNbn(𝐀)

例子

计算方法

稀疏矩阵的「注入元」是指执行算法是从初始的零值变为非零值的那些元素。为减少内存要求和算术操作的次数,我们经常通过交换某些行或某些列来尽量减少注入元。Template:Le可以用来在做实际的柯列斯基分解之前计算最坏情况下注入元的数目。与此类似,可以用符号QR分解在做实际的QR分解之前计算最坏情况下注入元的数目。

Template:Le法是一种用于高斯消元法LU分解中的系统处理如何减少注入元的一種方法。与此相关的一种称为Template:Link-en的方法,可以看成是它的一个特例。

參考文獻

Template:Refbegin

Template:Refend

延伸閱讀

Template:Refbegin

Template:Refend

Template:Data structures Template:线性代数的相关概念