MATLAB: How to numerical integrate polynomial coefficients to a high order

integratepolyfit

Hello,
I have the coefficients of a polynomial of order 12 given to me using polyfit (it was fitted to model a probability density function). I now need to use the given polynomial f(x), multiply it by x^2, and integrate it over a given boundary.
I have tried using the integral function: integral(fun,xmin,xmax), where: fun = @(x) poly2sym(f) and f is the coefficients given by polyfit, but this doesn't work.
Any ideas? Apologies if this seems trivial, I have tried everything!
Thanks in advance, Rajin

Best Answer

Suppose p is a polynomial in MATLAB (a vector of coefficients). Multiplying by x^2 and integrating could be done by
Q = integral(@(x)polyval([p,0,0],x),xmin,xmax)
But how about
pint = polyint([p,0,0]);
Q = polyval(pint,xmax) - polyval(pint,xmin);