Visible to Intel only — GUID: GUID-7CE4DFD4-7E4E-41D7-B8D3-3FFD42AB25A2
Visible to Intel only — GUID: GUID-7CE4DFD4-7E4E-41D7-B8D3-3FFD42AB25A2
?larnv
Returns a vector of random numbers from a uniform or normal distribution.
Syntax
lapack_int LAPACKE_slarnv (lapack_int idist , lapack_int * iseed , lapack_int n , float * x );
lapack_int LAPACKE_dlarnv (lapack_int idist , lapack_int * iseed , lapack_int n , double * x );
lapack_int LAPACKE_clarnv (lapack_int idist , lapack_int * iseed , lapack_int n , lapack_complex_float * x );
lapack_int LAPACKE_zlarnv (lapack_int idist , lapack_int * iseed , lapack_int n , lapack_complex_double * x );
Include Files
- mkl.h
Description
The routine ?larnv returns a vector of n random real/complex numbers from a uniform or normal distribution.
This routine calls the auxiliary routine ?laruv to generate random real numbers from a uniform (0,1) distribution, in batches of up to 128 using vectorisable code. The Box-Muller method is used to transform numbers from a uniform to a normal distribution.
Input Parameters
A <datatype> placeholder, if present, is used for the C interface data types in the C interface section above. See C Interface Conventions for the C interface principal conventions and type definitions.
- idist
-
Specifies the distribution of the random numbers: for slarnv and dlarnv:
= 1: uniform (0,1)
= 2: uniform (-1,1)
= 3: normal (0,1).
for clarnv and zlarnv:
= 1: real and imaginary parts each uniform (0,1)
= 2: real and imaginary parts each uniform (-1,1)
= 3: real and imaginary parts each normal (0,1)
= 4: uniformly distributed on the disc abs(z) < 1
= 5: uniformly distributed on the circle abs(z) = 1
- iseed
-
Array, size (4).
On entry, the seed of the random number generator; the array elements must be between 0 and 4095, and iseed(4) must be odd.
- n
-
The number of random numbers to be generated.
Output Parameters
- x
-
Array, size (n). The generated random numbers.
- iseed
-
On exit, the seed is updated.
Return Values
This function returns a value info.
If info = 0, the execution is successful.