---
title: 正态分布函数
description: "生成符合正态分布（normal distribution）的随机数向量。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2200/accel/kunpengaccel_kml_16_0420.html
sourcePath: /source/zh/kunpengboostkithistory/2200/accel/kunpengaccel_kml_16_0420.html
indexId: 8eb55b30eb7a97526121d044c58e41233f002f046275a422b2eff30ae0d1b08274
---
# 正态分布函数

生成符合正态分布（normal distribution）的随机数向量。

#### 接口定义

KmlVslResult kml_vsl_rnorm(VslPolicy *policy, N01type normal_method, int len, double *dst, double mean, double sd)


#### 概率密度函数


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| len | int | 输入输出的长度。 | 输入 |
| mean | double | mean参数。 | 输入 |
| sd | double | SD参数。 | 输入 |
| dst | double类型指针 | 指向结果的指针。 | 输出 |
| Policy | VslPolicy类型指针 | 指向随机数生成器结构体指针。 | 输入 |
| Normal\_method | N01type类型枚举体 | 生成正态分布的算法。 | 输入 |


#### 依赖

#include "kvsl.h"


#### 示例

```
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include "kvsl.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_rnorm(policy, BOX_MULLER, len, dst, 0, 1);
for (int i = 0; i < len; i++) {
printf("%f ", dst[i]);
}
printf("\n");
kml_vsl_destroy(policy);
}
```
