问题标签 [lapack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1456 浏览

matrix - LAPACK/BLAS 或其他地方是否有 Fortran 子程序来计算 LDL 分解?

就像标题说的那样,我需要为我的正定矩阵A形成cholesky LDL分解(就像普通的cholesky,但是L的一个对角线,D是对角矩阵)。我在 Lapack 中发现只有一个函数可以做到这一点,但它说矩阵 A 必须是三对角矩阵。在一些免费的子程序库(如 lapack)中是否有某种功能可以做到这一点?

0 投票
2 回答
778 浏览

numerical - ZHEEV 和 ZHEEVD 的精度

我正在使用 LAPACK 对复杂的 Hermitian 矩阵进行对角化。我可以在 ZHEEV 和 ZHEEVD 之间进行选择。对于大小为 40 的矩阵和从 1E-2 到 1E1 的一系列特征值,这些例程中的哪一个更准确?

0 投票
1 回答
4419 浏览

gcc - C C++ 链接错误

我正在用 C++ 编写一个使用 CLAPACK ATLAS 库的程序。但是,我无法让程序成功链接到库。我编写了一个小的 C 程序来更好地演示这个问题。有趣的是,如果我用 GCC 编译这个小演示程序,它的链接就很好,但是当我尝试用 G++ 编译时,我得到了相同的链接器错误。我希望有人能帮我弄清楚 G++ 和 GCC 到底做了什么不同,以便让原始程序链接(原始程序是 C++ 程序,我不能只是“使用 GCC”)

这是一个小的演示程序:

当我尝试用 GCC 编译它时,它工作得很好:

当我尝试用 G++ 编译它时,它给出了链接器错误:

最后但同样重要的是:关于我的系统的一些信息:
操作系统:Fedora 10 (Linux hostname 2.6.27.25-170.2.72.fc10.x86_64 #1 SMP Sun Jun 21 18:39:34 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux)
库:

另外,对于奖励积分:LAPACK 和 ATLAS 之间的历史和功能关系到底是什么?

0 投票
1 回答
1409 浏览

matrix - Lapack 的行缩减

我正在尝试编写一个函数,该函数可以为代表性不足的方程组生成单一解(例如,描述系统的矩阵比它高)。为了做到这一点,我一直在 LAPACK 文档中寻找一种将矩阵行缩减为缩减梯队形式的方法,类似于 Mathematica 和 TI 计算器中的函数 rref()。我遇到的最接近的是http://software.intel.com/en-us/forums/intel-math-kernel-library/topic/53107/这个细线。然而,这个线程似乎暗示简单地采用“U”上三角矩阵(并将每一行除以对角线)与矩阵的简化梯形形式相同,我不认为是这种情况。我可以自己编写 rref() 代码,但我不相信我能达到 LAPACK 著名的性能。

1)有没有更好的方法来简单地为代表性不足的系统提供任何一种特定的解决方案?
2)如果没有,LAPACK有没有办法对矩阵进行行缩减?

谢谢!

0 投票
6 回答
10344 浏览

c++ - Ax=b 线性代数系统的 C++ 内存高效解决方案

我正在使用 Boost UBlas 的数值库绑定来解决一个简单的线性系统。以下工作正常,除了它仅限于处理相对较小的“m”的矩阵 A(mxm)。

在实践中,我有一个更大的矩阵,尺寸 m= 10^6(最多 10^7)。
是否存在有效使用内存的解决 Ax=b 的现有 C++ 方法。

0 投票
4 回答
14957 浏览

.net - 什么是 .net (C#) 的免费(开源)BLAS/LAPACK 库?

我有一个用 C# 编写的项目,我需要对矩阵进行各种线性代数运算(如 LU 分解)。

由于该程序主要是为确认理论而创建的原型,因此 C# 实现就足够了(与可能更快的 C++ 相比),但我仍然希望有一个好的 BLAS 或 LAPACK 库可以为我节省一些编码。

长话短说,任何人都可以推荐一个免费/开源的 BLAS 或 LAPACK 库来与 .net 一起使用吗?

最好的问候埃吉尔。

更新:今天找到了Math.NET Numerics,看起来很有趣,有人有这方面的经验吗?

0 投票
2 回答
4125 浏览

lapack - Lapack 调用反转矩阵

据我了解,需要进行分解/分解(LU、QR、Cholesky 等),然后基于分解进行矩阵逆计算。有没有其他方法可以绕过它(我想弄清楚我是否可以坚持使用CULAtools试用版中免费提供的 6 个功能)?提前感谢您的评论。

0 投票
2 回答
509 浏览

c - LAPACK + C,奇怪的行为

我正在尝试使用 LAPACK 求解一个简单的线性方程组。我使用针对带状矩阵优化的 dbsvg 方法。我观察到一个非常奇怪的行为。当我以这种方式填充 AT 矩阵时:

并调用:

它完美地工作。但是,当我这样做时:

结果是一个用 NaN 填充的向量。以下是声明:

有任何想法吗?

0 投票
2 回答
2139 浏览

visual-studio - 如何在使用犰狳的 Visual Studio 2008 项目中使用 LAPACK

我正在尝试使用开源库http://arma.sourceforge.net进行线性代数计算。犰狳中的一些函数如pinv使用 LAPACK。我编写了一段非常简单的代码来使用 Armadillo 计算 pinv,但它会产生运行时错误。这可能是因为我在 sln 文件中没有 LAPACK 链接器标志。

0 投票
3 回答
11510 浏览

c++ - 用于稀疏酉矩阵的最佳 C++ 矩阵库

我正在寻找一个好的(最好是积极维护的)C++ 矩阵库。因此它应该被模板化,因为我想使用一个复杂的有理数作为数字类型。我正在处理的矩阵主要是稀疏和单一的。

能否请您推荐一些库,并简要说明为什么要使用它们,因为我知道如何找到它们,但我无法真正决定什么适合我,因为我错过了使用它们的经验。

编辑:

我处理的主要操作是矩阵乘法与向量的标量乘法kronecker 积。矩阵的大小是指数级的,我希望至少能够处理高达 1024x1024 条目的矩阵。