I want to calculate roots of a polynomial whose coefficients are functions of x where x assume values between an interval
2 views (last 30 days)
Show older comments
Let x =[0:1:10]; polynomial = [ 1 sin(x) x.^3 x]; let v1,v2 and v3 be the three roots of given polynomial in v whose coefficients are functions of x. I want to plot a graph between v1 and x.
6 Comments
John D'Errico
on 21 Oct 2017
So why did you set x=pi/18?
You were asked to solve this problem for x varying from 0 to 10, NOT just at one value of x.
If the polynomial has three roots, what does v1 versus v2 and v3 mean? Roots need not be provided in any specific order. So how are you supposed to choose v1?
Accepted Answer
Matt J
on 21 Oct 2017
Edited: Matt J
on 21 Oct 2017
You cannot use ROOTS on multiple polynomials at a time. You will have to use a loop over x(i),
for i=1:numel(x)
p =[1 sin(x(i)) x(i).^3 x(i)];
r{i}=roots(p);
%More code...
end
3 Comments
Matt J
on 21 Oct 2017
clear 'r' from memory first, or better yet pre-allocate,
r=cell(1,numel(x));
More Answers (0)
See Also
Categories
Find more on Polynomials in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!