piecewise_linear_distribution::piecewise_linear_distribution
分布を作成します。
// default constructor piecewise_linear_distribution(); // constructs using a range of intervals, [firstI, lastI), with // matching weights starting at firstW template<class InputIteratorI, class InputIteratorW> piecewise_linear_distribution(InputIteratorI firstI, InputIteratorI lastI, InputIteratorW firstW); // constructs using an initializer list for range of intervals, // with weights generated by function weightfunc template<class UnaryOperation> piecewise_linear_distribution(initializer_list<RealType> intervals, UnaryOperation weightfunc); // constructs using an initializer list for range of count intervals, // distributed uniformly over [xmin,xmax] with weights generated by function weightfunc template<class UnaryOperation> piecewise_linear_distribution(size_t count, RealType xmin, RealType xmax, UnaryOperation weightfunc); // constructs from an existing param_type structure explicit piecewise_linear_distribution(const param_type& parm);
パラメーター
firstI
ターゲット範囲内の先頭の要素を示す入力反復子。lastI
ターゲット範囲内の末尾の要素を示す入力反復子。firstW
重み範囲内の先頭の要素を示す入力反復子。intervals
分布の区間を含む initializer_list。count
分布範囲内にある要素の数。xmin
分布範囲内の最小値。xmax
分布範囲内の最大値。 xmin よりも大きい必要があります。weightfunc
分布の確率関数を表すオブジェクト。 パラメーターと戻り値の両方が double に変換可能である必要があります。parm
分布の作成に使用されるパラメーター構造体。
解説
既定のコンストラクターは、確率密度が 1 の、0 から 1 までの 1 つの区間を含むように、格納されているパラメーターを設定します。
反復子の範囲コンストラクター
template<class InputIteratorI, class InputIteratorW>
piecewise_linear_distribution(InputIteratorI firstI, InputIteratorI lastI,
InputIteratorW firstW);
は、シーケンスにわたる反復子の区間 [firstI, lastI) と、firstW で始まる対応する重みシーケンスを使用して分布オブジェクトを構築します。
初期化子リスト コンストラクター
template<class UnaryOperation>
piecewise_linear_distribution(initializer_list<RealType> intervals,
UnaryOperation weightfunc);
は、初期化子リスト intervals の区間と、関数 weightfunc から生成された重みを使用して分布オブジェクトを構築します。
次のように定義されたコンストラクターは
template<class UnaryOperation>
piecewise_linear_distribution(size_t count, RealType xmin, RealType xmax,
UnaryOperation weightfunc);
[xmin,xmax] で一様に分布した count 個の区間を含み、各区間に関数 weightfunc に応じた重みを割り当てる分布オブジェクトを構築します。weightfunc は 1 つのパラメーターを受け入れて戻り値を持ち、いずれも double に変換可能である必要があります。 前提条件: xmin < xmax。
次のように定義されたコンストラクターは
explicit piecewise_linear_distribution(const param_type& parm);
格納されたパラメーター構造体として parm を使用する分布オブジェクトを作成します。
必要条件
ヘッダー: <random>
名前空間: std