Skip to content

tfoxy/na-error-propagation

Repository files navigation

na-error-propagation

npm version bower version

Calculates the error propagation of an expression, also called Propagation of uncertainty.

Works in Node and the browser. Uses the nerdamer library to evaluate the expressions, including the differentials.

Example

Live Demo

var ErrorPropagation = require('na-error-propagation');
var nerdamer = require('nerdamer');
GLOBAL.nerdamer = nerdamer;
require('nerdamer/Calculus');
delete GLOBAL.nerdamer;
ErrorPropagation.nerdamer = nerdamer;

var errorPropagation = new ErrorPropagation({
  correlation: 'both'
});
errorPropagation.on('differential', function(diff) {
  console.log('differential', diff);
});
var result = errorPropagation.calculate('x + y', {
  x: {value: 8, error: 3},
  y: {value: 15, error: 4}
});
console.log('result', result); // {value: 23, error: {correlated: 10, uncorrelated: 5}}

If you want to use the events in the browser, you must set an EventEmitter library using the ErrorPropagation.setEventEmitter(EventEmitter) method.

About

Calculates the error propagation

Resources

License

Stars

Watchers

Forks

Packages

No packages published