| Produit |
| Nom |
GSL : GNU Scientific Library |
| Machines d'installation |
sgi32 et regatta |
| Description |
GSL est une bibliothèque de fonctions scientifiques faisant partie du projet GNU.
C'est une collection de routines pour le calcul numérique (par opposition à tout ce qui est symbolique).
Les routines sont écrites à partir de zéro par l'équipe GSL, en ANSI C.
Elles sont conçues pour fournir une API (Applications Programming Interface) moderne aux programmeurs en C et pour permettre
l'écriture d'emballages pour des langages de très haut niveau.
La librairie couvre les domaines ci-dessous :
- Nombres complexes
- Racines de polynômes
- Fonctions spéciales
- Vecteurs et matrices
- Permutations
- Classement
- Support de BLAS
- Algèbre linéaire
- Valeurs et vecteurs propres
- Transformée de Fourier rapide
- Intégration
- Nombres aléatoires
- Suites quasi-aléatoires
- Distributions aléatoires
- Statistiques
|
- Histogrammes
- N-uples
- Intégration par Monte Carlo
- Simulation en anneaux
- Equations différentielles
- Interpolation
- Dérivation numérique
- Approximations de Chebyshev
- Accélération de séries
- Transformées de Hankel discrètes
- Calcul de racines
- Minimisation
- Approximation par moindres carrés
- Constantes physiques
- Flottants IEEE
|
|
| |
|
Fonctionnement
|
| Utilisation |
- Appel de la bibliothèque GSL dans votre programme :
#include <gsl/gsl_sf_bessel.h>
- Appel de la bibliothèque GSL dans les commandes de compilation :
- $CC -L/usr/local/lib -o app app.c -lgsl
- $CC -c app.c
$CC -L/usr/local/lib app.o -lgsl
Où $CC est égal à cc (ou gcc) sur sgi32 et à xlc (ou gcc) sur regatta.
|
| Exemple |
-
Le programme app.c ci-dessous fait appel à bibliothèque GSL en calculant la valeur de la fonction de bessel J_0(x) pour x=5 :
#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;
}
|
- Compilation du programme app.c :
$CC -L/usr/local/lib -o app app.c -lgsl
- Exécution de l'exécutable :
app
J0(5) = -1.775967713143383200e-01
|
| |
|
Aide
|
|