STD::PIECEWISE_LINEAR_DISTRIBUTION(3cxx)
π NAME π
Okay so welcome to the <pink>std::piecewise_linear_distribution< _RealType >(3cxx)</pink> page, bestie β this is the libstdc++ manual entry for std::piecewise_linear_distribution< _RealType >, and the official one-liner is: A piecewise_linear_distribution random number distribution. That's the whole name vibe, slay. π
πΈ SYNOPSIS πΈ
#include <random>
π Classes π
struct param_typeβ the manual lists this parameter struct right here.
π Public Types π
typedef _RealType result_typeβ the public type alias, exactly as printed.
π Public Member Functions π
Here's the full squad, signatures kept exactly as printed because we do not mess with code, no cap:
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
Return a vector of the probability densities of the distribution.
std::vector< _RealType > intervals () const
Return the intervals of the distribution.
result_type max () const
Returns the least upper bound value of the distribution.
result_type min () const
Returns the greatest lower bound value of the distribution.
template<typename _UniformRandomNumberGenerator > result_type operator()
(_UniformRandomNumberGenerator &__urng)
Generating functions.
template<typename _UniformRandomNumberGenerator > result_type operator()
(_UniformRandomNumberGenerator &__urng, const param_type &__p)
param_type param () const
Returns the parameter set of the distribution.
void param (const param_type &__param)
Sets the parameter set of the distribution.
void reset ()
So real quick, the vibe check on these:
- There are four constructor overloads up there: the iterator-pair one with
__bfirst,__bend, and__wbegin; theparam_typeone; theinitializer_list< _RealType > __bl+_Func __fwone; and thesize_t __nw, _RealType __xmin, _RealType __xmax, _Func __fwone. Signatures above, untouched. π - There are three
__generateoverloads: two take_ForwardIterator __f, _ForwardIterator __t, _UniformRandomNumberGenerator &__urngand one of those also takesconst param_type &__p; the third takesresult_type *__f, result_type *__t, _UniformRandomNumberGenerator &__urng, const param_type &__p. densities()β returns a vector of the probability densities of the distribution.intervals()β returns the intervals of the distribution.max()β returns the least upper bound value of the distribution.min()β returns the greatest lower bound value of the distribution.operator()β the original literally labels these Generating functions. There are two overloads: one with_UniformRandomNumberGenerator &__urng, and one with_UniformRandomNumberGenerator &__urng, const param_type &__p.param()β returns the parameter set of the distribution.param(const param_type &__param)β sets the parameter set of the distribution.reset()β resets the distribution state.
π«Ά 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)
operator<<β inserts apiecewise_linear_distributionrandom number distribution__xinto the output stream__os.operator==β returnstrueif two piecewise linear distributions have the same parameters.operator>>β extracts apiecewise_linear_distributionrandom number distribution__xfrom the input stream__is.
π¦ Detailed Description π¦
template<typename _RealType = double>
class std::piecewise_linear_distribution< _RealType >
A piecewise_linear_distribution random number distribution. π
The math formatting in the original is a little glitched, so here is exactly what it says, not fixed, because the rule is keep every detail:
This distribution produces random numbers $ x, b_0 x < b_n ho_n) =
distributed over each subinterval $ [b_i, b_{i+1}ho_0,c...,ing to the
probability mass function $ p(x | b_0, ..., b_n,
$, for $ b_i x < b_{i+1} $.
Since:
C++11
π Member Typedef Documentation π
template<typename _RealType = double> typedef _RealType
std::piecewise_linear_distribution< _RealType >::result_type
result_typeβ the type of the range of the distribution. Cute and simple.
π Member Function Documentation π
Each one below keeps its [inline] badge and reference notes, bestie.
densities()βtemplate<typename _RealType = double> std::vector< double > std::piecewise_linear_distribution< _RealType >::densities () const [inline]- Returns a vector of the probability densities of the distribution.
- References:
std::vector< _Tp, _Alloc >::empty().
intervals()βtemplate<typename _RealType = double> std::vector< _RealType > std::piecewise_linear_distribution< _RealType >::intervals () const [inline]- Returns the intervals of the distribution.
- References:
std::vector< _Tp, _Alloc >::empty().
max()βtemplate<typename _RealType = double> result_type std::piecewise_linear_distribution< _RealType >::max () const [inline]- Returns the least upper bound value of the distribution.
- References:
std::vector< _Tp, _Alloc >::back(), andstd::vector< _Tp, _Alloc >::empty().
min()βtemplate<typename _RealType = double> result_type std::piecewise_linear_distribution< _RealType >::min () const [inline]- Returns the greatest lower bound value of the distribution.
- References:
std::vector< _Tp, _Alloc >::empty(), andstd::vector< _Tp, _Alloc >::front().
operator()βtemplate<typename _RealType = double> template<typename _UniformRandomNumberGenerator > result_type std::piecewise_linear_distribution< _RealType >::operator() (_UniformRandomNumberGenerator & __urng) [inline]- Generating functions.
- References:
std::piecewise_linear_distribution< _RealType >::operator()(). - Referenced by:
std::piecewise_linear_distribution< _RealType >::operator()().
param()βtemplate<typename _RealType = double> param_type std::piecewise_linear_distribution< _RealType >::param () const [inline]- Returns the parameter set of the distribution.
param(const param_type &__param)βtemplate<typename _RealType = double> void std::piecewise_linear_distribution< _RealType >::param (const param_type & __param) [inline]- Sets the parameter set of the distribution.
- Parameters:
__paramβ the new parameter set of the distribution.
reset()βtemplate<typename _RealType = double> void std::piecewise_linear_distribution< _RealType >::reset () [inline]- Resets the distribution state.
π«Ά 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_distributionrandom number distribution__xinto the output stream__os. - Parameters:
__osβ an output stream.__xβ apiecewise_linear_distributionrandom number distribution.
- Returns:
- The output stream with the state of
__xinserted or in an error state.
- The output stream with the state of
- Inserts a
operator==βtemplate<typename _RealType = double> bool operator== (const piecewise_linear_distribution< _RealType > & __d1, const piecewise_linear_distribution< _RealType > & __d2) [friend]- Return
trueif two piecewise linear distributions have the same parameters.
- Return
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_distributionrandom number distribution__xfrom the input stream__is. - Parameters:
__isβ an input stream.__xβ apiecewise_linear_distributionrandom number generator engine.
- Returns:
- The input stream with
__xextracted or in an error state.
- The input stream with
- Extracts a
β¨ Author β¨
Generated automatically by Doxygen for libstdc++ from the source code β yes, the docs are literally built by Doxygen, no cap. π«Ά
Okay bestie, that's the whole page. Footer energy: libstdstd::piecewise...on< _RealType >(3cxx) β source/version: libstdc++; date didn't show up in the footer, so we are not inventing one. Stay random, stay iconic. πβ¨
π¦ where this page comes from
- ubuntu noble: libstdc++-14-doc 14-20240412-0ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms