Penguin

Differences between version 2 and revision by previous author of erand48(3).

Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History

Newer page: version 2 Last edited on Friday, March 26, 2004 8:14:39 am by JohnMcPherson Revert
Older page: version 1 Last edited on Tuesday, June 4, 2002 12:24:17 am by perry Revert
@@ -1,117 +1 @@
-DRAND48  
-!!!DRAND48  
-NAME  
-SYNOPSIS  
-DESCRIPTION  
-CONFORMING TO  
-NOTES  
-SEE ALSO  
-----  
-!!NAME  
-  
-  
-drand48, erand48, lrand48, nrand48, mrand48, jrand48, srand48, seed48, lcong48 - generate uniformly distributed pseudo-random numbers  
-!!SYNOPSIS  
-  
-  
-__#include  
-__ ''xsubi''__[[3]);  
-long int lrand48(void);  
-long int nrand48(unsigned short int__ ''xsubi''__[[3]);  
-long int mrand48(void);  
-long int jrand48(unsigned short int__ ''xsubi''__[[3]);  
-void srand48(long int__ ''seedval''__);  
-unsigned short int *__''seed48(unsigned''__short__''int'' __seed16v [[3]);  
-void lcong48(unsigned short int__ ''param''__[[7]);  
-__  
-!!DESCRIPTION  
-  
-  
-These functions generate pseudo-random numbers using the  
-linear congruential algorithm and 48-bit integer  
-arithmetic.  
-  
-  
-The __ drand48()__ and __erand48()__ functions return  
-non-negative double-precision floating-point values  
-uniformly distributed between [[., 1.).  
-  
-  
-The __lrand48()__ and __nrand48()__ functions return  
-non-negative long integers uniformly distributed between  
-and 2^31.  
-  
-  
-The __mrand48()__ and __jrand48()__ functions return  
-signed long integers uniformly distributed between -2^31 and  
-2^31.  
-  
-  
-The __srand48()__, __seed48()__ and __lcong48()__  
-functions are initialization functions, one of which should  
-be called before using __drand48()__, __lrand48()__ or  
-__mrand49()__. The functions __erand48()__,  
-__nrand48()__ and __jrand48()__ do not require an  
-initialization function to be called first.  
-  
-  
-All the functions work by generating a sequence of 48-bit  
-integers, ''Xi'', according to the linear congruential  
-formula:  
-  
-  
-__ Xn+1 = (aXn + c) mod m, where n  
-__The parameter ''m'' = 2^48, hence 48-bit integer arithmetic is performed. Unless __lcong48()__ is called, ''a'' and ''c'' are given by:  
-  
-  
-__ a = 0x5DEECE66D  
-c = 0xB  
-__The value returned by any of the functions __drand48()__, __erand48()__, __lrand48()__, __nrand48()__, __mrand48()__ or __jrand48()__ is computed by first generating the next 48-bit ''Xi'' in the sequence. Then the appropriate number of bits, according to the type of data item to be returned, is copied from the high-order bits of ''Xi'' and transformed into the returned value.  
-  
-  
-The functions __drand48()__, __lrand48()__ and  
-__mrand48()__ store the last 48-bit ''Xi'' generated  
-in an internal buffer. The functions __erand48()__,  
-__nrand48()__ and __jrand48()__ require the calling  
-program to provide storage for the successive ''Xi''  
-values in the array argument ''xsubi''. The functions are  
-initialized by placing the initial value of ''Xi'' into  
-the array before calling the function for the first  
-time.  
-  
-  
-The initializer function __srand48()__ sets the high  
-order 32-bits of ''Xi'' to the argument ''seedval''.  
-The low order 16-bits are set to the arbitrary value  
-0x330E.  
-  
-  
-The initializer function __seed48()__ sets the value of  
-''Xi'' to the 48-bit value specified in the array  
-argument ''seed16v''. The previous value of ''Xi'' is  
-copied into an internal buffer and a pointer to this buffer  
-is returned by __seed48()__.  
-  
-  
-The initialization function __lcong48()__ allows the user  
-to specify initial values for ''Xi'', ''a'' and  
-''c''. Array argument elements ''param[[-2]'' specify  
-''Xi'', ''param[[ 3-5]'' specify ''a'', and  
-''param[[6]'' specifies ''c''. After __lcong48( )__  
-has been called, a subsequent call to either  
-__srand48()__ or __seed48()__ will restore the  
-standard values of ''a'' and ''c'' .  
-!!CONFORMING TO  
-  
-  
-SVID 3  
-!!NOTES  
-  
-  
-These functions are declared obsolete by SVID 3, which  
-states that rand(3) should be used instead.  
-!!SEE ALSO  
-  
-  
-rand(3), random(3)  
-----  
+See the drand48(3) man page
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.