public member function
<random>

std::weibull_distribution::(constructor)

(1)
explicit weibull_distribution ( result_type a = 1.0, result_type b = 1.0 );
(2)
explicit weibull_distribution ( const param_type& parm );
Construct Weibull distribution
Constructs a weibull_distribution object, adopting the distribution parameters specified either by a and b or by object parm.

Parameters

a
Distribution parameter a, which defines the shape of the distribution.
This shall be a positive value (a>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).
b
Distribution parameter b, which defines the scale of the distribution.
This shall be a positive value (b>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
// weibull_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::weibull_distribution<double> distribution (2.0,1.0);

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

  return 0;
}


Possible output:
some Weibull-distributed(2.0,1.0) results:
1.92423
1.45697
0.297437
1.11049
0.532098
0.333541
0.551191
1.51689
1.25831
0.807502

Complexity

Constant.

See also