piecewise_constant_distribution::piecewise_constant_distribution
Формирует распределение.
// default constructor piecewise_constant_distribution(); // constructs using a range of intervals, [firstI, lastI), with // matching weights starting at firstW template<class InputIteratorI, class InputIteratorW> piecewise_constant_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_constant_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_constant_distribution(size_t count, RealType xmin, RealType xmax, UnaryOperation weightfunc); // constructs from an existing param_type structure explicit piecewise_constant_distribution(const param_type& parm);
Параметры
firstI
Итератор ввода первого элемента в диапазоне распределения.lastI
Итератор ввода последнего элемента в диапазоне распределения.firstW
Итератор ввода первого элемента в диапазоне весов.intervals
Объект initializer_list с интервалами распределения.count
Количество элементов в диапазоне распределения.xmin
Минимальное значение в диапазоне распределения.xmax
Максимальное значение в диапазоне распределения. Должно быть больше значения xmin.weightfunc
Объект, представляющий функцию вероятности распределения. Параметр и возвращаемое значение должны поддерживать преобразование в тип double.parm
Структура параметров, используемая для формирования распределения.
Заметки
Конструктор по умолчанию задает хранимые параметры таким образом, чтобы существовал один интервал от 0 до 1 с плотностью вероятности 1.
Конструктор диапазона итератора
template<class InputIteratorI, class InputIteratorW>
piecewise_constant_distribution(InputIteratorI firstI, InputIteratorI lastI,
InputIteratorW firstW);
создает объект распределения с интервалами от итераторов в последовательности интервала [firstI, lastI) и соответствующей последовательности весов начиная с firstW.
Конструктор списка инициализаторов
template<class UnaryOperation>
piecewise_constant_distribution(initializer_list<RealType> intervals,
UnaryOperation weightfunc);
создает объект распределения с интервалами из списка инициализаторов intervals и весами, полученными от функции weightfunc.
Конструктор, определенный как
template<class UnaryOperation>
piecewise_constant_distribution(size_t count, RealType xmin, RealType xmax,
UnaryOperation weightfunc);
, создает объект распределения с count интервалов, равномерно распределенных по [xmin,xmax]. При этом вес каждого интервала назначается в соответствии с weightfunc. Функция weightfunc должна принимать один параметр и использовать возвращаемое значение, которые должны поддерживать преобразование в тип double. Предусловие: xmin < xmax
Конструктор, определенный как
explicit piecewise_constant_distribution(const param_type& parm);
, создает объект распределения, используя parm как сохраненную структуру параметров.
Требования
Заголовок: <random>
Пространство имен: std