CSR格式 — CAE术语解说

分类:术语表 | 2026-01-15
CAE visualization for csr format - technical simulation diagram

CSR格式

🧑‍🎓

老师,我听说CSR格式(Compressed Sparse Row)在FEM求解器中使用,请问这是什么?


🎓

这是一种数据结构,用于高效地在内存中存储"尺寸大但大部分为零"的稀疏矩阵(Sparse Matrix),比如FEM的刚性矩阵。对于100万节点的FEM模型,刚性矩阵有100亿个元素,但实际非零的只有0.001%左右——将几乎全零的矩阵完全存储是浪费的。CSR格式仅用非零元素的值、列号、行指针这3个数组来表示稀疏矩阵。100亿元素的矩阵可以用100万元素×平均20个非零元素(2000万个)的存储空间完成,这就是效率提升。


定义

🧑‍🎓

CSR格式具体是什么样的数据结构?


🎓

它由3个数组组成。①values[]:从上到下扫描各行时的非零值序列。②col_indices[]:每个非零值的列号。③row_ptr[]:每行在values数组中的起始位置指针(大小为行数+1)。例如,对于3×3矩阵,其中(0,0)=5、(0,2)=3、(1,1)=7、(2,0)=2、(2,2)=9,则values=[5,3,7,2,9]、col_indices=[0,2,1,0,2]、row_ptr=[0,2,3,5]。在CG法和迭代求解法中频繁出现的SpMV(稀疏矩阵×向量乘积)运算,采用CSR格式可以获得很好的缓存效率。


关联术语

🧑‍🎓

稀疏矩阵存储效率优化是大规模FEM计算的基础,没想到还有GPU向的变形!


🎓
  • 稀疏矩阵
  • 稀疏矩阵存储格式
  • 迭代法

  • 对CAE术语的准确理解是团队沟通的基础。 — Project NovaSolver 也致力于支持实务人员的学习。

    Project NovaSolver — 面向CAE实务课题的研究开发

    "能否更高效地分析CSR格式?"——我们倾听实务人员的声音,力求改进现有工作流程,致力于次世代CAE项目的开发。具体功能尚未公开,但我们定期发布开发进展。

    获取进展通知 →
    本文评价
    感谢您的反馈!
    有帮助
    需要更多
    细节
    报告
    错误
    有帮助
    0
    需要更多细节
    0
    报告错误
    0
    作者:NovaSolver贡献者
    匿名工程师 & AI — 网站地图
    查看简历