focal (3) std::subtract_with_carry_engine.3cxx.gz

Provided by: libstdc++-8-doc_8.4.0-3ubuntu2_all bug

NAME

       std::subtract_with_carry_engine< _UIntType, __w, __s, __r > - The Marsaglia-Zaman generator.

SYNOPSIS

   Public Types
       typedef _UIntType result_type

   Public Member Functions
       template<typename _Sseq , typename  = typename std::enable_if<!std::is_same<_Sseq,
           subtract_with_carry_engine>::value> ::type> subtract_with_carry_engine (_Sseq &__q)
           Constructs a subtract_with_carry_engine random number engine seeded from the seed sequence __q.
       subtract_with_carry_engine (result_type __sd=default_seed)
           Constructs an explicitly seeded % subtract_with_carry_engine random number generator.
       void discard (unsigned long long __z)
           Discard a sequence of random numbers.
       result_type operator() ()
           Gets the next random number in the sequence.
       template<typename _Sseq > std::enable_if< std::is_class< _Sseq >::value >::type seed (_Sseq &__q)
           Seeds the initial state $x_0$ of the % subtract_with_carry_engine random number generator.
       void seed (result_type __sd=default_seed)
           Seeds the initial state $x_0$ of the random number generator.

   Static Public Member Functions
       static constexpr result_type max ()
           Gets the inclusive maximum value of the range of random integers returned by this generator.
       static constexpr result_type min ()
           Gets the inclusive minimum value of the range of random integers returned by this generator.

   Static Public Attributes
       static constexpr result_type default_seed
       static constexpr size_t long_lag
       static constexpr size_t short_lag
       static constexpr size_t word_size

   Friends
       template<typename _UIntType1 , size_t __w1, size_t __s1, size_t __r1, typename _CharT , typename _Traits
           > std::basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os,
           const std::subtract_with_carry_engine< _UIntType1, __w1, __s1, __r1 > &__x)
           Inserts the current state of a % subtract_with_carry_engine random number generator engine __x into
           the output stream __os.
       bool operator== (const subtract_with_carry_engine &__lhs, const subtract_with_carry_engine &__rhs)
           Compares two % subtract_with_carry_engine random number generator objects of the same type for
           equality.
       template<typename _UIntType1 , size_t __w1, size_t __s1, size_t __r1, typename _CharT , typename _Traits
           > std::basic_istream< _CharT, _Traits > & operator>> (std::basic_istream< _CharT, _Traits > &__is,
           std::subtract_with_carry_engine< _UIntType1, __w1, __s1, __r1 > &__x)
           Extracts the current state of a % subtract_with_carry_engine random number generator engine __x from
           the input stream __is.

Detailed Description

   template<typename _UIntType, size_t __w, size_t __s, size_t __r>
       class std::subtract_with_carry_engine< _UIntType, __w, __s, __r >" The Marsaglia-Zaman generator.

       This is a model of a Generalized Fibonacci discrete random number generator, sometimes referred to as the
       SWC generator.

       A discrete random nuober generator that produces pseudorandom numbers using: x_{i}tarrow(x_{i - s} - x_{i
       - r} - carry_{i-1}) d ]

       The size of the state is $r$ and the maximum period of the generator is $(m^r - m^s - 1)$.

       Definition at line 652 of file random.h.

Author

       Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++                                      std::subtract0with_carry_engine< _UIntType, __w, __s, __r >(3cxx)