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.
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
El siguiente programa de ejemplo calcula el valor de la función de Bessel para 5:[1]
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
La biblioteca proporciona herramientas para:
- Funciones matemáticas básicas
- Números complejos
- Polinomios
- Funciones especiales
- Vectores y matrices
- Permutaciones
- Combinaciones
- Multiset
- Ordenación
- BLAS
- Álgebra lineal
- Eigenvectores
- Transformada rápida de Fourier
- Integración numérica
- Generación aleatoria de números
- Secuencias Quasi-aleatorias
- Distribuciones de números aleatorios
- Estadísticas
- Histogramas
- N-tuplas
- Integración de Monte Carlo
- Simulated annealing
- Ecuaciones diferenciales ordinarias
- Interpolación
- Derivación numérica
- Aproximaciones de Chebyshev
- Aceleración de Series
- Transformada discreta de Hankel
- Búsqueda de raíces en una y varias dimensiones
- Minimización en una y varias dimensiones
- Medida de mínimos cuadrados
- Medida de mínimos cuadrados no lineales
- Constantes Físicas
- Aritmética de punto flotante IEEE
Soporte para C
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
Enlaces externos
- Manual en inglés




