dSFMT  2.2
Data Structures | Defines | Typedefs | Functions | Variables
dSFMT.h File Reference

double precision SIMD oriented Fast Mersenne Twister(dSFMT) pseudorandom number generator based on IEEE 754 format. More...

#include <stdio.h>
#include <assert.h>
#include <inttypes.h>

Go to the source code of this file.

Data Structures

union  W128_T
 128-bit data structure More...
struct  DSFMT_T
 the 128-bit internal state array More...

Defines

#define DSFMT_MEXP   19937
#define DSFMT_N   ((DSFMT_MEXP - 128) / 104 + 1)
 DSFMT generator has an internal state array of 128-bit integers, and N is its size.
#define DSFMT_N32   (DSFMT_N * 4)
 N32 is the size of internal state array when regarded as an array of 32-bit integers.
#define DSFMT_N64   (DSFMT_N * 2)
 N64 is the size of internal state array when regarded as an array of 64-bit integers.
#define inline
#define PRIu64   "llu"
#define PRIx64   "llx"
#define UINT64_C(v)   (v ## ULL)
#define DSFMT_PRE_INLINE   inline static
#define DSFMT_PST_INLINE

Typedefs

typedef union W128_T w128_t
 128-bit data type
typedef struct DSFMT_T dsfmt_t

Functions

void dsfmt_gen_rand_all (dsfmt_t *dsfmt)
 This function fills the internal state array with double precision floating point pseudorandom numbers of the IEEE 754 format.
void dsfmt_fill_array_open_close (dsfmt_t *dsfmt, double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1] to the specified array[] by one call.
void dsfmt_fill_array_close_open (dsfmt_t *dsfmt, double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range [0, 1) to the specified array[] by one call.
void dsfmt_fill_array_open_open (dsfmt_t *dsfmt, double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1) to the specified array[] by one call.
void dsfmt_fill_array_close1_open2 (dsfmt_t *dsfmt, double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range [1, 2) to the specified array[] by one call.
void dsfmt_chk_init_gen_rand (dsfmt_t *dsfmt, uint32_t seed, int mexp)
 This function initializes the internal state array with a 32-bit integer seed.
void dsfmt_chk_init_by_array (dsfmt_t *dsfmt, uint32_t init_key[], int key_length, int mexp)
 This function initializes the internal state array, with an array of 32-bit integers used as the seeds.
const char * dsfmt_get_idstring (void)
 This function returns the identification string.
int dsfmt_get_min_array_size (void)
 This function returns the minimum size of array used for fill_array functions.
DSFMT_PRE_INLINE uint32_t dsfmt_genrand_uint32 (dsfmt_t *dsfmt)
 This function generates and returns unsigned 32-bit integer.
DSFMT_PRE_INLINE double dsfmt_genrand_close1_open2 (dsfmt_t *dsfmt)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range [1, 2).
DSFMT_PRE_INLINE double dsfmt_genrand_close_open (dsfmt_t *dsfmt)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range [0, 1).
DSFMT_PRE_INLINE double dsfmt_genrand_open_close (dsfmt_t *dsfmt)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1].
DSFMT_PRE_INLINE double dsfmt_genrand_open_open (dsfmt_t *dsfmt)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1).
DSFMT_PRE_INLINE uint32_t dsfmt_gv_genrand_uint32 (void)
 This function generates and returns unsigned 32-bit integer.
DSFMT_PRE_INLINE double dsfmt_gv_genrand_close1_open2 (void)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range [1, 2).
DSFMT_PRE_INLINE double dsfmt_gv_genrand_close_open (void)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range [0, 1).
DSFMT_PRE_INLINE double dsfmt_gv_genrand_open_close (void)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1].
DSFMT_PRE_INLINE double dsfmt_gv_genrand_open_open (void)
 This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1).
