對數正態分佈的隨機數

2022-09-08 15:00:15 字數 717 閱讀 6892

產生對數正態分佈的隨機數。

對數正態分佈的概率密度函式為

\[f(x)=\left\

\frac\sigma }exp\left ( - \frac}} \right ) & x> 0\\

0 & x \leqslant 0

\end\right.

\]對數正態分佈的均值為\(e^ / 2}\),方差為\((e^}-1)e^}\)。

首先產生正態分佈的隨機變數\(y\),然後通過變換\(x=e^\),產生對數正態分佈的隨機變數\(x\),具體方法如下:

產生正態分佈的隨機數\(y\),即\(u \sim n(\mu , \sigma )\);

計算\(x=e^\)。

是用c語言實現產生對數正態分佈分布隨機數的方法如下:

/************************************

u ---對數正態分佈的引數mu

sigma ---對數正態分佈的引數sigma

s ---隨機數種子

************************************/

#include "math.h"

#include "gauss.c"

double lognorm(double u, double sigma, long int *s)

gauss.c檔案參見正態分佈的隨機數

golang實現正態分佈生產隨機數

在網上扒了好久也沒有想要的正態分佈生產器,乾脆參考網上的例子自己做個吧!正態分佈公式 正態分佈公式 func normalfloat64 x int64 miu int64 sigma int64 float64 正態分佈隨機數生產器 min 最小值,max 最大值,miu 期望值 均值 sigma...

C Random得隨機數求均值 方差 正態分佈

06年遙感上機複試的程式 請用vc或c編寫以下程式 正態分佈隨機數的產生。步驟如下 1 利用隨機函式rand 生成 0,1 區間的100個均勻分布隨機數 2 計算這100個均勻分布隨機數的均值和方差,計算公式如下 3 將這100個均勻分布的隨機數,及其均值和方差儲存到文字檔案 c temp sour...

randn 產生正態分佈的隨機數或矩陣的函式

randn 產生均值為 0,方差 2 1 標準差 1的正態分佈的隨機數或矩陣的函式。用法 y randn n 返回乙個 n n的隨機項的矩陣。如果 n不是個數量,將返回錯誤資訊。y randn m,n 或y randn m n 返回乙個 m n的隨機項矩陣。y randn m,n,p,或y rand...