Computes the sum of two floats
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.gitignore
.travis.yml
LICENSE
README.md
package.json
two-sum.js

README.md

two-sum

Computes the sum of two floating point numbers as a non-overlapping sequence using Knuth's method.

  • D.E. Knuth. "The Art of Computer Programming: Seminumerical Algorithms". Volume 2. 1981

testling badge

build status

Install

Using npm:

    npm install two-sum

Example

var twoSum = require("two-sum")

//Add two wildly different sized floats
var result = twoSum(1e64, 1e-64)
console.log(result)

//Prints:
//  [1e-64, 1e64]

API

require("two-sum")(a, b[, result])

Computes a non-overlapping sequence representing the sum of a and b.

  • a is a number
  • b is a number
  • result is an optional length 2 array encoding the result of the sum of a and b

Returns A length 2 array representing the non-overlapping sequence encoding the sum of a and b. The first term has smaller magnitude than the second.

Credits

Based on an idea from JRS robust geometric predicates paper.

Implementation (c) 2013 Mikola Lysenko. MIT License