![]() | |
Autor | The GNU Project |
---|---|
Aktualna wersja stabilna | 2.8 (25 maja 2024) [±] |
Platforma sprzętowa | Multi-platform |
Rodzaj | biblioteka numeryczna |
Licencja | GPL |
Strona internetowa |
GNU Scientific library – biblioteka funkcji obliczeniowych i naukowych dla C i C++ dostępna na zasadach GPL. Biblioteka jest częścią Projektu GNU.
Poniższy przykładowy program oblicza wartość funkcji Bessela dla argumentu 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;
}
Program musi być skonsolidowany z biblioteką GSL:
gcc $(gsl-config --cflags) example.c $(gsl-config --libs)
Wynik pracy programu jest pokazany poniżej (powinien być poprawny dla podwójnej precyzji):
J0(5) = -1.775967713143382920e-01
Biblioteka zawiera ponad tysiąc funkcji, dotyczących:
Biblioteka GSL może być używana w C++, ale nie może używać wskaźników do metod lecz tylko wskaźników do zwykłych funkcji[2]. Zamiast tego, programiści C++ mogą użyć statycznych funkcji przekierowujących do właściwej metody klasy. Adres używany do statycznych metod w C++ jest kompatybilny z GSL. Dostępne są gotowe wrappery C++ do GSL[3].