/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/utils/eh_rand.c File Reference

#include <eh_utils.h>
#include <math.h>

Go to the source code of this file.

Defines

#define IA   16807
#define IM   2147483647
#define AM   (1.0/IM)
#define IQ   127773
#define IR   2836
#define MASK   123459876
#define IA   16807
#define IM   2147483647
#define AM   (1.0/IM)
#define IQ   127773
#define IR   2836
#define NTAB   32
#define NDIV   (1+(IM-1)/NTAB)
#define EPS   1.2e-7
#define RNMX   (1.0-EPS)
#define IM1   2147483563
#define IM2   2147483399
#define AM   (1.0/IM1)
#define IMM1   (IM1-1)
#define IA1   40014
#define IA2   40692
#define IQ1   53668
#define IQ2   52774
#define IR1   12211
#define IR2   3791
#define NTAB   32
#define NDIV   (1+IMM1/NTAB)
#define EPS   1.2e-7
#define RNMX   (1.0-EPS)
#define MBIG   1000000000
#define MSEED   161803398
#define MZ   0
#define FAC   (1.0/MBIG)
#define NITER   4
#define PI   3.14159265359

Functions

double eh_ran0 (long *idum)
double eh_ran1 (long *idum)
double eh_ran2 (long *idum)
double eh_ran3 (long *idum)
double eh_ran4 (long *idum)
void eh_psdes (unsigned long *lword, unsigned long *irword)
double eh_cosdev (long *idum)
double eh_reject (double(*p)(double), double(*f)(double), double(*F)(double))
double eh_expdev (long *idum)
double eh_gasdev (long *idum)
double eh_powdev (double a, long *idum)
double eh_maxpowdev (double a, double n, long *idum)
double eh_rand_exponential (GRand *rand, double mu)
double eh_rand_max_exponential (GRand *rand, double mu, double n)
double eh_log_normal (GRand *rand, double mu, double sigma)
double eh_max_log_normal (GRand *rand, double mu, double sigma, double n)
double eh_rand_weibull (GRand *rand, double eta, double beta)
double eh_rand_max_weibull (GRand *rand, double eta, double beta, double n)
double eh_rand_user (GRand *rand, double *x, double *F, gssize len)
double eh_rand_normal (GRand *rand, double mu, double sigma)
double eh_get_fuzzy_dbl (double min, double max)
double eh_get_fuzzy_dbl_norm (double mean, double std)
double eh_get_fuzzy_dbl_log_norm (double mean, double std)
gint32 eh_get_fuzzy_int (gint32 min, gint32 max)


Define Documentation

#define AM   (1.0/IM1)

Definition at line 100 of file eh_rand.c.

#define AM   (1.0/IM)

Definition at line 100 of file eh_rand.c.

#define AM   (1.0/IM)

Definition at line 100 of file eh_rand.c.

#define EPS   1.2e-7

Definition at line 110 of file eh_rand.c.

#define EPS   1.2e-7

Definition at line 110 of file eh_rand.c.

#define FAC   (1.0/MBIG)

Definition at line 165 of file eh_rand.c.

Referenced by eh_ran3().

#define IA   16807

Definition at line 50 of file eh_rand.c.

#define IA   16807

Definition at line 50 of file eh_rand.c.

Referenced by eh_ran0(), and eh_ran1().

#define IA1   40014

Definition at line 102 of file eh_rand.c.

#define IA2   40692

Definition at line 103 of file eh_rand.c.

#define IM   2147483647

Definition at line 51 of file eh_rand.c.

#define IM   2147483647

Definition at line 51 of file eh_rand.c.

Referenced by eh_ran0(), and eh_ran1().

#define IM1   2147483563

Definition at line 98 of file eh_rand.c.

#define IM2   2147483399

Definition at line 99 of file eh_rand.c.

#define IMM1   (IM1-1)

Definition at line 101 of file eh_rand.c.

#define IQ   127773

Definition at line 53 of file eh_rand.c.

#define IQ   127773

