Pseudo random number generator.
More...
#include <openbabel/babelconfig.h>
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include <openbabel/rand.h>
#include <time.h>
Namespaces |
| namespace | OpenBabel |
Defines |
| #define | True 1 |
| #define | False 0 |
| #define | IsEven(x) (((x)&1)==0) |
| #define | IsOdd(x) (((x)&1)!=0) |
| #define | BothEven(x, y) IsEven((x)|(y)) |
| #define | IsPrime(x) (!IsEven((x))&&IsOddPrime((x))) |
| #define | HiPart(x) (x>>16) |
| #define | LoPart(x) ((x)&0xffff) |
| #define | MAXFACT 10 |
| #define | MAXPRIMES 256 |
Functions |
| static unsigned int | isqrt (unsigned int val) |
| static int | IsOddPrime (unsigned int x) |
| static int | RelativelyPrime (unsigned int x, unsigned int y) |
| void | DoubleAdd (DoubleType *, unsigned int) |
| void | DoubleMultiply (unsigned int, unsigned int, DoubleType *) |
| static int | LeadingZeros (unsigned int x) |
| unsigned int | DoubleModulus (DoubleType *, unsigned int) |
| static int | DeterminePotency (unsigned int m, unsigned int a) |
| static int | DetermineFactors (unsigned int x, unsigned int *factors) |
| static unsigned int | DetermineIncrement (unsigned int m) |
| int | DetermineSequence (unsigned int m, unsigned int *pm, unsigned int *pa, unsigned int *pc) |
| void | GenerateSequence (unsigned int p, unsigned int m, unsigned int a, unsigned int c) |
Variables |
| static int | primes [MAXPRIMES] |
Detailed Description
Pseudo random number generator.
Define Documentation
| #define IsEven |
( |
|
x ) |
(((x)&1)==0) |
| #define IsOdd |
( |
|
x ) |
(((x)&1)!=0) |
| #define BothEven |
( |
|
x, |
|
|
|
y |
|
) |
| IsEven((x)|(y)) |
| #define IsPrime |
( |
|
x ) |
(!IsEven((x))&&IsOddPrime((x))) |
| #define HiPart |
( |
|
x ) |
(x>>16) |
| #define LoPart |
( |
|
x ) |
((x)&0xffff) |