libstdc++: std::piecewise_constant_distribution< _RealType > Class Template Reference (original) (raw)

#include <[random](a00167%5Fsource.html)>

Public Member Functions
template<typename _InputIteratorB , typename _InputIteratorW >
piecewise_constant_distribution (_InputIteratorB __bfirst, _InputIteratorB __bend, _InputIteratorW __wbegin)
piecewise_constant_distribution (const param_type &__p)
template<typename _Func >
piecewise_constant_distribution (initializer_list< _RealType > __bl, _Func __fw)
template<typename _Func >
piecewise_constant_distribution (size_t __nw, _RealType __xmin, _RealType __xmax, _Func __fw)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >
void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng)
template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >
void __generate (_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
template<typename _UniformRandomNumberGenerator >
void __generate (result_type *__f, result_type *__t, _UniformRandomNumberGenerator &__urng, const param_type &__p)
std::vector< double > densities () const
std::vector< _RealType > intervals () const
result_type max () const
result_type min () const
template<typename _UniformRandomNumberGenerator >
result_type operator() (_UniformRandomNumberGenerator &__urng)
template<typename _UniformRandomNumberGenerator >
result_type operator() (_UniformRandomNumberGenerator &__urng, const param_type &__p)
param_type param () const
void param (const param_type &__param)
void reset ()
Friends
template<typename _RealType1 , typename _CharT , typename _Traits >
std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const std::piecewise_constant_distribution< _RealType1 > &__x)
bool operator== (const piecewise_constant_distribution &__d1, const piecewise_constant_distribution &__d2)
template<typename _RealType1 , typename _CharT , typename _Traits >
std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::piecewise_constant_distribution< _RealType1 > &__x)

template<typename _RealType = double>
class std::piecewise_constant_distribution< _RealType >

A piecewise_constant_distribution random number distribution.

This distribution produces random numbers ![$ x, b_0 \leq x < b_n ](https://gcc.gnu.org/onlinedocs/libstdc++/latest−doxygen/form30.png),uniformlydistributedovereachsubinterval!, uniformly distributed over each subinterval ![](https://gcc.gnu.org/onlinedocs/libstdc++/latestdoxygen/form30.png),uniformlydistributedovereachsubinterval![ b_i, b_{i+1}) $ according to the probability mass function

[
  p(x | b_0, ..., b_n, \rho_0, ..., \rho_{n-1})
    = \rho_i \cdot \frac{b_{i+1} - x}{b_{i+1} - b_i}
      + \rho_{i+1} \cdot \frac{ x - b_i}{b_{i+1} - b_i}
]

for $ b_i \leq x < b_{i+1} $.

Since

C++11

Definition at line 5794 of file random.h.

result_type

template<typename _RealType = double>

The type of the range of the distribution.

Definition at line 5801 of file random.h.

template<typename _RealType = double>

piecewise_constant_distribution() [2/5]

template<typename _RealType = double>

template<typename _InputIteratorB , typename _InputIteratorW >

piecewise_constant_distribution() [3/5]

template<typename _RealType = double>

template<typename _Func >

piecewise_constant_distribution() [4/5]

template<typename _RealType = double>

template<typename _Func >

piecewise_constant_distribution() [5/5]

template<typename _RealType = double>

__generate() [1/3]

template<typename _RealType = double>

template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >

__generate() [2/3]

template<typename _RealType = double>

template<typename _ForwardIterator , typename _UniformRandomNumberGenerator >

__generate() [3/3]

template<typename _RealType = double>

template<typename _UniformRandomNumberGenerator >

densities()

template<typename _RealType = double>

intervals()

template<typename _RealType = double>

max()

template<typename _RealType = double>

min()

template<typename _RealType = double>

operator()() [1/2]

template<typename _RealType = double>

template<typename _UniformRandomNumberGenerator >

operator()() [2/2]

param() [1/2]

template<typename _RealType = double>

Returns the parameter set of the distribution.

Definition at line 5931 of file random.h.

param() [2/2]

template<typename _RealType = double>

Sets the parameter set of the distribution.

Parameters

__param The new parameter set of the distribution.

Definition at line 5939 of file random.h.

reset()

template<typename _RealType = double>

Resets the distribution state.

Definition at line 5898 of file random.h.

operator<<

template<typename _RealType = double>

template<typename _RealType1 , typename _CharT , typename _Traits >

Inserts a piecewise_constant_distribution random number distribution __x into the output stream __os.

Parameters

__os An output stream.
__x A piecewise_constant_distribution random number distribution.

Returns

The output stream with the state of __x inserted or in an error state.

operator==

template<typename _RealType = double>

Return true if two piecewise constant distributions have the same parameters.

Definition at line 6002 of file random.h.

operator>>

template<typename _RealType = double>

template<typename _RealType1 , typename _CharT , typename _Traits >

Extracts a piecewise_constant_distribution random number distribution __x from the input stream __is.

Parameters

__is An input stream.
__x A piecewise_constant_distribution random number generator engine.

Returns

The input stream with __x extracted or in an error state.


The documentation for this class was generated from the following files: