From 1c2dcd1125d4a542a7b4b291e8de1f3b3cdc86a0 Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Thu, 30 Jul 2015 18:48:58 +0200 Subject: By passing numbers between R and C as doubles we can avoid the limitations of the R integer type. This allows us to create a uniform RNG. --- SyncRNG.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'SyncRNG.R') diff --git a/SyncRNG.R b/SyncRNG.R index 23be4d2..1849d89 100644 --- a/SyncRNG.R +++ b/SyncRNG.R @@ -11,13 +11,13 @@ SyncRNG <- setRefClass('SyncRNG', initialize=function(..., seed=0) { seed <<- seed tmp <- .Call('R_syncrng_seed', - as.integer(seed)) + as.numeric(seed)) state <<- tmp[1:4] callSuper(...) }, randi=function() { tmp <- .Call('R_syncrng_rand', - as.integer(state)) + as.numeric(state)) state <<- tmp[1:4] return(tmp[5]) }, -- cgit v1.2.3