beta#
ベータ分布の乱数を生成します。
説明#
beta クラス・オブジェクトは、generate 関数で使用され、形状パラメーター \(p\) と \(q\)、変位 \(\alpha\)、スケール・パラメーター \((b, \beta)\) を持つベータ分布の乱数を生成します。ここで、\(p\)、\(q\)、\(\alpha\)、\(\beta\) \(\in R; p > 0; q > 0; \beta > 0\) です。
確率密度関数は次のように表されます。
累積分布関数は次のようになります。
ここで \(B(p, 1)\) は完全ベータ関数です。
API#
構文#
namespace oneapi::mkl::rng::device {
template<typename RealType, typename Method>
class beta {
public:
using method_type = Method;
using result_type = RealType;
beta() : beta((RealType)1.0, (RealType)1.0, (RealType)0.0, (RealType)1.0){}
explicit beta(RealType p, RealType q, RealType a, RealType b);
explicit beta(const param_type& pt);
RealType p() const;
RealType q() const;
RealType a() const;
RealType b() const;
param_type param() const;
std::size_t count_rejected_numbers() const;
void param(const param_type& pt);
};
}インクルード・ファイル#
oneapi/mkl/rng/device.hpp
テンプレート・パラメーター#
|
生成された値のタイプ。固有の値は次のとおりです:
|
|
生成メソッド。固有の値は次のとおりです:
配布テンプレート・パラメーター・メソッドの説明を参照してください。 |
注
ベクトル数学関数に基づく追加の最適化を有効にするには、MKL_RNG_USE_BINARY_CODE マクロを定義し、インテル® oneAPI マス・カーネル・ライブラリー・リンクラインのアドバイザー (英語) で生成された出力に従って oneMKL 静的ライブラリーをリンクします。一部のハードウェアではパフォーマンスが向上する可能性があります。
入力パラメーター#
名前 |
タイプ |
説明 |
|---|---|---|
p |
|
形状 |
q |
|
形状 |
a |
|
変位 \(\alpha\)。 |
b |
|
スケール係数 \(\beta\)。 |
特別なメソッド#
std::size_t count_rejected_numbers() const
最後の generate 関数呼び出し中に拒否された乱数の数を返します。generate 呼び出しがない場合、0 を返します。