Para usar lapack ++ no Ubuntu (testei no meu Ubuntu 15.04):
sudo apt-get install build-essential liblapack-dev libblas-dev checkinstall
Faça o download lapackpp-2.5.4.tar.gz do link para o usuário inicial .
Descompacte o arquivo e depois, em um console bash, vá para a pasta lapackpp-X.X.X e execute:
./configure
make
sudo checkinstall
sudo cp /usr/local/lib/liblapackpp.so* /usr/lib/
Para testar a biblioteca lapack ++, salve o próximo código como autov.c ++ na página inicial do usuário:
#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;
}
Compile e execute com:
g++ autov.c++ -o autov -llapackpp
./autov
O resultado é:
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