C# 클래스 NSoft.NFramework.Numerics.Distributions.Continuous.Beta

Implements the Beta distribution. For details about this distribution, see Wikipedia - Beta distribution.

There are a few special cases for the parameterization of the Beta distribution. When both shape parameters are positive infinity, the Beta distribution degenerates to a point distribution at 0.5. When one of the shape parameters is positive infinity, the distribution degenerates to a point distribution at the positive infinity. When both shape parameters are 0.0, the Beta distribution degenerates to a Bernoulli distribution with parameter 0.5. When one shape parameter is 0.0, the distribution degenerates to a point distribution at the non-zero shape parameter.

The distribution will use the System.Random by default. Users can get/set the random number generator by using the RandomSource property.

The statistics classes will check all the incoming parameters whether they are in the allowed range. This might involve heavy computation. Optionally, by setting Control.CheckDistributionParameters to false, all parameter checks can be turned off.

상속: IContinuousDistribution
파일 보기 프로젝트 열기: debop/NFramework

공개 메소드들

메소드 설명
Beta ( double a, double b, Func randomFactory = null ) : System

베타분포 생성자

CumulativeDistribution ( double x ) : double

확률 분포 계산을 위한 누적분포함수

Density ( double x ) : double

분포의 확률 밀도

DensityLn ( double x ) : double

분포의 로그 확률 밀도

Sample ( ) : double

분포의 무작위 값을 제공합니다.

Sample ( Random rnd, double a, double b ) : double
Samples ( ) : IEnumerable

현 분포의 무작위 값을 열거합니다.

Samples ( Random rnd, double a, double b ) : IEnumerable
ToString ( ) : string

비공개 메소드들

메소드 설명
AssertParameters ( double a, double b ) : void

베타 분포에 맞는 계수인지 확인합니다. 둘다 0보다 큰 양수여야 합니다.

SampleBeta ( Random rnd, double a, double b ) : double
SetParameters ( double a, double b ) : void

메소드 상세

Beta() 공개 메소드

베타분포 생성자
public Beta ( double a, double b, Func randomFactory = null ) : System
a double Beta 함수 계수 a
b double Beta 함수 계수 b
randomFactory Func Random 인스턴스 생성자
리턴 System

CumulativeDistribution() 공개 메소드

확률 분포 계산을 위한 누적분포함수
public CumulativeDistribution ( double x ) : double
x double The location at which to compute the cumulative distribution function.
리턴 double

Density() 공개 메소드

분포의 확률 밀도
public Density ( double x ) : double
x double
리턴 double

DensityLn() 공개 메소드

분포의 로그 확률 밀도
public DensityLn ( double x ) : double
x double
리턴 double

Sample() 공개 메소드

분포의 무작위 값을 제공합니다.
public Sample ( ) : double
리턴 double

Sample() 공개 정적인 메소드

public static Sample ( Random rnd, double a, double b ) : double
rnd System.Random
a double
b double
리턴 double

Samples() 공개 메소드

현 분포의 무작위 값을 열거합니다.
public Samples ( ) : IEnumerable
리턴 IEnumerable

Samples() 공개 정적인 메소드

public static Samples ( Random rnd, double a, double b ) : IEnumerable
rnd System.Random
a double
b double
리턴 IEnumerable

ToString() 공개 메소드

public ToString ( ) : string
리턴 string