The 'Ziggurat' pseudo-random number generator (or PRNG), introduced by Marsaglia and Tsang (2000, <doi:10.18637/jss.v005.i08>) and further improved by Leong et al (2005, <doi:10.18637/jss.v012.i07>), offers a lightweight and very fast PRNG for the normal, exponential, and uniform distributions. It is provided here in a small zero-dependency package. It can be used from R as well as from 'C/C++' code in other packages as is demonstrated by four included sample packages using four distinct methods to use the PRNG presented here in client package. The implementation is influenced by our package 'RcppZiggurat' which offers a comparison among multiple alternative implementations but presented here in a lighter-weight implementation that is easier to use by other packages. The PRNGs provided are generally faster than the ones in base R: on our machine, the relative gains for normal, exponential and uniform are on the order of 7.4, 5.2 and 4.7 times faster than base R. However, these generators are of potentially lesser quality and shorter period so if in doubt use of the base R functions remains the general recommendation.
| Version: | 0.0.2 |
| Published: | 2025-02-07 |
| DOI: | 10.32614/CRAN.package.zigg |
| Author: | Dirk Eddelbuettel |
| Maintainer: | Dirk Eddelbuettel <edd at debian.org> |
| BugReports: | https://github.com/eddelbuettel/zigg/issues |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| URL: | https://github.com/eddelbuettel/zigg |
| NeedsCompilation: | yes |
| Materials: | README, NEWS, ChangeLog |
| In views: | Distributions |
| CRAN checks: | zigg results |
| Reference manual: | zigg.html , zigg.pdf |
| Package source: | zigg_0.0.2.tar.gz |
| Windows binaries: | r-devel: zigg_0.0.2.zip, r-release: zigg_0.0.2.zip, r-oldrel: zigg_0.0.2.zip |
| macOS binaries: | r-release (arm64): zigg_0.0.2.tgz, r-oldrel (arm64): zigg_0.0.2.tgz, r-release (x86_64): zigg_0.0.2.tgz, r-oldrel (x86_64): zigg_0.0.2.tgz |
| Old sources: | zigg archive |
| Reverse depends: | Rfast |
| Reverse linking to: | ctsmTMB, rangen, Rfast, Rfast2 |
Please use the canonical form https://CRAN.R-project.org/package=zigg to link to this page.
Need a high-speed mirror for your open-source project?
Contact our mirror admin team at info@clientvps.com.
This archive is provided as a free public service to the community.
Proudly supported by infrastructure from VPSPulse , RxServers , BuyNumber , UnitVPS , OffshoreName and secure payment technology by ArionPay.