31 #ifndef __adevs_rand_h_
32 #define __adevs_rand_h_
80 virtual void set_seed(
unsigned long seed) = 0;
105 crand(
unsigned long seed):seedp((unsigned int)seed){}
107 void set_seed(
unsigned long seed) { seedp = (
unsigned int)seed; }
111 return ((
double)
next_long()/(
double)RAND_MAX);
131 rv (
unsigned long seed = 1);
146 double triangular(
double a,
double b,
double c);
148 double uniform(
double a,
double b);
153 double normal(
double m,
double s);
161 double hyperexponential(
double p,
double a,
double b);
162 double laplace(
double a);
163 double chisquare(
unsigned int n);
164 double student(
unsigned int n);
165 double lognormal(
double a,
double b);
166 double erlang(
unsigned int n,
double a);
167 double gamma(
double a,
double b);
168 double beta(
double a,
double b);
169 double fdistribution(
unsigned int n,
unsigned int m);
170 double poisson(
double a);
171 double geometric(
double p);
172 double hypergeometric(
unsigned int m,
unsigned int n,
double p);
173 double weibull(
double a,
double b);
174 double binomial(
double p,
unsigned int n);
175 double negativebinomial(
double p,
unsigned int n);
177 int probability(
double p);
178 double lngamma(
double xx);
183 void err(errorType n);