Questions tagged «lapack»

LAPACK(线性代数包装)是用于数字线性代数任务的常用子例程库,包括方程组线性集,线性最小二乘,特征值问题和奇异值分解。LAPACK例程可与fortran,C和亲戚以及多种其他语言一起使用。

3
解决稀疏且病态严重的系统
我打算解决Ax = b的问题,其中A是复杂,稀疏,不对称且病态严重(条件号〜1E + 20)的方形或矩形矩阵。我已经能够使用LAPACK中的ZGELSS准确地解决该系统。但是随着我系统中自由度的增加,由于没有利用稀疏性,因此在使用ZGELSS的PC上解决该系统需要花费很长时间。最近,我在同一系统上尝试了SuperLU(使用Harwell-Boeing存储器),但是对于条件编号> 1E + 12,结果不准确(我不确定这是否是旋转的数值问题)。 我更倾向于使用已经开发的求解器。是否有一个强大的求解器可以解决我提到的系统(即利用稀疏性)并且可靠地(根据条件数)求解?

1
LAPACK如何解决三对角线系统,为什么?
在我的项目中,我必须在每个时间步上求解几个三对角矩阵,因此拥有一个好的求解器至关重要。我做了自己的实现,只是Wikipedia上描述的经典方法。然后我尝试使用Lapack代替,令我惊讶的是它的速度更慢! 现在,在Lapack中,似乎通过LU分解进行求解,我不知道为什么,它不是比可能更复杂吗? 另外,我在nr.com的“数字食谱”书中找到了一种算法,该算法将系统递归地划分为较小的三对角线问题。看起来很有希望。那里还有其他东西吗? 更新:问题大小约为1000x1000。我使用了GotoBLAS,它也为您提供了Lapack 3.1.1库。问题不对称。我将Lapack例程用于一般的三对角矩阵。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.