libstdc++
std::piecewise_linear_distribution< _RealType > Class Template Reference

#include <random>

Classes

struct  param_type
 

Public Types

typedef _RealType result_type
 

Public Member Functions

template<typename _InputIteratorB, typename _InputIteratorW>
 piecewise_linear_distribution (_InputIteratorB __bfirst, _InputIteratorB __bend, _InputIteratorW __wbegin)
 
 piecewise_linear_distribution (const param_type &__p)
 
template<typename _Func>
 piecewise_linear_distribution (initializer_list< _RealType > __bl, _Func __fw)
 
template<typename _Func>
 piecewise_linear_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_linear_distribution< _RealType1 > &__x)
 
bool operator== (const piecewise_linear_distribution &__d1, const piecewise_linear_distribution &__d2)
 
template<typename _RealType1, typename _CharT, typename _Traits>
std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is, std::piecewise_linear_distribution< _RealType1 > &__x)
 

Detailed Description

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

A piecewise_linear_distribution random number distribution.

This distribution produces random numbers $ x, b_0 \leq x < b_n $, distributed over each subinterval $ [b_i, b_{i+1}) $ according to the probability mass function $ p(x | b_0, ..., b_n, \rho_0, ..., \rho_n) = \rho_i $, for $ b_i \leq x < b_{i+1} $.

Since
C++11

Definition at line 6074 of file random.h.

Member Typedef Documentation

◆ result_type

template<typename _RealType = double>
typedef _RealType std::piecewise_linear_distribution< _RealType >::result_type

The type of the range of the distribution.

Definition at line 6081 of file random.h.

Constructor & Destructor Documentation

◆ piecewise_linear_distribution() [1/5]

template<typename _RealType = double>
std::piecewise_linear_distribution< _RealType >::piecewise_linear_distribution ( )
inline

Definition at line 6146 of file random.h.

◆ piecewise_linear_distribution() [2/5]

template<typename _RealType = double>
template<typename _InputIteratorB, typename _InputIteratorW>
std::piecewise_linear_distribution< _RealType >::piecewise_linear_distribution ( _InputIteratorB __bfirst,
_InputIteratorB __bend,
_InputIteratorW __wbegin )
inline

Definition at line 6151 of file random.h.

◆ piecewise_linear_distribution() [3/5]

template<typename _RealType = double>
template<typename _Func>
std::piecewise_linear_distribution< _RealType >::piecewise_linear_distribution ( initializer_list< _RealType > __bl,
_Func __fw )
inline

Definition at line 6158 of file random.h.

◆ piecewise_linear_distribution() [4/5]

template<typename _RealType = double>
template<typename _Func>
std::piecewise_linear_distribution< _RealType >::piecewise_linear_distribution ( size_t __nw,
_RealType __xmin,
_RealType __xmax,
_Func __fw )
inline

Definition at line 6164 of file random.h.

◆ piecewise_linear_distribution() [5/5]

template<typename _RealType = double>
std::piecewise_linear_distribution< _RealType >::piecewise_linear_distribution ( const param_type & __p)
inlineexplicit

Definition at line 6171 of file random.h.

Member Function Documentation

◆ __generate() [1/3]

template<typename _RealType = double>
template<typename _ForwardIterator, typename _UniformRandomNumberGenerator>
void std::piecewise_linear_distribution< _RealType >::__generate ( _ForwardIterator __f,
_ForwardIterator __t,
_UniformRandomNumberGenerator & __urng )
inline

Definition at line 6260 of file random.h.

◆ __generate() [2/3]

template<typename _RealType = double>
template<typename _ForwardIterator, typename _UniformRandomNumberGenerator>
void std::piecewise_linear_distribution< _RealType >::__generate ( _ForwardIterator __f,
_ForwardIterator __t,
_UniformRandomNumberGenerator & __urng,
const param_type & __p )
inline

Definition at line 6267 of file random.h.

◆ __generate() [3/3]

template<typename _RealType = double>
template<typename _UniformRandomNumberGenerator>
void std::piecewise_linear_distribution< _RealType >::__generate ( result_type * __f,
result_type * __t,
_UniformRandomNumberGenerator & __urng,
const param_type & __p )
inline

Definition at line 6274 of file random.h.

◆ densities()

template<typename _RealType = double>
std::vector< double > std::piecewise_linear_distribution< _RealType >::densities ( ) const
inline

Return a vector of the probability densities of the distribution.

Definition at line 6203 of file random.h.

◆ intervals()

template<typename _RealType = double>
std::vector< _RealType > std::piecewise_linear_distribution< _RealType >::intervals ( ) const
inline

Return the intervals of the distribution.

Definition at line 6186 of file random.h.

◆ max()

template<typename _RealType = double>
result_type std::piecewise_linear_distribution< _RealType >::max ( ) const
inline

Returns the least upper bound value of the distribution.

Definition at line 6238 of file random.h.

◆ min()

template<typename _RealType = double>
result_type std::piecewise_linear_distribution< _RealType >::min ( ) const
inline

Returns the greatest lower bound value of the distribution.

Definition at line 6228 of file random.h.

◆ operator()() [1/2]

template<typename _RealType = double>
template<typename _UniformRandomNumberGenerator>
result_type std::piecewise_linear_distribution< _RealType >::operator() ( _UniformRandomNumberGenerator & __urng)
inline

Generating functions.

Definition at line 6249 of file random.h.

Referenced by operator()().

◆ operator()() [2/2]

template<typename _RealType>
template<typename _UniformRandomNumberGenerator>
piecewise_linear_distribution< _RealType >::result_type std::piecewise_linear_distribution< _RealType >::operator() ( _UniformRandomNumberGenerator & __urng,
const param_type & __p )

Definition at line 3130 of file bits/random.tcc.

◆ param() [1/2]

template<typename _RealType = double>
param_type std::piecewise_linear_distribution< _RealType >::param ( ) const
inline

Returns the parameter set of the distribution.

Definition at line 6213 of file random.h.

◆ param() [2/2]

template<typename _RealType = double>
void std::piecewise_linear_distribution< _RealType >::param ( const param_type & __param)
inline

Sets the parameter set of the distribution.

Parameters
__paramThe new parameter set of the distribution.

Definition at line 6221 of file random.h.

◆ reset()

template<typename _RealType = double>
void std::piecewise_linear_distribution< _RealType >::reset ( )
inline

Resets the distribution state.

Definition at line 6179 of file random.h.

Friends And Related Symbol Documentation

◆ operator<<

template<typename _RealType = double>
template<typename _RealType1, typename _CharT, typename _Traits>
std::basic_ostream< _CharT, _Traits > & operator<< ( std::basic_ostream< _CharT, _Traits > & __os,
const std::piecewise_linear_distribution< _RealType1 > & __x )
friend

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

Parameters
__osAn output stream.
__xA piecewise_linear_distribution random number distribution.
Returns
The output stream with the state of __x inserted or in an error state.

◆ operator==

template<typename _RealType = double>
bool operator== ( const piecewise_linear_distribution< _RealType > & __d1,
const piecewise_linear_distribution< _RealType > & __d2 )
friend

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

Definition at line 6284 of file random.h.

◆ operator>>

template<typename _RealType = double>
template<typename _RealType1, typename _CharT, typename _Traits>
std::basic_istream< _CharT, _Traits > & operator>> ( std::basic_istream< _CharT, _Traits > & __is,
std::piecewise_linear_distribution< _RealType1 > & __x )
friend

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

Parameters
__isAn input stream.
__xA piecewise_linear_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: