GNU Scientific Library

biblioteca software para cálculos numéricos

GNU Scientific Library (GSL) es una biblioteca escrita en C, destinada a cálculos numéricos en matemáticas y ciencia, distribuida bajo la licencia GNU GPL.

GNU Scientific Library
Información general
Tipo de programa Biblioteca numérica
Desarrollador proyecto GNU
Lanzamiento inicial 1996
Licencia GNU GPL
Información técnica
Programado en C
Versiones
Última versión estable 2.8 ( 25 de mayo de 2024)
Enlaces

Incorpora, entre otras, rutinas para el manejo de números complejos, funciones elementales y funciones especiales, combinatoria, álgebra lineal, integración y derivación numéricas, transformada rápida de Fourier, transformada wavelet discreta, generación de números aleatorios y estadística.

Ejemplo

editar

El siguiente programa de ejemplo calcula el valor de la función de Bessel para 5:[1]

#include <stdio.h>
#include <gsl/gsl_sf_bessel.h>

int main(void)
{
  double x = 5.0;
  double y = gsl_sf_bessel_J0(x);
  printf("J0(%g) = %.18e\n", x, y);
  return 0;
}

El programa de ejemplo debe ser enlazado a la biblioteca GSL durante la compilación:

gcc $(gsl-config --cflags) example.c $(gsl-config --libs)

Aquí se muestra la salida, que debería ser correcta en precisión doble:

J0(5) = -1.775967713143382920e-01

Características

editar

La biblioteca proporciona herramientas para:

Soporte para C++

editar

La GSL se puede usar en las clases de C++, pero sin usar punteros a "funciones miembro" o métodos, porque el tipo de los punteros a métodos es diferente del de puntero a función.[2]​ En su lugar deben usarse punteros a funciones estáticas. Están disponibles los encapsulados de C++ para la GSL,[3]​ aunque hay muchos que no han sido mantenidos regularmente.

Referencias

editar
  1. http://www.gnu.org/software/gsl/manual/html_node/Using-the-library.html
  2. pointer to member function Archivado el 13 de octubre de 2004 en Wayback Machine.
  3. «C++ wrappers for GSL». Archivado desde el original el 29 de enero de 2015. Consultado el 22 de enero de 2010. 

Enlaces externos

editar