Site Statistics  |   Contact  |   About Us       Thursday, July 29, 2021

HOME ›  AREAS OF EXPERTISE ›   Curve Fitting  ›  ~ Polynomial Fit

 "Curve Fitting Solutions" Polynomial Fit Method
 Order of polynomial m = 1, Standard deviation = 1.30566531115823 Coefficients = (2.23809523809524, 0.171428571428571) Order of polynomial m = 2, Standard deviation = 1.12122382116278 Coefficients = (1.28571428571429, 1.6, -0.285714285714285) Order of polynomial m = 3, Standard deviation = 1.15813204828717 Coefficients = (1.67460317460324, -0.175925925926153, 0.686507936508051, -0.129629629629644)

 x-array = { , , , , , } y-array = { , , , , , } [ Initial x-array: { 0, 1, 2, 3, 4, 5 } ] [ Initial y-array: { 2, 1, 4, 4, 3, 2 } ]

IMPLEMENTATION
Polynomial Fit Method

As we mentioned before, please refer to ("Straight Line Fit Method") the polynomial fit is a special case of the linear least squares methods.

Algorithm Creation

In this case, the basis function becomes:

 fj(x) = xj,    j = 0,1,...,m

where the matrix and vector in the normal equation become,

 Αjk = ∑ni=0  xjj + k,     βk = ∑ni=0  xik yi

Testing the Polynomial Fit Method

In order to test the Polynomial Fit Method as defined above, a new TestPolynomialFit() static method has been added and executed. Supporting code and methods are not shown.

static void TestPolynomialFit();
{
ListBox1.Items.Clear();
double[] xarray = new double[] { t1, t2, t3, t4, t5, t6 };
double[] yarray = new double[] { t7, t8, t9, t10, t11, t12 };
{
double sigma = 0.0;
VectorR results = CurveFitting.PolynomialFit(xarray, yarray, m, out sigma);
ListBox1.Items.Add("\nOrder of polynomial m = " + m.ToString() + ",
Standard deviation = " + sigma.ToString());
}
}

As a sample we provide the input data points using two double arrays x-array and y-array. We used the same input function as in ("Straight Line Fit Method"). Running this example generates results shown above. Note the order of the polynomial is given by simple iteration from 1 to 3.

From these results we see that the quadratic polynomial with m = 2:

 f(x) = 1.2857 + 1.6x - 0.2857x2

produces the smallest deviation, which can be considered as the best fit to the data.

The user can manipulate all values and try variations on the arrays themselves by specifying new estimate values.

 Other Implementations...

 Object-Oriented Implementation Graphics and Animation Sample Applications Ore Extraction Optimization Vectors and Matrices Complex Numbers and Functions Ordinary Differential Equations - Euler Method Ordinary Differential Equations 2nd-Order Runge-Kutta Ordinary Differential Equations 4th-Order Runge-Kutta Higher Order Differential Equations Nonlinear Systems Numerical Integration Numerical Differentiation Function Evaluation

Math, Analysis,
expertise..."

EIGENVALUE SOLUTIONS...
Eigen Inverse Iteration
Rayleigh-Quotient Method
Cubic Spline Method

 Applied Mathematical Algorithms
 A complex number z = x + iy, where... Complex Functions Non-linear system methods... Non Linear Systems Construction of differentiation... Differentiation Consider the function where... Integration
 About Us KMP Engineering is an independent multidisciplinary engineering consulting company specializing in mathematical algorithms.  → ABOUT  → SITE STATISTICS Contact Us KMP ENGINEERING 2461 E Orangethorpe Ave Fullerton, CA 92631 USA info@keystoneminingpost.com Site Map  →  Home  →  Areas of Expertise  →  Reference Items  →  Managed Services  →  Login Mining & Software Engineering