问题标签 [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 回答
273 浏览

fortran - 我应该如何调用 Fortran 函数?

我应该如何调用 Fortran 函数?

我正在尝试调用DLANSY,但它错误地返回 0。请参阅下面的代码和程序输出。

它打印的内容:

在输入数组中具有适当的大小。

到底是怎么回事?

0 投票
2 回答
1730 浏览

sorting - 从 zgeev 获得的排序特征系统

我正在使用 Lapack 例程zgeev来获取 Fortran 中非对称复数矩阵的(复数)特征值和特征向量。得到的特征向量数组具有任意顺序。我想重新排序特征值数组和特征向量矩阵中的相应列,以便特征值相对于每个特征值的实部按升序排列。我当然可以推出自己的排序例程,但我想知道是否已经有一个 Fortran 例程可以为我做这件事,甚至可能作为 lapack 的一部分。

0 投票
1 回答
325 浏览

c - 我使用 dstev 计算特征向量得到零值

我使用 gcc 在 mac os x 下编译,我安装了 Intel 的 mkl_lapack.h 库。在程序中我有一个 NxN 三对角矩阵,所以我只使用两个向量来存储矩阵的值。“d”向量是主对角线,次对角线的值存储在“e”中。首先我初始化值,然后因为矩阵是 16x16(在输入中我将值 16 作为 argv[1]),我将向量分成两个向量(我可以只使用一次 dstev,但它是用于实验目的),从 d[0] 到 d[N/2-1] 我有第一个向量,从 d[N/2] 到 d[N-1] 第二个。因此,一旦初始化了 "e" 和 "d" 的值,我就调用了两次 dstev。但我不会费心将所有值都写在“z”中(z 将包含特征向量),因为我知道在调用 dstev 两次之后,在所有“z”向量中,我应该只有两个值的子矩阵,8x8 个非零值。但是如果我尝试打印“z”,一些值是 0.0,我无法解释为什么会发生这种情况。

我希望我清楚地解释了这件事,让我知道有些事情不清楚。

0 投票
4 回答
28616 浏览

python - 为 numpy 安装 lapack

运行 Ubuntu 11.10 + python2.7 ...从源代码构建 numpy 并安装它,但是当我去安装它时,我得到了

当它尝试从 numpy.linalg 导入 lapack_lite 时。我试图从头开始重建 lapack,但它似乎只是让

和 .so 文件。.so.3gf 来自哪里,我该如何解决?

0 投票
1 回答
1790 浏览

fortran - LAPACK:打包存储矩阵上的操作是否更快?

我想使用 Fortran 和 LAPACK 对实对称矩阵进行三对角化。LAPACK 基本上提供了两个例程,一个在完整矩阵上运行,另一个在打包存储中的矩阵上运行。虽然后者肯定使用更少的内存,但我想知道是否可以说速度差异?

0 投票
3 回答
14746 浏览

linker - Armadillo + BLAS + LAPACK:链接错误?

当我尝试编译 Armadillo 2.4.2 附带的 example1.cpp 时,我不断收到以下链接错误:

有人可以帮忙吗?我手动安装

  • 最新版本的 BLAS
  • lapack-3.4.0
  • 升压1.48.0
  • 最新版本的 ATLAS

我在 MacBook Pro 7,1 型号上使用 Ubuntu 11.04

0 投票
1 回答
2012 浏览

c - 为什么 cblas_dgemm 和 cblas_sgemm 在函数指针数组中有不同的指针类型?

我有一个函数指针数组,我用它来调用适当的cblas_xgemm(例如,cblas_dgemmcblas_sgemm等,来自 ATLAS/CBLAS)。

cblas_dgemm当我告诉它通过函数指针使用时,这很好用;dgemm 使用适当的参数调用并返回正确的结果。

但是,当我cblas_sgemm通过函数指针调用时,我得到以下输出:

我写了一个简短的测试程序来演示这个问题。cblas_sgemm没有函数指针的调用工作正常。

请特别注意以下 gcc 警告(另请参阅上面链接的要点,它具有完整的 gcc 输出):

如果我在函数指针数组定义中注释掉该cblas_sgemm行,我不会收到这样的警告,即使对于该cblas_dgemm行也是如此。但这没有任何意义,因为这两个函数都应该具有相同的返回类型!

以下是来自的适当行cblas.h

那么给了什么?它是否以某种方式xgemm从一个标头获取功能之一,而从另一个标头获取另一个功能?还是我在处理一些奇怪的函数指针问题?

0 投票
5 回答
85094 浏览

python - 如何检查 NumPy 和 SciPy 中的 BLAS/LAPACK 链接?

我正在构建基于 blas 和 lapack 的 numpy/scipy 环境,或多或少基于演练。

完成后,如何检查我的 numpy/scipy 函数是否确实使用了先前构建的 blas/lapack 功能?

0 投票
1 回答
1103 浏览

linux - 在linux上链接clapack

我正在将一个使用 clapack 的项目从 osx 移动到 linux 并遇到一些问题。我通过下载 cmake 项目、编译并将必要的 .h 和 .a 文件移动到我的项目中的相关位置来使用 clapack。

我在两种场景(osx 和 linux)中都使用了相同的步骤,并且在两台机器上都有相同的源代码,但是我无法让所有内容在 linux 上正确链接。

我的 cmake 文件中的代码行看起来像这样

我得到的错误看起来像这样

这是我第一次做从 osx 到 linux 的移植,不知道是否需要做出一些不同的要求才能链接或问题是什么

任何帮助将非常感激。

斯科特

0 投票
1 回答
1064 浏览

linux - 将 Clapack 链接到 cmake 项目 Linux

我很难将 clapack 链接到我在 linux 上的 cmake 项目,非常感谢任何帮助。

我已经成功地构建了 clapack 并将其链接到 osx 上的同一个项目,这使得这种情况特别令人沮丧。

我首先下载了 clapack-3.2.1-cmake 并编译了项目。然后,我将 .a 和相关的 .h 文件复制到项目根目录下名为 CLAPACK 的目录中。(libblas.a、libf2c.a、liblapack.a 和 libtmglib.a 到 CLAPACK/lib 和 blaswrap.h、clapack.h 和 f2c.h 在 CLAPACK)

然后我更改了我的项目的 cmake 文件以包含

这些步骤允许我在我的 mac 上编译,但是在将项目转移到 linux 机器并重新编译 clapack 库时,我得到了如下所示的链接错误

任何帮助都会很棒。谢谢,

斯科特