RcppAlgos: High Performance Tools for Combinatorics and Computational
Mathematics
Provides optimized functions and flexible combinatorial iterators
implemented in C++ for solving problems in combinatorics and
computational mathematics. Utilizes the RMatrix class from 'RcppParallel'
for thread safety. There are combination/permutation functions with
constraint parameters that allow for generation of all results of a vector
meeting specific criteria (e.g. generating integer partitions
or finding all combinations such that the sum is between two bounds).
Capable of generating specific combinations/permutations (e.g. retrieve
only the nth lexicographical result) which sets up nicely for
parallelization as well as random sampling. Gmp support permits exploration
where the total number of results is large (e.g. comboSample(10000, 500,
n = 4)). Additionally, there are several high performance number theoretic
functions that are useful for problems common in computational mathematics.
Some of these functions make use of the fast integer division library
'libdivide'. The primeSieve function is based on the segmented sieve of
Eratosthenes implementation by Kim Walisch. It is also efficient for large
numbers by using the cache friendly improvements originally developed by
Tomás Oliveira. Finally, there is a prime counting function that implements
Legendre's formula based on the work of Kim Walisch.
Version: |
2.5.3 |
Imports: |
gmp, methods |
LinkingTo: |
cpp11 |
Suggests: |
testthat, numbers, partitions, microbenchmark, knitr, RcppBigIntAlgos, rmarkdown |
Published: |
2022-03-31 |
Author: |
Joseph Wood |
Maintainer: |
Joseph Wood <jwood000 at gmail.com> |
BugReports: |
https://github.com/jwood000/RcppAlgos/issues |
License: |
GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
URL: |
https://github.com/jwood000/RcppAlgos, https://gmplib.org/,
https://github.com/kimwalisch/primesieve, http://libdivide.com,
https://github.com/kimwalisch/primecount,
http://ridiculousfish.com/,
http://sweet.ua.pt/tos/software/prime_sieve.html |
NeedsCompilation: |
yes |
SystemRequirements: |
C++11, gmp (>= 4.2.3) |
Materials: |
README NEWS |
In views: |
NumericalMathematics |
CRAN checks: |
RcppAlgos results |
Documentation:
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=RcppAlgos
to link to this page.