Instalando las librerias Lapackpp en Debian

Mirando en el Blog de Cristóbal (Linux Music 3.0), descubrí un artículo sobre la instalación de las librerías Lapack++ en Ubuntu y me di a la tarea de tratar de instalarlas en Debian Squeeze. El uso de estas librerías vendría a simplificar el código sobre un tópico que ya fue tratado en este Blog:

Autovalores y autovectores: Rotación de Jacobi

Como el artículo es algo antiguo y las distros, aunque relacionadas, son también diferentes, me dispuse a ver cuales eran las dependencias equivalentes que deberían ser instaladas primero. Esto se resolvió, en cónsola, con:

aptitude install liblapack-dev liblapack3gf libblas-dev libatlas-headers libatlas-sse-dev checkinstall

Luego bajé está versión de lapackpp:

lapackpp-2.5.3.tar.gz

la desempaqueté en modo gráfico y ya dentro de la carpeta ejecuté:

./configure
make

y como superusuario:

checkinstall
cp /usr/local/lib/liblapackpp.so* /usr/lib/

El ejemplo usado, basado en el de Linux Music 3.0, 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

About these ads
Esta entrada fue publicada en Código C++ y etiquetada , , . Guarda el enlace permanente.

5 respuestas a Instalando las librerias Lapackpp en Debian

  1. Pingback: Instalar Lapackpp (librería estándar para álgebra lineal) en Pardus 2009.2 | Pardus Life

  2. Pingback: Multiplicación de matrices con Lapack++ |

  3. Pingback: Autovalores y autovectores: Rotación de Jacobi |

  4. gracias auque no entiendo porque despues pide:
    Por favor escribe una descripción para el paquete.
    Termina tu descripcion con una linea vacia o con EOF.

  5. Tampoco lo entiendo. El procedimiento aquí presentado a mi me funcionó sin problemas.

Deja un comentario

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s