#include #include #include #include #include gsl_rng *rng; /* global generator */ int main (void) { const gsl_rng_type * T; unsigned int r; unsigned long seed; double x = 5.0; double y = gsl_sf_bessel_J0 (x); printf ("J0(%g) = %.18e\n", x, y); gsl_rng_env_setup(); T = gsl_rng_default; rng = gsl_rng_alloc (T); seed = (unsigned long)getpid(); gsl_rng_set(rng, seed); printf("generator type: %s\n", gsl_rng_name(rng)); printf("seed = %lu\n", gsl_rng_default_seed); printf("first value = %lu\n", gsl_rng_get(rng)); /* number of first element */ r = gsl_ran_hypergeometric(rng, 5, 5, 3); printf("rhg = %u\n", r); gsl_rng_free(rng); return 0; }