#ifndef _parrandom_h_ #define _parrandom_h_ #ifdef __cplusplus extern "C" { #endif #include "rngs.h" void moments(int samples, float *sumx, float *sumy); void Dmoments(int samples, double *sumx, double *sumy); /* * init_time: initialize the execution timer. * */ /*void init_time();*/ /* * get_time: returns time in float seconds elapsed since call to init_time; * */ /*float get_time();*/ void get_datime(char *str_out); /* * init_rand initializes the random number generator. */ void init_rand(int new_seed); /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * rand_int returns a random integer in the range [0,limit-1] * */ int rand_int(int limit); /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * rand_float returns a random floating point number in the range [0,1); * */ float rand_float(); /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * rand16_float returns a random floating point number in the range [0,1); * The random number is based on 16 bit integers. */ float rand16_float(); /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * rand8_float returns a random floating point number in the range [0,1); * The random number is based on 16 bit integers. */ float rand8_float(); /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * * rand64_float returns a random floating point number generated from * a (equivalent) 64 bit integer. Sort of. */ float rand64_float(); /*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * * rand64_double() returns a random double precision floating point * number generated from essentially a 64-bit integer. */ double rand64_double(); /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * rand_double returns a random double floating point number in [0,1); * */ double rand_double(); #ifdef __cplusplus } #endif #endif