---
name: "slarnv"
section: "3lapack"
platform: "linux"
package: "liblapack-doc"
version: "3.2.1-8"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/slarnv/3lapack"
---

# slarnv(3lapack)

returns a vector of n random real numbers from a uniform or normal distribution

## NAME

SLARNV - returns a vector of n random real numbers from a uniform or normal distribution

## SYNOPSIS

- SUBROUTINE SLARNV(

  IDIST, ISEED, N, X )

- INTEGER

  IDIST, N

- INTEGER

  ISEED( 4 )

- REAL

  X( \* )

## PURPOSE

SLARNV returns a vector of n random real numbers from a uniform or normal distribution.

## ARGUMENTS

- IDIST (input) INTEGER

  Specifies the distribution of the random numbers:\
   \= 1:  uniform (0,1)\
   \= 2:  uniform (-1,1)\
   \= 3:  normal (0,1)

- ISEED (input/output) INTEGER array, dimension (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. On exit, the seed is updated.

- N (input) INTEGER

  The number of random numbers to be generated.

- X (output) REAL array, dimension (N)

  The generated random numbers.

## FURTHER DETAILS

This routine calls the auxiliary routine SLARUV 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.
