Instalar Lapackpp (librería estándar para álgebra lineal) en Pardus 2009.2


Lapackpp es una librería estándar para álgebra lineal la cual puede ser instalada muy fácilmente en Pardus 2009.2. Para ello, vamos a basarnos en una instalación previa realizada sobre Debian la cual, a su vez, está basada en una instalación sobre Ubuntu. En primer lugar, averiguamos con pisi cualquier información relativa a lapack en Pardus.

pisi sr lapack
lapack - Linear Algebra PACKage

e instalamos (para tener todas las dependencias cubiertas) con:

pisi it gcc lapack

Luego bajamos está versión de lapackpp:

lapackpp-2.5.3.tar.gz

la desempaquetamos en modo gráfico y ya dentro de la carpeta ejecutamos:

./configure
make

y como superusuario:

make install
cp /usr/local/lib/liblapackpp.so* /usr/lib/

El ejemplo usado, basado en el de Linux Music 3.0, para probar Lapackpp en Pardus fue el siguiente:

#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<<"\nLos autovectores son:"<< endl;

	cout << A;

	cout << "\nLos autovalores son:"<< endl;

	cout << c;

	return 0;

}

Se grabó como autov.c++ y se compiló y se ejecutó con:

g++ autov.c++ -o autov -llapackpp
./autov

generando está salida:

Los autovectores son:
0.505785  0.824038  -0.255232
0.584374  -0.544925  -0.601302
0.634577  -0.154979  0.757161
	
Los autovalores son:
7.07467
-0.886791
-3.18788

que es completamente equivalente a la que se encuentra en:

Autovalores y autovectores: Rotación de Jacobi

Es de hacer notar que esta librería sobrecarga al operador << para las salidas de las matrices y arreglos de los autovectores y autovalores correspondientes.

Para más información sobre Lapack++ vea la documentación en:

Lapack++ v2.5.2 API Documentation

Deja un comentario