Cylindrical Bessel functions of integral order.
An integer, binary logarithmic statistics counter
Algorithms for finding roots and extrema of one-argument real functions using bracketing.
Module contains utility functions to convert floats to integer types. Old conversion functions eg. ocean.math.Math.rndint or ocean.math.Math.rndlong currently round x.5 to the nearest even integer. So rndint(4.5) == 4 and rndint(5.5) == 6. This is undesired behaviour for some situations, so the functions in this module round to the nearest integer. So floatToInt(4.5, output) sets output == 5 and floatToInt(5.5, output) sets output == 6 (this is round to nearest integer away from zero rounding see http://man7.org/linux/man-pages/man3/lround.3.html for details on the stdc lround, lroundf, llround, and llroundf functions).
Helper class useful for producing apache bench style output about value distributions. For example:
Implementation of the gamma and beta functions, and their integrals.
Calculates the average using an accumulative technique (i.e, not all the values are provided at once). The struct doesn't store any previous values.
Struct implementation of a moving average designed to handle irregularly spaced data. In principle this can also be used as a serializable record struct.
Simple integer range struct with various comparison functions.
Sliding Average Module
A timing statistics counter for any sort of transaction that takes a microsecond to a second to complete. Collects the following statistical information: - a logarithmic time histogram with bins from ≥1µs to <1s, three bins per power of ten in a stepping of 1 .. 2 .. 5 .., plus one bin for each <1µs and ≥1s, - the total number of transactions and the aggregated total completion time.
Struct emulating a large (bigger than ulong) non-negative integer of fixed range (defined via template argument). ulong but still fixed in size (defined via template argument).