Type |
Changes |
By |
|
Add a user guide. Fixes NUMBERS-70. |
aherbert |
|
Add a Bill of Materials (BOM) to aid in dependency management when referencing
multiple Apache Commons Numbers artifacts. The BOM should be used to ensure all
imported artifacts are compatible. Fixes NUMBERS-190. |
aherbert |
|
"Precision": Allow Precision.compareTo using a maxUlps to be used for sorting.
This corrects handling of NaN comparisons. Fixes NUMBERS-185. |
aherbert |
|
"Precision": Reduce number of operations in Precision.equals using a maxUlps. Fixes NUMBERS-184. |
aherbert |
|
Updated support for the beta functions. "RegularizedBeta": Added the
complement and derivative of the regularized beta function.
Added "IncompleteBeta" and "Beta" classes.
Functionality is ported from the Boost C++ library. Fixes NUMBERS-181. |
aherbert |
|
Improve the binomial coefficient classes. Avoid recursive method calls.
Avoid overflow for BinomialCoefficientDouble for large results close to infinity.
Use precomputed factorials and the LogBeta function for efficiency. Fixes NUMBERS-183. |
aherbert |
|
"LogBeta": Avoid overflow for tiny arguments. Fixes NUMBERS-182. |
aherbert |
|
"GammaRatio": Compute the ratio of two gamma functions. Fixes NUMBERS-180. |
aherbert |
|
"BrentSolver": Avoid overflow creating the initial value between the lower and upper. |
aherbert |
|
"Erfcx": Compute a scaled complementary error function:
erfcx(z) = erfc(z) * exp(z*z). Fixes NUMBERS-177. |
aherbert |
|
"Factorial/FactorialDouble": Tabulate all factorials with exact 64-bit double
representations of n! up to n=170. This change deprecates the FactorialDouble
class and removes obsolete caching functionality. Fixes NUMBERS-178. |
aherbert |
|
"ContinuedFraction": Update to use a shared implementation with
GeneralizedContinuedFraction. Fixes NUMBERS-176. |
aherbert |
|
"Gamma/LogGamma/RegularizedGamma": Update the gamma function implementations to
increase accuracy and support for extreme values.
Functionality is ported from the Boost C++ library. Fixes NUMBERS-174. |
aherbert |
|
"GeneralizedContinuedFraction": A continued fraction class to compute using a
generator. Allows evaluation of continued fractions from a regular series where
coefficients can be computed iteratively from the previous coefficients. Fixes NUMBERS-175. |
aherbert |
|
"ContinuedFraction": Set a minimum bound on the relative error epsilon. Prevents
an infinite loop when the epsilon is zero. Fixes NUMBERS-173. |
aherbert |
|
"FactorialDouble": Prevent caching values that are infinite. The cache will support
factorials up to 170. |
aherbert |
|
"Erf/Erfc": Use a rational function approximation accurate to 53-bits of precision.
This replaces the use of the regularized gamma functions P and Q and increases accuracy
at extreme limits of the function. Execution speed is improved.
Functionality is ported from the Boost C++ library. Fixes NUMBERS-172. |
aherbert |
|
"InverseErfc": Support full range of [0, 2]. This lowers the supported
minimum value from 2^-53 to double min value. Execution speed is improved.
Functionality is ported from the Boost C++ library. Fixes NUMBERS-171. |
aherbert |
|
"RegularizedBeta": Detect edge cases for arguments that can be evaluated by
exploiting properties of the regularized beta function. Fixes NUMBERS-170. |
aherbert |
|
"BrentSolver": Identify brackets with small objective values. Fixes NUMBERS-168. |
aherbert |
|
Fix wrong javadoc. Thanks to Arturo Bernal. |
aherbert |