配布テンプレート・パラメーター・メソッド

配布テンプレート・パラメーター・メソッド#

メソッドタイプ

配布

数学説明

uniform_method::standard

uniform_method::accurate

uniform

標準メソッド。現在、これらの関数には 1 つのメソッドしかありません。uniform_method::accurate は追加の s および d データタイプをチェックします。integer データタイプの場合、dBRNG データタイプとして使用します (s BRNG データタイプは GPU 上のuniform_method::standard メソッドで使用されます)。

gaussian_method::box_muller

gaussian

次の式に従って、均一に分布する数値 u1 と u2 のペアから正規分布する乱数 x を生成します。 \(x = \sqrt {-2 \ln u_1} \sin {2 \pi u_2}\)

gaussian_method::box_muller2

gaussian

次の式に従って、均一に分布する数値 u1 と u2 のペアから正規分布する乱数 x1 と x2 を生成します: \(x_1 = \sqrt{-2 \ln u_1} \sin {2 \pi u_2}\) \(x_2 = \sqrt{-2 \ln u_1} \cos {2 \pi u_2}\) 対数正規分布: 生成された正規分布の乱数 x1 と x2 は対数正規分布に変換されます。

gaussian_method::icdf geometric_method::icdf

gaussian

geometric

逆累積分布関数 (ICDF) 法。

exponential_method::icdf exponential_method::icdf_accurate

exponential

逆累積分布関数 (ICDF) 法。

weibull_method::icdf

weibull_method::icdf_accurate

weibull

逆累積分布関数 (ICDF) 法。

cauchy_method::icdf

cauchy

逆累積分布関数 (ICDF) 法。

rayleigh_method::icdf

rayleigh_method::icdf_accurate

rayleigh

逆累積分布関数 (ICDF) 法。

lognormal_method::icdf lognormal_method::icdf_accurate

lognormal

逆累積分布関数 (ICDF) 法。

lognormal_method::box_muller2 lognormal_method::box_muller2_accurate

lognormal

正規分布の乱数 x1 と x2 は、次の式に従って均一に分布する数値 u1 と u2 のペアを通じて生成されます: \(x_1 = -2 \ln u_1 \sin {2 \pi u_2}\) \(x_2 = -2 \ln u_1 \cos {2 \pi u_2}\) 次に、x1 と x2 は対数正規分布に変換されます。

gumbel_method::icdf

gumbel

逆累積分布関数 (ICDF) 法。

bernoulli_method::icdf

bernoulli

逆累積分布関数 (ICDF) 法。

gamma_method::marsaglia gamma_method::marsaglia_accurate

gamma

α > 1 の場合、ガンマ分布乱数は、適切にスケールされた正規乱数の立方として生成されます。0.6 ≤α < 1 の場合、ガンマ分布乱数は、ワイブル分布からの棄却を使用して生成されます。α < 0.6 の場合、ガンマ分布乱数は、指数分布の変換を使用して取得されます。α = 1 の場合、ガンマ分布は指数分布に縮小されます。

beta_method::cja

beta_method::cja_accurate

beta

チェン・ジョンク・アトキンソン法。min(p, q) > 1 の場合、Cheng 法が使用されます。min(p, q) < 1 の場合、Johnk 法が使用されます。q + K·p2+  C≤ 0 (K = 0.852..., C=-0.956...) の場合、それ以外の場合は Atkinson スイッチング アルゴリズムが使用されます。max(p, q) < 1 の場合、Johnk 法が使用されます。min(p, q) < 1, max(p, q)> 1 の場合、Atkinson スイッチング アルゴリズムが使用されます (CJA は Cheng、Johnk、Atkinson の略)。p = 1 または q = 1 の場合、逆累積分布関数法が使用されます。p = 1 および q = 1 の場合、ベータ分布は均一分布に縮小されます。

chi_square_method::gamma_based

chi_square

(最も一般的): ν 17 または ν が奇数で 5 ν 15 の場合、カイ二乗分布は次のパラメーターを持つガンマ分布に簡約されます: 形状 α = ν / 2 、オフセット a = 0、スケール係数 β = 2。ガンマ分布の乱数が生成されます。

gaussian_mv_method::box_muller gaussian_mv_method::box_muller2 gaussian_mv_method::icdf

gaussian_mv

多変量ガウス分布に対する BoxMuller 法。多変量ガウス分布に対する BoxMuller_2 法。逆累積分布関数 (ICDF) 法。

binomial_method::btpe

binomial

4つの領域に分解した ntrial·min(p, 1p) 30 の受け入れ/拒否法:

2 つの平行四辺形

三角形

左指数関数の末尾

右指数関数の末尾

poisson_method::ptpe

poisson

4つの領域に分解した λ≥ 27 の受け入れ/拒否法:

2 つの平行四辺形

三角形

左指数関数の末尾

右指数関数の末尾

poisson_method::gaussian_icdf_based poisson_v_method::gaussian_icdf_based

poisson poisson_v

λ≥ 1 の場合、ガウス逆 CDF によるポアソン逆 CDF 近似に基づく方法。λ < 1 の場合、テーブル・ルックアップ法が使用されます。

hypergeometric_method::h2pe

hypergeometric

3 つの領域に分解した大規模分布モードの受け入れ/拒否法:

長方形

左指数関数の末尾

右指数関数の末尾

negative_binomial_method::nbar

negative_binomial

承認/拒否法: \(\frac{(a-1) \cdot (1-p)}{p} \geq 100\) を 5 つの領域に分解します。

長方形

(2) 台形

左指数関数の末尾

右指数関数の末尾

multinomial_method::poisson_icdf_based

multinomial

パラメーター mk、および確率ベクトル p を持つ多項分布。多項分布の乱数はポアソン近似法によって生成されます。