Developer Reference for Intel® oneAPI Math Kernel Library for C

ID 766684
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

?larnd

Returns a random real number from a uniform or normal distribution.

Syntax

float slarnd (lapack_int *idist, lapack_int *iseed);

double dlarnd (lapack_int *idist, lapack_int *iseed);

The data types for complex variations depend on whether or not the application links with Gnu Fortran (gfortran) libraries.

For non-gfortran (libmkl_intel_*) interface libraries:

void clarnd (lapack_complex_float *res, lapack_int *idist, lapack_int *iseed);

void zlarnd (lapack_complex_double *res, lapack_int *idist, lapack_int *iseed);

For gfortran (libmkl_gf_*) interface libraries:

lapack_complex_float clarnd (lapack_int *idist, lapack_int *iseed);

lapack_complex_double zlarnd (lapack_int *idist, lapack_int *iseed);

To understand the difference between the non-gfortran and gfortran interfaces and when to use each of them, see Dynamic Libraries in the lib/intel64 Directory in the oneAPI Math Kernel Library Developer Guide.

Include Files

  • mkl.h

Description

The routine ?larnd returns a random number from a uniform or normal distribution.

Input Parameters

idist

Specifies the distribution of the random numbers. For slarnd and dlanrd:

= 1: uniform (0,1)

= 2: uniform (-1,1)

= 3: normal (0,1).

For clarnd and zlanrd:

= 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[3] must be odd.

Output Parameters

iseed

On exit, the seed is updated.

Return Values

The function returns a random number (for complex variations libmkl_gf_* interface layer/libraries return the result as the parameter res).