我想使用 LAPACK $ BLAS 库。我是否必须定义 lapack 的路径?请给我一些建议。
答案1
在 Ubuntu 中使用 lapack++(我在我的 Ubuntu 15.04 中测试过):
sudo apt-get install build-essential liblapack-dev libblas-dev checkinstall
下载lapackpp-2.5.4.tar.gz从http://sourceforge.net/projects/lapackpp/files/到用户主页。
解压后,在 bash 控制台中,移至文件夹lapackpp-XXX并运行:
./configure
make
sudo checkinstall
sudo cp /usr/local/lib/liblapackpp.so* /usr/lib/
要测试 lapack++ 库,请将以下代码保存为自动检测在您的用户主页中:
#include <iostream>
#include <stdio.h>
#include <lapackpp/laslv.h>
using namespace std;
int main(){
double a[]={ 1.0, 2.0, 3.0,
2.0, 1.0, 4.0,
3.0, 4.0, 1.0};
LaVectorDouble v(3);
LaVectorDouble c(3);
LaGenMatDouble A(a,3,3);
LaEigSolve(A,c,v,A);
cout<<"\neigenvectors are:"<< endl;
cout << A;
cout << "\neigenvalues are:"<< endl;
cout << c;
return 0;
}
编译并运行:
g++ autov.c++ -o autov -llapackpp
./autov
结果是:
eigenvectors are:
0.505785 0.824038 -0.255232
0.584374 -0.544925 -0.601302
0.634577 -0.154979 0.757161
eigenvalues are:
7.07467
-0.886791
-3.18788