Value | Meaning |
---|---|
Fast | Fast summation algorithm. |
Naive | Naive algorithm (one by one). |
Pairwise | $(LUCKY Pairwise summation) algorithm. Range must be a finite sliceable range. |
Kahan | $(LUCKY Kahan summation) algorithm. |
KBN | $(LUCKY Kahan-Babuška-Neumaier summation algorithm). KBN gives more accurate results then Kahan. |
KB2 | $(LUCKY Generalized Kahan-Babuška summation algorithm), order 2. KB2 gives more accurate results then Kahan and KBN. |
Precise | Precise summation algorithm. The value of the sum is rounded to the nearest representable floating-point number using the $(LUCKY round-half-to-even rule). Result can be differ from the exact value on X86, nextDown(proir) <= result && result <= nextUp(proir). The current implementation re-establish special value semantics across iterations (i.e. handling -inf + inf). References: "Adaptive Precision Floating-Point Arithmetic and Fast Robust Geometric Predicates", Mark Dickinson's post at bugs.python.org. |
Appropriate | Performs Pairwise summation for random access ranges. Otherwise performs KBN summation of floating point and complex numbers and Kahan summation of user defined types. |
Summation algorithms.