分配随机数流函数
分配随机数流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; }
父主题: 高性能函数