DSFMT_PRE_INLINE void dsfmt_gv_fill_array_open_close (double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1] to the specified array[] by one call.
DSFMT_PRE_INLINE void dsfmt_gv_fill_array_close_open (double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range [0, 1) to the specified array[] by one call.
DSFMT_PRE_INLINE void dsfmt_gv_fill_array_open_open (double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1) to the specified array[] by one call.
DSFMT_PRE_INLINE void dsfmt_gv_fill_array_close1_open2 (double array[], int size)
 This function generates double precision floating point pseudorandom numbers which distribute in the range [1, 2) to the specified array[] by one call.
DSFMT_PRE_INLINE void dsfmt_gv_init_gen_rand (uint32_t seed)
 This function initializes the internal state array with a 32-bit integer seed.
DSFMT_PRE_INLINE void dsfmt_gv_init_by_array (uint32_t init_key[], int key_length)
 This function initializes the internal state array, with an array of 32-bit integers used as the seeds.
DSFMT_PRE_INLINE void dsfmt_init_gen_rand (dsfmt_t *dsfmt, uint32_t seed)
 This function initializes the internal state array with a 32-bit integer seed.
DSFMT_PRE_INLINE void dsfmt_init_by_array (dsfmt_t *dsfmt, uint32_t init_key[], int key_length)
 This function initializes the internal state array, with an array of 32-bit integers used as the seeds.
DSFMT_PRE_INLINE const char * get_idstring (void)
 This function is just the same as dsfmt_get_idstring().
DSFMT_PRE_INLINE int get_min_array_size (void)
 This function is just the same as dsfmt_get_min_array_size().
DSFMT_PRE_INLINE void init_gen_rand (uint32_t seed)
 This function is just the same as dsfmt_gv_init_gen_rand().
DSFMT_PRE_INLINE void init_by_array (uint32_t init_key[], int key_length)
 This function is just the same as dsfmt_gv_init_by_array().
DSFMT_PRE_INLINE double genrand_close1_open2 (void)
 This function is just the same as dsfmt_gv_genrand_close1_open2().
DSFMT_PRE_INLINE double genrand_close_open (void)
 This function is just the same as dsfmt_gv_genrand_close_open().
DSFMT_PRE_INLINE double genrand_open_close (void)
 This function is just the same as dsfmt_gv_genrand_open_close().
DSFMT_PRE_INLINE double genrand_open_open (void)
 This function is just the same as dsfmt_gv_genrand_open_open().
DSFMT_PRE_INLINE void fill_array_open_close (double array[], int size)
 This function is juset the same as dsfmt_gv_fill_array_open_close().
DSFMT_PRE_INLINE void fill_array_close_open (double array[], int size)
 This function is juset the same as dsfmt_gv_fill_array_close_open().
DSFMT_PRE_INLINE void fill_array_open_open (double array[], int size)
 This function is juset the same as dsfmt_gv_fill_array_open_open().
DSFMT_PRE_INLINE void fill_array_close1_open2 (double array[], int size)
 This function is juset the same as dsfmt_gv_fill_array_close1_open2().

Variables

dsfmt_t dsfmt_global_data
 dsfmt internal state vector
const int dsfmt_global_mexp
 dsfmt mexp for check

Detailed Description

double precision SIMD oriented Fast Mersenne Twister(dSFMT) pseudorandom number generator based on IEEE 754 format.

Author:
Mutsuo Saito (Hiroshima University)
Makoto Matsumoto (Hiroshima University)

Copyright (C) 2007, 2008 Mutsuo Saito, Makoto Matsumoto and Hiroshima University. All rights reserved. Copyright (C) 2012 Mutsuo Saito, Makoto Matsumoto, Hiroshima University and The University of Tokyo. All rights reserved.

The new BSD License is applied to this software. see LICENSE.txt

Note:
We assume that your system has inttypes.h. If your system doesn't have inttypes.h, you have to typedef uint32_t and uint64_t, and you have to define PRIu64 and PRIx64 in this file as follows:
 typedef unsigned int uint32_t
 typedef unsigned long long uint64_t
 #define PRIu64 "llu"
 #define PRIx64 "llx"
uint32_t must be exactly 32-bit unsigned integer type (no more, no less), and uint64_t must be exactly 64-bit unsigned integer type. PRIu64 and PRIx64 are used for printf function to print 64-bit unsigned int and 64-bit unsigned int in hexadecimal format.

Define Documentation

#define DSFMT_MEXP   19937
#define DSFMT_N   ((DSFMT_MEXP - 128) / 104 + 1)
#define DSFMT_N32   (DSFMT_N * 4)

N32 is the size of internal state array when regarded as an array of 32-bit integers.

#define DSFMT_N64   (DSFMT_N * 2)
#define DSFMT_PRE_INLINE   inline static
#define inline
#define PRIu64   "llu"
#define PRIx64   "llx"
#define UINT64_C (   v)    (v ## ULL)

Typedef Documentation

typedef struct DSFMT_T dsfmt_t
typedef union W128_T w128_t

128-bit data type


Function Documentation

void dsfmt_chk_init_by_array ( dsfmt_t dsfmt,
uint32_t  init_key[],
int  key_length,
int  mexp 
)

This function initializes the internal state array, with an array of 32-bit integers used as the seeds.

Parameters:
dsfmtdsfmt state vector.
init_keythe array of 32-bit integers, used as a seed.
key_lengththe length of init_key.
mexpcaller's mersenne expornent

References DSFMT_N, DSFMT_N64, DSFMT_T::idx, idxof(), ini_func1(), ini_func2(), initial_mask(), period_certification(), DSFMT_T::status, and W128_T::u32.

Referenced by dsfmt_init_by_array().

void dsfmt_chk_init_gen_rand ( dsfmt_t dsfmt,
uint32_t  seed,
int  mexp 
)

This function initializes the internal state array with a 32-bit integer seed.

Parameters:
dsfmtdsfmt state vector.
seeda 32-bit integer used as the seed.
mexpcaller's mersenne expornent

References DSFMT_N, DSFMT_N64, DSFMT_T::idx, idxof(), initial_mask(), period_certification(), DSFMT_T::status, and W128_T::u32.

Referenced by dsfmt_init_gen_rand().

void dsfmt_fill_array_close1_open2 ( dsfmt_t dsfmt,
double  array[],
int  size 
)

This function generates double precision floating point pseudorandom numbers which distribute in the range [1, 2) to the specified array[] by one call.

The number of pseudorandom numbers is specified by the argument size, which must be at least (SFMT_MEXP / 128) * 2 and a multiple of two. The function get_min_array_size() returns this minimum size. The generation by this function is much faster than the following fill_array_xxx functions.

For initialization, init_gen_rand() or init_by_array() must be called before the first call of this function. This function can not be used after calling genrand_xxx functions, without initialization.

Parameters:
dsfmtdsfmt state vector.
arrayan array where pseudorandom numbers are filled by this function. The pointer to the array must be "aligned" (namely, must be a multiple of 16) in the SIMD version, since it refers to the address of a 128-bit integer. In the standard C version, the pointer is arbitrary.
sizethe number of 64-bit pseudorandom integers to be generated. size must be a multiple of 2, and greater than or equal to (SFMT_MEXP / 128) * 2.
Note:
memalign or posix_memalign is available to get aligned memory. Mac OSX doesn't have these functions, but malloc of OSX returns the pointer to the aligned memory block.

References DSFMT_N64, and gen_rand_array_c1o2().

Referenced by dsfmt_gv_fill_array_close1_open2().

void dsfmt_fill_array_close_open ( dsfmt_t dsfmt,
double  array[],
int  size 
)

This function generates double precision floating point pseudorandom numbers which distribute in the range [0, 1) to the specified array[] by one call.

This function is the same as fill_array_close1_open2() except the distribution range.

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
dsfmtdsfmt state vector.
sizethe number of pseudorandom numbers to be generated. see also
See also:
fill_array_close1_open2()

References DSFMT_N64, and gen_rand_array_c0o1().

Referenced by dsfmt_gv_fill_array_close_open().

void dsfmt_fill_array_open_close ( dsfmt_t dsfmt,
double  array[],
int  size 
)

This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1] to the specified array[] by one call.

