主题:求教:用数学库解方程组问题。
sherlockholmes
[专家分:30] 发布于 2011-11-30 10:21:00
最近编的一个程序中的一个小模块要解一个稀疏矩阵的方程组。系数矩阵大小大概是30乘30,很小。
特点就是五对角,但是五条线并不挨着,中间三个对角紧挨,上下各一对角。算是带状吧?
懒得再自己编了。而且手头也有intel的库。请问这种矩阵应该用哪个函数?我以前没用过数学库。
多谢!
回复列表 (共5个回复)
沙发
cgl_lgs [专家分:21040] 发布于 2011-11-30 13:48:00
FVM?基本可以按变带宽方式解也可以用满阵解(毕竟才30x30)
板凳
cgl_lgs [专家分:21040] 发布于 2011-11-30 13:49:00
或者用TDMA做迭代也行:)
3 楼
sherlockholmes [专家分:30] 发布于 2011-11-30 23:20:00
我现在用的是LSLXD。是一个用来解 稀疏、对称、正定 矩阵(sparse、symmetric、positive definite)的函数。不知道这个函数我的理解对不对?
不过这个函数用的是一维数组存非零项。我说的30只是一个大概的数,实际编程是动态数组。数组大小和值都不定。我还得自己算出来非零项的位置和值。真够麻烦的。
另外您说的两个函数我都不了解。能详细说下吗?多谢!
4 楼
cgl_lgs [专家分:21040] 发布于 2011-12-01 17:36:00
我只说了一个函数:TDMA:)之前以为你是做FVM的(有限体积法)。如果不是那就无视我之前说的话吧。
5 楼
qjx1278 [专家分:0] 发布于 2011-12-03 16:11:00
五对角转化成三对角,应该比较容易吧,再利用追赶法,不知道能解决不?
我来回复