Generates random numbers uniformly distributed over the interval [a, b).
Fortran:
status = virnguniform( method, stream, n, r, a, b )
C:
status = viRngUniform( method, stream, n, r, a, b );
The FORTRAN 77 interfaces are specified in the mkl_vsl.f77 include file, the Fortran 90 interfaces are specified in the mkl_vsl.f90 include file, and the C interfaces are specified in the mkl_vsl_functions.h include file.
Name |
Type |
Description |
---|---|---|
method |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Generation method; the specific value is as follows: Standard method. Currently there is only one method for this distribution generator. |
stream |
FORTRAN 77: INTEGER*4 stream(2) Fortran 90: TYPE (VSL_STREAM_STATE), INTENT(IN) C: VSLStreamStatePtr |
Fortran: Descriptor of the stream state structure. C: Pointer to the stream state structure |
n |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Number of random values to be generated |
a |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Left interval bound a |
b |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Right interval bound b |
Name |
Type |
Description |
---|---|---|
r |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(OUT) C: int* |
Vector of n random numbers uniformly distributed over the interval [a,b) |
The Uniform function generates random numbers uniformly distributed over the interval [a, b), where a, b are the left and right bounds of the interval respectively, and a, b∈Z; a < b.
The probability distribution is given by:
The cumulative distribution function is as follows:
Indicates no error, execution is successful.
stream is a NULL pointer.
stream is not a valid random stream.
Callback function for an abstract BRNG returns an invalid number of updated entries in a buffer, that is, < 0 or > nmax.
Callback function for an abstract BRNG returns 0 as the number of updated entries in a buffer.
Period of the generator has been exceeded.
Copyright © 1994 - 2011, Intel Corporation. All rights reserved.