Developer Reference

Contents

vRngMultinomial

Generates multinomially distributed random numbers.

Syntax

status
=
viRngMultinomial
(
method
,
stream
,
n
,
r
,
ntrial
,
k
,
p
);
Include Files
  • mkl.h
Input Parameters
method
const MKL_INT
Generation method. The specific value is as follows:
VSL_RNG_METHOD_MULTINOMIAL_ MULTPOISSON
stream
VSLStreamStatePtr
Pointer to the stream state structure.
n
const MKL_INT
Number of random values to be generated.
ntrial
const int
Number of independent trials
m
.
k
const int
Number of possible outcomes.
p
const double*
Probability vector of
k
possible outcomes.
Output Parameters
r
int*
Array of
n
random vectors of dimension
k
.
Description
The
vRngMultinomial
function generates multinomially distributed random numbers with
m
independent trials and
k
possible mutually exclusive outcomes, with corresponding probabilities
p
i
, where
p
i
∈R; 0 ≤p
i
≤ 1, m∈N, k∈N
.
The probability distribution is given by:
Equation
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.
Return Values
VSL_ERROR_OK, VSL_STATUS_OK
Indicates no error (execution was successful).
VSL_ERROR_NULL_PTR
stream
is a NULL pointer.
VSL_RNG_ERROR_BAD_STREAM
stream
is not a valid random stream.
VSL_RNG_ERROR_BAD_UPDATE
A callback function for an abstract BRNG returns an invalid number of updated entries in a buffer; that is,
< 0
or
> nmax
.
VSL_RNG_ERROR_NO_NUMBERS
A callback function for an abstract BRNG returns
0
as the number of updated entries in a buffer.
VSL_RNG_ERROR_ARS5_NOT_SUPPORTED
An ARS-5 random number generator is not supported on the CPU running the application.
VSL_DISTR_MULTINOMIAL_BAD_PROBABILITY_ARRAY
Bad multinomial distribution probability array.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.