Definition at line 53 of file eh_rand.c.

Referenced by eh_ran0(), and eh_ran1().

#define IQ1   53668

Definition at line 104 of file eh_rand.c.

#define IQ2   52774

Definition at line 105 of file eh_rand.c.

#define IR   2836

Definition at line 54 of file eh_rand.c.

#define IR   2836

Definition at line 54 of file eh_rand.c.

Referenced by eh_ran0(), and eh_ran1().

#define IR1   12211

Definition at line 106 of file eh_rand.c.

#define IR2   3791

Definition at line 107 of file eh_rand.c.

#define MASK   123459876

Definition at line 28 of file eh_rand.c.

Referenced by eh_ran0().

#define MBIG   1000000000

Definition at line 162 of file eh_rand.c.

Referenced by eh_ran3().

#define MSEED   161803398

Definition at line 163 of file eh_rand.c.

Referenced by eh_ran3().

#define MZ   0

Definition at line 164 of file eh_rand.c.

Referenced by eh_ran3().

#define NDIV   (1+IMM1/NTAB)

Definition at line 109 of file eh_rand.c.

#define NDIV   (1+(IM-1)/NTAB)

Definition at line 109 of file eh_rand.c.

#define NITER   4

Definition at line 234 of file eh_rand.c.

Referenced by eh_psdes().

#define NTAB   32

Definition at line 108 of file eh_rand.c.

#define NTAB   32

Definition at line 108 of file eh_rand.c.

#define PI   3.14159265359

Definition at line 258 of file eh_rand.c.

#define RNMX   (1.0-EPS)

Definition at line 111 of file eh_rand.c.

#define RNMX   (1.0-EPS)

Definition at line 111 of file eh_rand.c.


Function Documentation

double eh_cosdev ( long *  idum  ) 

Definition at line 262 of file eh_rand.c.

References eh_ran1(), and PI.

double eh_expdev ( long *  idum  ) 

Definition at line 292 of file eh_rand.c.

References eh_ran1().

double eh_gasdev ( long *  idum  ) 

Definition at line 306 of file eh_rand.c.

References eh_ran1().

double eh_maxpowdev ( double  a,
double  n,
long *  idum 
)

Definition at line 350 of file eh_rand.c.

References eh_ran2().

Referenced by earthquake().

double eh_powdev ( double  a,
long *  idum 
)

Definition at line 338 of file eh_rand.c.

References eh_ran2().

void eh_psdes ( unsigned long *  lword,
unsigned long *  irword 
)

Definition at line 236 of file eh_rand.c.

References NITER.

Referenced by eh_ran4().

double eh_ran0 ( long *  idum  ) 

Definition at line 30 of file eh_rand.c.

References AM, IA, IM, IQ, IR, and MASK.

double eh_ran1 ( long *  idum  ) 

Definition at line 60 of file eh_rand.c.

References AM, IA, IM, IQ, IR, NDIV, NTAB, and RNMX.

Referenced by eh_cosdev(), eh_expdev(), eh_gasdev(), eh_reject(), and storm().

double eh_ran2 ( long *  idum  ) 

Definition at line 113 of file eh_rand.c.

References AM, IA1, IA2, IM1, IM2, IMM1, IQ1, IQ2, IR1, IR2, NDIV, NTAB, and RNMX.

Referenced by eh_max_log_normal(), eh_maxpowdev(), and eh_powdev().

double eh_ran3 ( long *  idum  ) 

Definition at line 167 of file eh_rand.c.

References FAC, MBIG, MSEED, and MZ.

double eh_ran4 ( long *  idum  ) 

Definition at line 209 of file eh_rand.c.

References eh_psdes().

double eh_reject ( double(*)(double)  p,
double(*)(double)  f,
double(*)(double)  F 
)

Definition at line 274 of file eh_rand.c.

References eh_ran1(), and eh_reject().

Referenced by eh_reject().


Generated on Fri Jan 4 18:04:19 2008 for sedflux by  doxygen 1.5.2