zoukankan      html  css  js  c++  java
  • 对数正态分布的随机数

    一、功能

    产生对数正态分布的随机数。

    二、方法简介

    对数正态分布的概率密度函数为

    [f(x)=left{egin{matrix} frac{1}{xsqrt{2pi }sigma }expleft ( - frac{(lnx-mu )^{2}}{2sigma ^{2}} ight ) & x> 0\ 0 & x leqslant 0 end{matrix} ight. ]

    对数正态分布的均值为(e^{mu + sigma ^{2} / 2}),方差为((e^{sigma ^{2}}-1)e^{2mu + sigma ^{2}})

    首先产生正态分布的随机变量(y),然后通过变换(x=e^{y}),产生对数正态分布的随机变量(x),具体方法如下:

    1. 产生正态分布的随机数(y),即(u sim N(mu , sigma ))
    2. 计算(x=e^{y})

    三、使用说明

    是用C语言实现产生对数正态分布分布随机数的方法如下:

    /************************************
    	u		---对数正态分布的参数mu
    	sigma	---对数正态分布的参数sigma
    	s		---随机数种子
    ************************************/
    #include "math.h"
    #include "gauss.c"
    
    double lognorm(double u, double sigma, long int *s)
    {
    	double x;
    	double y;
    
    	y = gauss(u, sigma, s);
    	x = exp(y);
    	return(x);
    }
    

    gauss.c文件参见正态分布的随机数

  • 相关阅读:
    连续型随机变量
    离散型随机变量
    vue1.0生命周期
    vue2.0生命周期函数
    vue2.0 vue.set()
    vue2.0 vue.extend()的拓展
    vue2.0 自定义指令详解
    vue2.0 v-model指令
    vue2.0排序应该注意的问题
    vue2.0版本指令v-if与v-show的区别
  • 原文地址:https://www.cnblogs.com/liam-ji/p/11674212.html
Copyright © 2011-2022 走看看