This function is the same as fill_array_close1_open2() except the distribution range.

Parameters:
dsfmtdsfmt state vector.
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
fill_array_close1_open2()

References DSFMT_N64, and gen_rand_array_o0c1().

Referenced by dsfmt_gv_fill_array_open_close().

void dsfmt_fill_array_open_open ( dsfmt_t dsfmt,
double  array[],
int  size 
)

This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1) to the specified array[] by one call.

This function is the same as fill_array_close1_open2() except the distribution range.

Parameters:
dsfmtdsfmt state vector.
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
fill_array_close1_open2()

References DSFMT_N64, and gen_rand_array_o0o1().

Referenced by dsfmt_gv_fill_array_open_open().

void dsfmt_gen_rand_all ( dsfmt_t dsfmt)

This function fills the internal state array with double precision floating point pseudorandom numbers of the IEEE 754 format.

Parameters:
dsfmtdsfmt state vector.

References do_recursion(), DSFMT_N, and DSFMT_T::status.

Referenced by dsfmt_genrand_close1_open2(), dsfmt_genrand_open_open(), and dsfmt_genrand_uint32().

static double dsfmt_genrand_close1_open2 ( dsfmt_t dsfmt) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range [1, 2).

This is the primitive and faster than generating numbers in other ranges. dsfmt_init_gen_rand() or dsfmt_init_by_array() must be called before this function.

