public member function
<random>

std::lognormal_distribution::(constructor)

(1)
explicit lognormal_distribution ( result_type m = 0.0, result_type s = 1.0 );
(2)
explicit lognormal_distribution ( const param_type& parm );
Construct lognormal distribution
Constructs a lognormal_distribution object, adopting the distribution parameters specified either by m and s or by object parm.

Parameters

m
Mean of the underlying normal distribution formed by the logarithm transformations of the possible values in this distribution.
result_type is a member type that represents the type of the random numbers generated on each call to operator(). It is defined as an alias of the first class template parameter (RealType).
s
Standard deviation of the underlying normal distribution formed by the logarithm transformations of the possible values in this distribution.
This shall be a positive value (s>0).
result_type is a member type that represents the type of the random numbers generated on each call to operator(). It is defined as an alias of the first class template parameter (RealType).
parm
An object representing the distribution's parameters, obtained by a call to member function param.
param_type is a member type.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// lognormal_distribution example
#include <iostream>
#include <chrono>
#include <random>

int main()
{
  // construct a trivial random generator engine from a time-based seed:
  unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();
  std::default_random_engine generator (seed);

  std::lognormal_distribution<double> distribution (0.0,1.0);

  std::cout << "some lognormal-distributed(0.0,1.0) results:" << std::endl;
  for (int i=0; i<10; ++i)
    std::cout << distribution(generator) << std::endl;

  return 0;
}


Possible output:
some lognormal-distributed(0.0,1.0) results:
1.76931
0.426828
2.13448
3.41825
0.574683
1.7239
1.49771
1.27637
0.371665
1.13434

Complexity

Constant.

See also