Visible to Intel only — GUID: GUID-82CFE626-8C2F-46F5-BE50-38180834C492
Visible to Intel only — GUID: GUID-82CFE626-8C2F-46F5-BE50-38180834C492
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 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 |
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.