Parameters:
dsfmtdsfmt internal state date
Returns:
double precision floating point pseudorandom number

References W128_T::d, dsfmt_gen_rand_all(), DSFMT_N64, DSFMT_T::idx, and DSFMT_T::status.

Referenced by dsfmt_genrand_close_open(), dsfmt_genrand_open_close(), and dsfmt_gv_genrand_close1_open2().

static double dsfmt_genrand_close_open ( dsfmt_t dsfmt) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range [0, 1).

dsfmt_init_gen_rand() or dsfmt_init_by_array() must be called before this function.

Parameters:
dsfmtdsfmt internal state date
Returns:
double precision floating point pseudorandom number

References dsfmt_genrand_close1_open2().

static double dsfmt_genrand_open_close ( dsfmt_t dsfmt) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1].

dsfmt_init_gen_rand() or dsfmt_init_by_array() must be called before this function.

Parameters:
dsfmtdsfmt internal state date
Returns:
double precision floating point pseudorandom number

References dsfmt_genrand_close1_open2().

static double dsfmt_genrand_open_open ( dsfmt_t dsfmt) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1).

dsfmt_init_gen_rand() or dsfmt_init_by_array() must be called before this function.

Parameters:
dsfmtdsfmt internal state date
Returns:
double precision floating point pseudorandom number

References W128_T::d, dsfmt_gen_rand_all(), DSFMT_N64, DSFMT_T::idx, and DSFMT_T::status.

Referenced by dsfmt_gv_genrand_open_open().

static uint32_t dsfmt_genrand_uint32 ( dsfmt_t dsfmt) [inline]

This function generates and returns unsigned 32-bit integer.

This is slower than SFMT, only for convenience usage. dsfmt_init_gen_rand() or dsfmt_init_by_array() must be called before this function.

Parameters:
dsfmtdsfmt internal state date
Returns:
double precision floating point pseudorandom number

References dsfmt_gen_rand_all(), and DSFMT_N64.

Referenced by dsfmt_gv_genrand_uint32().

const char* dsfmt_get_idstring ( void  )

This function returns the identification string.

The string shows the Mersenne exponent, and all parameters of this generator.

Returns:
id string.

Referenced by get_idstring().

int dsfmt_get_min_array_size ( void  )

This function returns the minimum size of array used for fill_array functions.

Returns:
minimum size of array used for fill_array functions.

References DSFMT_N64.

Referenced by get_min_array_size().

static void dsfmt_gv_fill_array_close1_open2 ( double  array[],
int  size 
) [inline]

This function generates double precision floating point pseudorandom numbers which distribute in the range [1, 2) to the specified array[] by one call.

This function is the same as dsfmt_fill_array_close1_open2() except that this function uses global variables.

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_fill_array_close1_open2()

References dsfmt_fill_array_close1_open2().

Referenced by fill_array_close1_open2().

static void dsfmt_gv_fill_array_close_open ( double  array[],
int  size 
) [inline]

This function generates double precision floating point pseudorandom numbers which distribute in the range [0, 1) to the specified array[] by one call.

This function is the same as dsfmt_gv_fill_array_close1_open2() except the distribution range. This function uses global variables.

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_fill_array_close1_open2()
dsfmt_gv_fill_array_close1_open2()

References dsfmt_fill_array_close_open().

Referenced by fill_array_close_open().

