dSFMT-jump: dSFMT-jump.c File Reference

dSFMT-jump 0.1

- Main Page
- Namespaces
- Data Structures
- Files

- File List
- Globals

Data Structures | Functions | Variables
dSFMT-jump.c File Reference

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 []

## Detailed Description

do jump using jump polynomial.

Author:
  Mutsuo Saito (Hiroshima University)
  Makoto Matsumoto (The University of Tokyo)

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

## Function Documentation

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

Parameters:

  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]`

calculate next state

Parameters:

  dsfmt | dSFMT internal state

Referenced by dSFMT_jump().

## Variable Documentation

struct FIX_T fix_table[]

Initial value:

     {
            {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, {}}
        }