威布尔分布函数
生成符合威布尔分布(weibull distribution)的随机数向量。
接口定义
KmlVslResult kml_vsl_rweibull(VslPolicy *policy, N01type normal_method, int len, double *dst, double shape, double scale)
概率密度函数

参数
| 参数名 | 类型 | 描述 | 输入/输出 | 
|---|---|---|---|
| len | int | 输入输出的长度。 | 输入 | 
| shape | double | shape参数。 | 输入 | 
| scale | double | scale参数。 | 输入 | 
| dst | double类型指针 | 指向结果的指针。 | 输出 | 
| Policy | VslPolicy类型指针 | 指向随机数生成器结构体指针。 | 输入 | 
| Normal_method | N01type类型枚举体 | 生成正态分布的算法。 | 输入 | 
依赖
#include "krng.h"
示例
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include "krng.h"
int main()
{
    VslPolicy *policy;
    kml_vsl_init(&policy, LECUYER_CMRG, time(NULL));
    int len = 10;
    double *dst = (double *)malloc(sizeof(double) * len);
    int a = kml_vsl_rweibull(policy, BOX_MULLER, len, dst, 0, 1);
    for (int i = 0; i < len; i++) {
        printf("%f ", dst[i]);
    }
    printf("\n");
    kml_vsl_destroy(policy);
}
父主题: 直接法函数