Intel® oneAPI Math Kernel Library Developer Reference - C
Generates multinomially distributed random numbers.
status = viRngMultinomial( method, stream, n, r, ntrial, k, p );
const MKL_INT
Generation method. The specific value is as follows:
VSL_RNG_METHOD_MULTINOMIAL_MULTPOISSON
VSLStreamStatePtr
Pointer to the stream state structure.
const MKL_INT
Number of random values to be generated.
const int
Number of independent trials m.
const int
Number of possible outcomes.
const double*
Probability vector of k possible outcomes.
int*
Array of n random vectors of dimension k.
The vRngMultinomial function generates multinomially distributed random numbers with m independent trials and k possible mutually exclusive outcomes, with corresponding probabilities pi, where pi∈R; 0 ≤pi≤ 1, m∈N, k∈N.
The probability distribution is given by:
Product and Performance Information |
---|
Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |
For information on random number generators used for statistical computations in MKL Vector Statistics, see MKL Vector Statistics.
Indicates no error (execution was successful).
stream is a NULL pointer.
stream is not a valid random stream.
A callback function for an abstract BRNG returns an invalid number of updated entries in a buffer; that is, < 0 or > nmax.
A callback function for an abstract BRNG returns 0 as the number of updated entries in a buffer.
An ARS-5 random number generator is not supported on the CPU running the application.
Bad multinomial distribution probability array.