static void dsfmt_gv_fill_array_open_close ( double  array[],
int  size 
) [inline]

This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1] to the specified array[] by one call.

This function is the same as dsfmt_gv_fill_array_close1_open2() except the distribution range. This function uses global variables.

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_fill_array_close1_open2() and
dsfmt_gv_fill_array_close1_open2()

References dsfmt_fill_array_open_close().

Referenced by fill_array_open_close().

static void dsfmt_gv_fill_array_open_open ( double  array[],
int  size 
) [inline]

This function generates double precision floating point pseudorandom numbers which distribute in the range (0, 1) to the specified array[] by one call.

This function is the same as dsfmt_gv_fill_array_close1_open2() except the distribution range. This function uses global variables.

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_fill_array_close1_open2()
dsfmt_gv_fill_array_close1_open2()

References dsfmt_fill_array_open_open().

Referenced by fill_array_open_open().

static double dsfmt_gv_genrand_close1_open2 ( void  ) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range [1, 2).

dsfmt_gv_init_gen_rand() or dsfmt_gv_init_by_array() must be called before this function. This function uses global variables.

Returns:
double precision floating point pseudorandom number

References dsfmt_genrand_close1_open2().

Referenced by dsfmt_gv_genrand_close_open(), dsfmt_gv_genrand_open_close(), and genrand_close1_open2().

static double dsfmt_gv_genrand_close_open ( void  ) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range [0, 1).

dsfmt_gv_init_gen_rand() or dsfmt_gv_init_by_array() must be called before this function. This function uses global variables.

Returns:
double precision floating point pseudorandom number

References dsfmt_gv_genrand_close1_open2().

Referenced by genrand_close_open().

static double dsfmt_gv_genrand_open_close ( void  ) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1].

dsfmt_gv_init_gen_rand() or dsfmt_gv_init_by_array() must be called before this function. This function uses global variables.

Returns:
double precision floating point pseudorandom number

References dsfmt_gv_genrand_close1_open2().

Referenced by genrand_open_close().

static double dsfmt_gv_genrand_open_open ( void  ) [inline]

This function generates and returns double precision pseudorandom number which distributes uniformly in the range (0, 1).

dsfmt_gv_init_gen_rand() or dsfmt_gv_init_by_array() must be called before this function. This function uses global variables.

Returns:
double precision floating point pseudorandom number

References dsfmt_genrand_open_open().

Referenced by genrand_open_open().

static uint32_t dsfmt_gv_genrand_uint32 ( void  ) [inline]

This function generates and returns unsigned 32-bit integer.

This is slower than SFMT, only for convenience usage. dsfmt_gv_init_gen_rand() or dsfmt_gv_init_by_array() must be called before this function. This function uses global variables.

Returns:
double precision floating point pseudorandom number

References dsfmt_genrand_uint32().

static void dsfmt_gv_init_by_array ( uint32_t  init_key[],
int  key_length 
) [inline]

This function initializes the internal state array, with an array of 32-bit integers used as the seeds.

This function uses global variables.

Parameters:
init_keythe array of 32-bit integers, used as a seed.
key_lengththe length of init_key. see also
See also:
dsfmt_init_by_array()

References dsfmt_init_by_array().

Referenced by init_by_array().

static void dsfmt_gv_init_gen_rand ( uint32_t  seed) [inline]

This function initializes the internal state array with a 32-bit integer seed.

This function uses global variables.

Parameters:
seeda 32-bit integer used as the seed. see also
See also:
dsfmt_init_gen_rand()

References dsfmt_init_gen_rand().

Referenced by init_gen_rand().

static void dsfmt_init_by_array ( dsfmt_t dsfmt,
uint32_t  init_key[],
int  key_length 
) [inline]

This function initializes the internal state array, with an array of 32-bit integers used as the seeds.

Parameters:
dsfmtdsfmt state vector
init_keythe array of 32-bit integers, used as a seed.
key_lengththe length of init_key.

References dsfmt_chk_init_by_array(), and DSFMT_MEXP.

Referenced by dsfmt_gv_init_by_array().

static void dsfmt_init_gen_rand ( dsfmt_t dsfmt,
uint32_t  seed 
) [inline]

