dSFMT-jump
0.1
|
do jump using jump polynomial. More...
#include <assert.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include "dSFMT-params.h"
#include "dSFMT.h"
#include "dSFMT-jump.h"
#include "dSFMT-common.h"
Data Structures | |
struct | FIX_T |
Functions | |
static void | next_state (dsfmt_t *dsfmt) |
calculate next state | |
static void | add (dsfmt_t *dest, dsfmt_t *src) |
static void | add_fix (dsfmt_t *dsfmt) |
void | dSFMT_jump (dsfmt_t *dsfmt, const char *jump_string) |
jump ahead using jump_string | |
Variables | |
struct FIX_T | fix_table [] |
do jump using jump polynomial.
Copyright (C) 2012 Mutsuo Saito, Makoto Matsumoto, Hiroshima University and The University of Tokyo. All rights reserved.
The 3-clause BSD License is applied to this software, see LICENSE.txt
static void add | ( | dsfmt_t * | dest, |
dsfmt_t * | src | ||
) | [inline, static] |
Referenced by dSFMT_jump().
static void add_fix | ( | dsfmt_t * | dsfmt | ) | [inline, static] |
References FIX_T::fix, and FIX_T::mexp.
Referenced by dSFMT_jump().
void dSFMT_jump | ( | dsfmt_t * | dsfmt, |
const char * | jump_string | ||
) |
jump ahead using jump_string
dsfmt | dSFMT internal state input and output. |
jump_string | string which represents jump polynomial. |
References add(), add_fix(), and next_state().
static void next_state | ( | dsfmt_t * | dsfmt | ) | [inline, static] |
{ {521, {UINT64_C(0x3fff56977f035125), UINT64_C(0x3ff553857b015035), UINT64_C(0x4034434434434434), UINT64_C(0x0140151151351371)}}, {1279, {UINT64_C(0x3ff87befce70e89f), UINT64_C(0x3ff5f6afa3c60868), UINT64_C(0xa4ca4caccaccacdb), UINT64_C(0x40444444444c44c4)}}, {4253, {UINT64_C(0x3ff85a66da51a81a), UINT64_C(0x3ff4f4aeab9688eb), UINT64_C(0x20524524534d34d3), UINT64_C(0xc9cc9cc9cc9ccdcf)}}, {216091, {UINT64_C(0x3ff096d54a871071), UINT64_C(0x3ffafa9bfbd5d55d), UINT64_C(0x0470470470573573), UINT64_C(0x0250250251259259)}}, {0, {}} }