Skip to content

crnumerics 0.10.0

Latest

Choose a tag to compare

@anun333 anun333 released this 15 Oct 13:43
· 4 commits to main since this release

crdist adds double-precision uniform and exponential draws from its
Philox stream. crdist_uniform gives (2m + 1)·2⁻⁵³ from two words, exact,
and crdist_exponential the correctly rounded −log of it. Like crdist's
other samplers they are specified bit for bit, so a double-precision
simulation, such as the Gillespie algorithm, gets the same draws on every
machine; crdist-check computes them again with MPFR and compares every
bit. In Python, Stream.uniform and Stream.exponential take
dtype=np.float64, and pip install crdistr brings them.

A new example, examples/ssa-xplat, runs four classic reaction networks
through libRoadRunner, COPASI and GillesPy2 on eleven platforms, beside a
reference built on crdist. The stochastic trajectories were the same
everywhere. The same models solved as ODEs differed between x86 and Arm,
and COPASI's ODE results differed from one run to the next on macOS and
Windows.

ival, crlin, crfix, crnn and lowp are unchanged but for the version
strings, now 0.10.0.