首页/文章/ 详情

一维变带宽存储刚度矩阵

1月前浏览1233

我们知道,集成之后的整体刚度矩阵是一个对称的稀疏带状矩阵,如图1所示。这样的矩阵包含大量的0元素,占用大量的存储空间。为了节约存储空间,可采取一些方法对刚度矩阵压缩存储。

 一维变带宽存储是将变化的带宽内的元素按一定的顺序存储在一维数组内。一维变带宽存储可分为按行存储和按列存储,其中按列存储方式是指每一列从主对角元素至最高的非零元素,如图2所示线框内所包含的元素。由各列中行号最小的非零元素组成的折线称之为高度轮廓线。

为了将轮廓线内的系数紧凑地存储在一维数组中,还需要有辅助的数组帮助记录元素在原稀疏矩阵中的位置,辅助数组M(n+1)用以记录主对角元素在一维数组中的位置。对图2中的稀疏矩阵可采用一维数组A(21)来存储,原矩阵元素与一维数组元素的对应关系可以通过数组M建立起来。

M = [1 2 4 6 10 12 16 20 22]

注意,M的最后一个元素无实际意义。数组M除了反映对角元素在一维数组中的位置外,还可以用以计算每列元素的列高N,即每列元素的个数,以及每列元素的起始行号r。

N = M(i+1)-M(i)

r = i - N +1

例如,求第7列元素个数及非零元素的起始行号,有

N = M(8)-M(7)= 20-16 = 4

r = 7-4+1 = 4

来源:数值分析与有限元编程
科普
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-04-01
最近编辑:1月前
太白金星
本科 慢慢来
获赞 2粉丝 4文章 286课程 0
点赞
收藏

作者推荐

未登录
还没有评论

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