Using the Kahan method, take a more accurate sum

kahanSum(numbers)

Arguments

numbers

A vector of numbers to sum.

Value

Sum of numbers

Examples

sum(c(1,1e100,1,-1e100)) ## Should be 2, gives 0
#> [1] 0
kahanSum(c(1,1e100,1,-1e100)) ## Not accurate enough for the correct result. (still = 0)
#> [1] 0