gslとは、GNU Scientific Library。いろいろめんどくさい計算すぐできる。
インストールしただけではただのライブラリ。
例:ベッセル関数 \(J_0(x)\) の、\(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; }
として、コンパイルは
$ gcc $(gsl-config --cflags) example.c $(gsl-config --libs)
とする。
ちなみに、
$ echo $(gsl-config --cflags) -I/usr/local/include $ echo $(gsl-config --libs) -L/usr/local/lib -lgsl -lgslcblas -lm
で、できたa.outを実行すると、
$ ./a.out J0(5) = -1.775967713143382642e-01