柯西分布的随机数

一、功能

产生柯西分布的随机数。

二、方法简介

柯西分布的概率密度函数为

[f(x)=frac{eta }{pi [eta ^{2}+ (x - alpha)^{2}]} qquad eta > 0 ]

通常用(C(alpha ,eta ))表示,其分布函数为

[F(x)=frac{1}{2}+frac{1}{pi }arctg(frac{x-alpha}{eta }) ]

用逆变换法产生柯西分布(C(alpha ,eta ))的随机变量(x),其具体方法如下:

  1. 产生均匀分布的随机数(u),即(u sim U(0,1))
  2. 计算(x=alpha - frac{eta }{tg(pi x)})

三、使用说明

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

/************************************
	a       ---柯西分布参数a
	b    	---柯西分布参数b
	s       ---随机数种子
************************************/
#include "math.h"
#include "uniform.c"

double cauchy(double a, double b, long int *s)
{
	double u;
	double x;
	u = uniform(0.0, 1.0, s);
	x = a - b / tan(3.1415926 * u);
	return(x);
}

uniform.c文件参见均匀分布的随机数

原文地址:https://www.cnblogs.com/liam-ji/p/11677237.html