分配随机数流stream。
int vslLeapfrogStream(VSLStreamStatePtr stream, const SizeType k, const SizeType nstreams);
参数名 |
类型 |
描述 |
输入/输出 |
---|---|---|---|
stream |
VSLStreamStatePtr类型指针 |
指向随机数流结构体的指针。 |
输入、输出 |
k |
SizeType |
节点下标。 |
输入 |
nstreams |
SizeType |
节点最大数量。 |
输入 |
#include "krng.h"
#include <stdio.h> #include <stdlib.h> #include "krng.h" int main() { /* initialize stream with given BRNG type and seed */ VSLStreamStatePtr stream; unsigned seed = 42; int errcode = vslNewStream(&stream, VSL_BRNG_MCG59, seed); if (errcode != VSL_STATUS_OK) { fprintf(stderr, "Failure in newstream\n"); return 0; } int n = 10; int forward_skip = 10; if (vslLeapfrogStream(stream, n, forward_skip)) { fprintf(stderr, "Failure in vslLeapfrogStream, skip = %d\n", forward_skip); return 0; } /* deinitialize the stream */ errcode = vslDeleteStream(&stream); if (errcode != VSL_STATUS_OK) { fprintf(stderr, "Failure in deleting stream\n"); return 0; } return 0; }