How can I have Matlab create a polynomial function from a vector of coefficients without invoking some other implemented function?

42 vues (au cours des 30 derniers jours)
Here is some of my initial thinking.
function y = f(x)
clc;
clear;
a = [0,1,1,1,1,1];
n = length(a);
y = 0;
for i = 1:n
while i<=n
y = y + a(i)*x^(i-1);
end
end
end

Réponses (2)

Erik Keever
Erik Keever le 31 Oct 2018
If you're asking for the most efficient way to do it, call the function Mathworks implemented for us:
>> help polyval
POLYVAL Evaluate polynomial.
Y = POLYVAL(P,X) returns the value of a polynomial P evaluated at X. P
is a vector of length N+1 whose elements are the coefficients of the
polynomial in descending powers.
Y = P(1)*X^N + P(2)*X^(N-1) + ... + P(N)*X + P(N+1)|
Which is also an m-file you can view to see how it's done

madhan ravi
madhan ravi le 31 Oct 2018
a = [0,1,1,1,1,1]
poly2sym(a) % requires symbolic toolbox
  1 commentaire
madhan ravi
madhan ravi le 31 Oct 2018
How can I have Matlab create a polynomial function from a vector of coefficients?
By the above method you can do it

Connectez-vous pour commenter.

Catégories

En savoir plus sur Polynomials dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by