C# Class NSoft.NFramework.Numerics.BetaRandomizer

베타 분포를 가지는 난수 발생기

a, b가 둘다 1보다 클때, f(0)=f(1)=0 이고 x = (a-1) / (a+b-2) 인 삼각형 산의 모양을 가진다.

Gamma 분포가 하한을 결정하기 쉽지만, Beta 분포는 상,하한 분포를 결정하기 쉽다. a가 b보다 클 수록 1에 치우친 분포, b가 a보다 클 때에는 0에 치우친 분포를 나타낸다.

평균 = a / (a+b), 분산 = a*b/((a+b)^2 * (a + b + 1))
a,b 의 값이 커질수록 표준편차가 작아져서 Narrow한 정규분포를 가지게 된다.

Inheritance: RandomizerBase
显示文件 Open project: debop/NFramework

Public Methods

Method Description
BetaRandomizer ( double a, double b ) : System

생성자

BetaRandomizer ( double a, double b, Func randomNumberFunc = null ) : System

생성자

Next ( ) : double

난수 발생

Method Details

BetaRandomizer() public method

생성자
public BetaRandomizer ( double a, double b ) : System
a double 하한
b double 상한
return System

BetaRandomizer() public method

생성자
public BetaRandomizer ( double a, double b, Func randomNumberFunc = null ) : System
a double 하한
b double 상한
randomNumberFunc Func 사용자 난수 발생기
return System

Next() public method

난수 발생
public Next ( ) : double
return double