log_normal_double#

nvmath.device.random.log_normal_double(state, mean, stddev)#

从对数正态分布中采样一个双精度值,使用指定的位生成器状态。

参数:
  • state – 对应于其中一个位生成器的状态对象。

  • mean – 均值。

  • stddev – 标准差。

返回值:

类型为 float64 的值。

示例

以下内核的 states 参数应为已初始化的位生成器状态数组。有关如何创建和初始化位生成器状态的更多详细信息,请参阅 nvmath.device.random.init() 的文档。

>>> from numba import cuda
>>> from nvmath.device import random
>>> compiled_apis = random.Compile()
>>> @cuda.jit(link=compiled_apis.files, extensions=compiled_apis.extension)
... def kernel(states, mean, stddev):
...     i = cuda.grid(1)
...     value = random.log_normal_double(states[i], mean, stddev)