Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Class template discrete_distribution

Boost , Chapter 1. Boost.Compute , Reference

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext

Class template discrete_distribution

boost::compute::discrete_distribution — Produces random integers on the interval [0, n), where probability of each integer is given by the weight of the ith integer divided by the sum of all weights.

Synopsis

// In header: <boost/compute/random/discrete_distribution.hpp>
template<typename IntType = uint_> 
class discrete_distribution {
public:
  // types
  typedef IntType result_type;
  // construct/copy/destruct
  discrete_distribution();
  template<typename InputIterator> 
    discrete_distribution(InputIterator, InputIterator);
  ~discrete_distribution();
  // public member functions
  ::std::vector< double > probabilities() const;
  result_type min BOOST_PREVENT_MACRO_SUBSTITUTION() const;
  result_type max BOOST_PREVENT_MACRO_SUBSTITUTION() const;
  template<typename OutputIterator, typename Generator> 
    void generate(OutputIterator, OutputIterator, Generator &, 
                  command_queue &);
  // private member functions
   BOOST_STATIC_ASSERT_MSG(boost::is_integral< IntType >::value, 
                           "Template argument must be integral");
};

Description

Следующий пример показывает, как настроить дискретное распределение для получения 0 и 1 с равной вероятностью.


discrete_distribution public construct/copy/destruct

  1. <
    discrete_distribution();
    >

    Создает новое дискретное распределение с одним весом p = {1}. Такое распределение дает только нули.

  2. <
    template<typenameInputIterator>
     discrete_distribution(InputIteratorfirst,InputIteratorlast);
    >

    Создает новое дискретное распределение с весами, заданными диапазоном [<first>,<last>].

  3. <
    ~discrete_distribution();
    >Уничтожает<discrete_distribution>объект.

discrete_distribution public member functions

  1. <
    ::std::vector<double>probabilities()const;
    >Возвращает вероятности.
  2. <
    result_typeminBOOST_PREVENT_MACRO_SUBSTITUTION()const;
    >Возвращает минимальное потенциально генерируемое значение.
  3. <
    result_typemaxBOOST_PREVENT_MACRO_SUBSTITUTION()const;
    >Возвращает максимальное потенциально генерируемое значение.
  4. <
    template<typenameOutputIterator,typenameGenerator>
     voidgenerate(OutputIteratorfirst,OutputIteratorlast,
                   Generator&generator,command_queue&queue);
    >

    Генерирует равномерно распределенные целые числа и сохраняет их в диапазоне<first>,<last>.

discrete_distribution private member functions

  1. <
    BOOST_STATIC_ASSERT_MSG(boost::is_integral<IntType>::value,
                            "Template argument must be integral");
    >

PrevUpHomeNext

Статья Class template discrete_distribution раздела Chapter 1. Boost.Compute Reference может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Reference ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-07-04 13:09:24/0.0034959316253662/0