How to plot polynomial equation numerically?

1 view (last 30 days)
Tony Earl
Tony Earl on 31 Mar 2015
Answered: James Tursa on 31 Mar 2015
I have a polynomial that I want to plot (x vs t) from t=0:0.01:1 for the following equation:
2*x*(1-x^-3)+sin(t)*(x-1)+3*sin(t)*(x-1)=0
Is there a simple way to do this?
  4 Comments
James Tursa
James Tursa on 31 Mar 2015
Why do you have sin(t)*(x-1) + 3*sin(t)*(x-1)? Isn't this just 4*sin(t)*(x-1) or is this a typo?
Tony Earl
Tony Earl on 31 Mar 2015
Sorry, you are correct. The full equation I'm trying to solve is really long so I tried simplifying it, but incorrectly did that. How about:
2*x*(x^2+x^-1)*(1-x^-3)+sin(t)*(x/sin(t)-1)+3*(x-1)=0
Thanks for your help and patience.

Sign in to comment.

Answers (2)

Image Analyst
Image Analyst on 31 Mar 2015
So how about making up 2 arrays, one for t and one for x, then create a 2D array with a double "for" loop - basically an image of the values - then use imshow() to display it? Use contour of thresholding to show where the function is above or below zero.

James Tursa
James Tursa on 31 Mar 2015
Using your latest equation I don't see any obvious simplifications. So maybe just multiply the whole thing by x^4 (to give you a polynomial in x), collect terms on powers of x, then write a loop over t=0:0.01:1 to evaluate the coefficient vector and feed this to the roots function to get your values. Then plot the results.

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!