Evaluates a polynomial of degree N.

You're viewing an older version of this page (#72). View the current version.

View versions (1)

Interface

#include <codecogs/maths/approximation/polynomial/poly_eval.h>

using namespace Maths::Approximation::Polynomial;

Overview

Evaluates polynomial of degree N:

y = C_0 + C_1 x + C_2 x^2 + ... + C_N x^N
(1)

Coefficients are stored in reverse order, i.e.

coef[0] = C_N  , ..., coef[N] = C_0
(2)
GPL Licence — free for non commercial use. See Licence details.

FUNCTION

polyEval

Evaluates polynomial of degree N

Example:

The following code computes solutions to the polynomial

f(x) = 3 + 2x + 1x^2
(3)
#include <stdio.h>
#include <codecogs/maths/approximation/polynomial/poly_eval.h>

int main()
{
  using namespace Maths::Algebra::Polynomial;
  static double A[] = { 1,2,3 };
  for(int x=2;x<=5;x++)
    printf("\n polyEval(%d, A, 2)=%.1lf", x, polyEval(x, A, 2));

  return 0;
}

Output:

polyEval(2, A, 2)=11.0
polyEval(3, A, 2)=18.0
polyEval(4, A, 2)=27.0
polyEval(5, A, 2)=38.0

References

Cephes Math Library Release 2.1: December, 1988

Parameters

x
main variant
coef
array of coefficients <tt>coef[0..N]</tt> in reverse order
N
degree of polynomial, also one less that number of coefficients supplied.

In the interest of speed, there are no checks for out of bounds arithmetic.

Author

Stephen L. Moshier Copyright 1984, 1987, 1988

Author

Documentation by Will Bateman (August 2005)

FUNCTION

polyEval1

Evaluates polynomial of degree N, where the coefficient C_N=1.0. i.e. coef[0] = 1.0,

y = C_0 + C_1 x + C_2 x^2 + ... + x^N
(4)

Example:

The following code computes solutions to the polynomial

f(x) = 4 - 5x + x^2
(5)
#include <stdio.h>
#include <codecogs/maths/approximation/polynomial/poly_eval.h>

int main()
{
  using namespace Algebra::Polynomial;
  static double A[] = { -5, 4 };
  for(int x=2;x<=5;x++)
    printf("\n polyEval1(%d, A, 2)=%.1lf", x, polyEval(x, A, 2));

  return 0;
}

Output:

polyEval1(2, A, 2)=-2.0
polyEval1(3, A, 2)=-2.0
polyEval1(4, A, 2)=0.0
polyEval1(5, A, 2)=4.0

References

Cephes Math Library Release 2.1: December, 1988

Parameters

x
main variant
coef
array of coefficients <tt>coef[0..N-1]</tt> in reverse order
N
degree of polynomial, also number of coefficients supplied. Must be 2 or more.

In the interest of speed, there are no checks for out of bounds arithmetic.

Author

Stephen L. Moshier Copyright 1984, 1987, 1988

Author

Documentation by Will Bateman (August 2005)