Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ dlaruv(3P) — Sun WorkShop 5.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

dlaruv(3P)

NAME

dlaruv - return a vector of n random real numbers from a uniform (0,1)

SYNOPSIS

SUBROUTINE DLARUV( ISEED, N, X )

INTEGER N

INTEGER ISEED( 4 )

DOUBLE PRECISION X( N )

 

#include <sunperf.h>

void dlaruv(int ∗iseed, int n, double ∗x) ;

PURPOSE

DLARUV returns a vector of n random real numbers from a uniform (0,1) distribution (n <= 128). 
 
This is an auxiliary routine called by DLARNV and ZLARNV.
 

ARGUMENTS

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. N <= 128.

X (output) DOUBLE PRECISION array, dimension (N)
The generated random numbers.

FURTHER DETAILS

This routine uses a multiplicative congruential method with modulus 2∗∗48 and multiplier 33952834046453 (see G.S.Fishman,
2∗∗b: an exhaustive analysis for b = 32 and a partial analysis for b = 48’, Math. Comp. 189, pp 331-344, 1990).
 
48-bit integers are stored in 4 integer array elements with 12 bits per element. Hence the routine is portable across machines with integers of 32 bits or more.
 

SunOS 5.0  —  Last change: 10 Dec 1998

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026