{column:padding=0px|width=80px}{column}{column}{column}
Method Summary
void
addPolynomial(polynomial)
Adds another polynomial to this polynomial.
void
addTerm(coefficient, exponent)
Adds a term to this polynomial.
getDerivative()
Returns a polynomial that holds the derivative of this polynomial.
getDerivativeValue(x)
Returns the value of the derivative of this polynomial in a certain point.
void
multiplyByPolynomial(polynomial)
Multiplies this polynomial with another polynomial.
void
multiplyByTerm(coefficient, exponent)
Multiples this polynomial with a term.
void
setToZero()
Sets this polynomial to zero.
{column:padding=0px|width=100%}{column}
Method Details
void
addPolynomial
(polynomial)
Adds another polynomial to this polynomial.
Parameters
polynomial
Returns
void
Sample
// (x+1) + 2*(x+1)*x + 3*(x+1)*x^2 + 4*(x+1)*x^3 var eq = plugins.amortization.newPolynomial(); for (var i = 0; i < 4; i++) { var base = plugins.amortization.newPolynomial(); base.addTerm(1, 1); base.addTerm(1, 0); base.multiplyByTerm(1, i); base.multiplyByTerm(i + 1, 0); eq.addPolynomial(base); } application.output(eq.getValue(2));
void
addTerm
(coefficient, exponent)
Adds a term to this polynomial.
Parameters
coefficient
exponent
Returns
void
Sample
// Model the quadratic equation -x^2 + 4x + 0.6 = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(-1, 2); eq.addTerm(4, 1); eq.addTerm(0.6, 0); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2)); // Find the minimum/maximum point by zeroing the first derivative. var deriv = eq.getDerivative(); rd = deriv.findRoot(0, 1E-5, 1000); application.output("Min/max point: " + rd); application.output("Min/max value: " + eq.getValue(rd)); if (deriv.getDerivativeValue(rd) < 0) application.output("Max point."); else application.output("Min point.");
findRoot
(startValue, error, iterations)
Finds a root of this polynomial using Newton's method, starting from an initial search value, and with a given precision.
Parameters
startValue
error
iterations
Returns
Number
Sample
// Model the quadratic equation -x^2 + 4x + 0.6 = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(-1, 2); eq.addTerm(4, 1); eq.addTerm(0.6, 0); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2)); // Find the minimum/maximum point by zeroing the first derivative. var deriv = eq.getDerivative(); rd = deriv.findRoot(0, 1E-5, 1000); application.output("Min/max point: " + rd); application.output("Min/max value: " + eq.getValue(rd)); if (deriv.getDerivativeValue(rd) < 0) application.output("Max point."); else application.output("Min point.");
getDerivative
()
Returns a polynomial that holds the derivative of this polynomial.
Returns
Polynomial
Sample
// Model the quadratic equation -x^2 + 4x + 0.6 = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(-1, 2); eq.addTerm(4, 1); eq.addTerm(0.6, 0); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2)); // Find the minimum/maximum point by zeroing the first derivative. var deriv = eq.getDerivative(); rd = deriv.findRoot(0, 1E-5, 1000); application.output("Min/max point: " + rd); application.output("Min/max value: " + eq.getValue(rd)); if (deriv.getDerivativeValue(rd) < 0) application.output("Max point."); else application.output("Min point.");
getDerivativeValue
(x)
Returns the value of the derivative of this polynomial in a certain point.
Parameters
x
Returns
Number
Sample
// Model the quadratic equation -x^2 + 4x + 0.6 = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(-1, 2); eq.addTerm(4, 1); eq.addTerm(0.6, 0); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2)); // Find the minimum/maximum point by zeroing the first derivative. var deriv = eq.getDerivative(); rd = deriv.findRoot(0, 1E-5, 1000); application.output("Min/max point: " + rd); application.output("Min/max value: " + eq.getValue(rd)); if (deriv.getDerivativeValue(rd) < 0) application.output("Max point."); else application.output("Min point.");
getValue
(x)
Returns the value of this polynomial in a certain point.
Parameters
x
Returns
Number
Sample
// Model the quadratic equation -x^2 + 4x + 0.6 = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(-1, 2); eq.addTerm(4, 1); eq.addTerm(0.6, 0); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2)); // Find the minimum/maximum point by zeroing the first derivative. var deriv = eq.getDerivative(); rd = deriv.findRoot(0, 1E-5, 1000); application.output("Min/max point: " + rd); application.output("Min/max value: " + eq.getValue(rd)); if (deriv.getDerivativeValue(rd) < 0) application.output("Max point."); else application.output("Min point.");
void
multiplyByPolynomial
(polynomial)
Multiplies this polynomial with another polynomial.
Parameters
polynomial
Returns
void
Sample
// Model the quadratic equation (x+1)*(x+2) = 0 var eq = plugins.amortization.newPolynomial(); eq.addTerm(1, 1); eq.addTerm(1, 0); var eq2 = plugins.amortization.newPolynomial(); eq2.addTerm(1, 1); eq2.addTerm(2, 0); eq.multiplyByPolynomial(eq2); // Find the roots of the equation. r1 = eq.findRoot(100, 1E-5, 1000); r2 = eq.findRoot(-100, 1E-5, 1000); application.output("eq(" + r1 + ")=" + eq.getValue(r1)); application.output("eq(" + r2 + ")=" + eq.getValue(r2));
void
multiplyByTerm
(coefficient, exponent)
Multiples this polynomial with a term.
Parameters
coefficient
exponent
Returns
void
Sample
// (x+1) + 2*(x+1)*x + 3*(x+1)*x^2 + 4*(x+1)*x^3 var eq = plugins.amortization.newPolynomial(); for (var i = 0; i < 4; i++) { var base = plugins.amortization.newPolynomial(); base.addTerm(1, 1); base.addTerm(1, 0); base.multiplyByTerm(1, i); base.multiplyByTerm(i + 1, 0); eq.addPolynomial(base); } application.output(eq.getValue(2));
void
setToZero
()
Sets this polynomial to zero.
Returns
void
Sample
var eq = plugins.amortization.newPolynomial(); eq.addTerm(2, 3); application.output(eq.getValue(1.1)); eq.setToZero(); application.output(eq.getValue(1.1));