This function initializes the internal state array with a 32-bit integer seed.

Parameters:
dsfmtdsfmt state vector.
seeda 32-bit integer used as the seed.

References dsfmt_chk_init_gen_rand(), and DSFMT_MEXP.

Referenced by dsfmt_gv_init_gen_rand().

static void fill_array_close1_open2 ( double  array[],
int  size 
) [inline]

This function is juset the same as dsfmt_gv_fill_array_close1_open2().

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_fill_array_close1_open2(),
dsfmt_gv_fill_array_close1_open2()

References dsfmt_gv_fill_array_close1_open2().

static void fill_array_close_open ( double  array[],
int  size 
) [inline]

This function is juset the same as dsfmt_gv_fill_array_close_open().

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_gv_fill_array_close_open(),
dsfmt_fill_array_close1_open2(),
dsfmt_gv_fill_array_close1_open2()

References dsfmt_gv_fill_array_close_open().

static void fill_array_open_close ( double  array[],
int  size 
) [inline]

This function is juset the same as dsfmt_gv_fill_array_open_close().

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_gv_fill_array_open_close(),
dsfmt_fill_array_close1_open2(),
dsfmt_gv_fill_array_close1_open2()

References dsfmt_gv_fill_array_open_close().

static void fill_array_open_open ( double  array[],
int  size 
) [inline]

This function is juset the same as dsfmt_gv_fill_array_open_open().

Parameters:
arrayan array where pseudorandom numbers are filled by this function.
sizethe number of pseudorandom numbers to be generated. see also
See also:
dsfmt_gv_fill_array_open_open(),
dsfmt_fill_array_close1_open2(),
dsfmt_gv_fill_array_close1_open2()

References dsfmt_gv_fill_array_open_open().

static double genrand_close1_open2 ( void  ) [inline]

This function is just the same as dsfmt_gv_genrand_close1_open2().

Returns:
double precision floating point number. see also
See also:
dsfmt_genrand_close1_open2()
dsfmt_gv_genrand_close1_open2()

References dsfmt_gv_genrand_close1_open2().

static double genrand_close_open ( void  ) [inline]

This function is just the same as dsfmt_gv_genrand_close_open().

Returns:
double precision floating point number. see also
See also:
dsfmt_genrand_close_open()
dsfmt_gv_genrand_close_open()

References dsfmt_gv_genrand_close_open().

static double genrand_open_close ( void  ) [inline]

This function is just the same as dsfmt_gv_genrand_open_close().

Returns:
double precision floating point number. see also
See also:
dsfmt_genrand_open_close()
dsfmt_gv_genrand_open_close()

References dsfmt_gv_genrand_open_close().

static double genrand_open_open ( void  ) [inline]

This function is just the same as dsfmt_gv_genrand_open_open().

Returns:
double precision floating point number. see also
See also:
dsfmt_genrand_open_open()
dsfmt_gv_genrand_open_open()

References dsfmt_gv_genrand_open_open().

static const char * get_idstring ( void  ) [inline]

This function is just the same as dsfmt_get_idstring().

Returns:
id string. see also
See also:
dsfmt_get_idstring()

References dsfmt_get_idstring().

static int get_min_array_size ( void  ) [inline]

This function is just the same as dsfmt_get_min_array_size().

Returns:
minimum size of array used for fill_array functions. see also
See also:
dsfmt_get_min_array_size()

References dsfmt_get_min_array_size().

static void init_by_array ( uint32_t  init_key[],
int  key_length 
) [inline]

This function is just the same as dsfmt_gv_init_by_array().

Parameters:
init_keythe array of 32-bit integers, used as a seed.
key_lengththe length of init_key. see also
See also:
dsfmt_gv_init_by_array(),
dsfmt_init_by_array().

References dsfmt_gv_init_by_array().

static void init_gen_rand ( uint32_t  seed) [inline]

This function is just the same as dsfmt_gv_init_gen_rand().

Parameters:
seeda 32-bit integer used as the seed. see also
See also:
dsfmt_gv_init_gen_rand(),
dsfmt_init_gen_rand().

References dsfmt_gv_init_gen_rand().


Variable Documentation

dsfmt internal state vector

const int dsfmt_global_mexp

dsfmt mexp for check