home *** CD-ROM | disk | FTP | other *** search
-
- _R_a_n_d_o_m _N_u_m_b_e_r _G_e_n_e_r_a_t_i_o_n
-
- _D_e_s_c_r_i_p_t_i_o_n:
-
- the ``seed'' for all random number generation in R.
- The Wichmann-Hill generator is used which has a cycle
- length of 6.9536e12 (= prod(p-1)/4 where p is the
- length 3 vector of primes, below), see p.123 of Applied
- Statistics (1984) vol.33 which corrects the original
- article.
-
- _V_a_l_u_e:
-
- and p = (30269, 30307, 30323).
-
- _R_e_f_e_r_e_n_c_e_s:
-
- B.A. Wichmann and I. D. Hill (1982). Algorithm AS 183:
- An Efficient and Portable Pseudo-random Number Genera-
- tor, Applied Statistics, 31, 188-190; Remarks: 34,p.198
- and 35, p.89.
-
- A. De Matteis and S. Pagnutti (1993). Long-range Corre-
- lation Analysis of the Wichmann-Hill Random Number Gen-
- erator, Statist. Comput., 3, 67-70.
-
- _N_o_t_e:
-
- Initially, there is no seed; a new one is created,
- using "Randomize". Hence, student exercises will each
- have different simulation results, by default.
-
- _S_e_e _A_l_s_o:
-
- runif, rnorm, ....
-
- _E_x_a_m_p_l_e_s:
-
- runif(1); .Random.seed; runif(1); .Random.seed
- # If there is no seed, a ``random'' new one is created:
- rm(.Random.seed); runif(1); .Random.seed
- p.WH <- c(30269, 30307, 30323)
- a.WH <- c(171, 172, 170)
- R.seed <- function(i.seed = .Random.seed) (a.WH * i.seed) %% p.WH
- my.runif1 <- function(i.seed = .Random.seed)
- { ns <- R.seed(i.seed); sum(ns / p.WH) %% 1 }
-
- ##- This shows how 'runif(.)' works, just using R - functions :
- rs <- .Random.seed
- R.seed(rs); u <- runif(1); .Random.seed; c(u, my.runif1(rs))
-
-