Calculess.js
A calculus library for javascript and NPM. Created by Blake Sanie.
Install
$ npm install calculess
Getting Started
Import package and create Calc object for future use
var Calculess = require('calculess');
var Calc = Calculess.prototype;
Documentation
Limits
Evaluate a limit
Calc.limAt( x , function );
Evaluate a limit from the left
Calc.limLeftOf( x , function );
Evaluate a limit from the right
Calc.limRightOf( x , function );
Methods:
- Accept ±Infinity as x value (parameter)
- Can output ±Infinity
- Output NaN when the limit does not exist
Examples:
function recip(x) {
return 1 / x;
}
Calc.limLeftOf(0, recip);
Calc.limRightOf(0, recip);
Calc.limAt(0, recip);
Calc.limAt(1, recip);
Derivatives
Evaluate f'(x)
- Note: If the given function is not continuous or differentiable at the target, NaN is returned
Calc.deriv( x , function );
Evaluate a derivative to the nth degree of x
- Note: as the degree increases, .nthDeriv() becomes less accurate. Also, continuity and differentiability are not checked.
Calc.nthDeriv( degree, x , function );
Examples:
function para(x) {
return x * x;
}
Calc.deriv(3, para);
Calc.nthDeriv(2, 3, para);
Calc.nthDeriv(3, 3, para);
function sharp(x) {
return Math.abs(x);
}
Calc.deriv(1, sharp);
Calc.nthDeriv(2, 1, para);
Calc.deriv(0, sharp);
Integrals
Evaluate an integral using trapezoidal Riemann Sums
Calc.integral( start , end , function , numSubintervals );
Evaluate a function's average value
Calc.averageValue( start , end , function , numSubintervals );
Note: As the number of subintervals increases, .intregral() becomes more accurate, though more time is required for calculations
Examples
function sin(x) {
return Math.sin(x);
}
Calc.integral(0, Math.PI, sin, 5);
Calc.integral(0, Math.PI, sin, 10);
Calc.integral(0, Math.PI, sin, 100);
Calc.integral(0, Math.PI, sin, 1000);
Calc.integral(0, Math.PI, sin, 10000);