Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::linear...ntial_engine(3) C++ Standard Libarystd::linear...ntial_engine(3)

NAME
       std::linear_congruential_engine - std::linear_congruential_engine

Synopsis
	  Defined in header <random>
	  template<

	  class	UIntType,
	  UIntType a,			       (since C++11)
	  UIntType c,
	  UIntType m

	  > class linear_congruential_engine;

	  linear_congruential_engine is	a random number	engine based on	Linear
       congruential
	  generator  (LCG).  A LCG has a state that consists of	a single inte-
       ger.

	  The	 transition    algorithm    of	  the	 LCG	function    is
       \(\small{x_{i+1}\leftarrow(a x_i	+
	  c)\mod m}\)x
	  i+1  (ax
	  i+c) mod m.

	  The following	typedefs define	the random number engine with two com-
       monly used
	  parameter sets:

	  Defined in header <random>
	  Type		      Definition
			      std::linear_congruential_en-
       gine<std::uint_fast32_t,	16807, 0,
			      2147483647>
	  minstd_rand0(C++11)
			      Discovered in 1969 by Lewis, Goodman and Miller,
       adopted as
			      "Minimal standard" in 1988 by Park and Miller
			      std::linear_congruential_en-
       gine<std::uint_fast32_t,	48271, 0,
			      2147483647>
	  minstd_rand(C++11)
			      Newer  "Minimum  standard", recommended by Park,
       Miller, and
			      Stockmeyer in 1993

Template parameters
		     The result	type generated by the generator. The effect is
       undefined if
	  UIntType - this is not one of	unsigned short,	unsigned int, unsigned
       long, or
		     unsigned long long.
	  a	   - the multiplier term
	  c	   - the increment term
	  m	   - the modulus term

Member types
	  Member type	     Definition
	  result_type(C++11) The integral type generated by  the  engine.  Re-
       sults are undefined
			     if	this is	not an unsigned	integral type.

Member functions
Construction and Seeding
	  constructor	   constructs the engine
	  (C++11)	   (public member function)
	  seed		   sets	the current state of the engine
	  (C++11)	   (public member function)

Generation
	  operator()	    advances the engine's state	and returns the	gener-
       ated value
	  (C++11)	   (public member function)
	  discard	   advances the	engine's state by a specified amount
	  (C++11)	   (public member function)

Characteristics
	  min		   gets	the smallest  possible	value  in  the	output
       range
	  [static] (C++11) (public static member function)
	  max		   gets	the largest possible value in the output range
	  [static] (C++11) (public static member function)

Non-member functions
	  operator==		      compares	the  internal  states  of  two
       pseudo-random number
	  operator!=		    engines
	  (C++11)		    (function)
	  (C++11)(removed in C++20)
	  operator<<		     performs  stream  input  and  output   on
       pseudo-random number
	  operator>>		    engine
	  (C++11)		    (function template)

Member constants
	  constexpr UIntType multiplier	  the multiplier term (a).
	  [static] (C++11)		  (public static member	constant)
	  constexpr UIntType increment	  the increment	term (c).
	  [static] (C++11)		  (public static member	constant)
	  constexpr UIntType modulus	  the modulus term (m).
	  [static] (C++11)		  (public static member	constant)
	  constexpr UIntType default_seed the default seed (1).
	  [static] (C++11)		  (public static member	constant)

http://cppreference.com		  2022.07.31	 std::linear...ntial_engine(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::linear_congruential_engine&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help