Plotting complex roots of polynomial
조회 수: 8 (최근 30일)
이전 댓글 표시
Hi I need to plot of the roots of a polynomial in the complex plane. This is the code I have so far but it doesn't seem to be working.
z = -1:0.01:1;
p = z.^9 + z.^8 - z.^7 + z.^6 - z.^5 + z + 1;
plot(z,p)
hold on
r = roots(p);
scatter(real(r),imag(r))
hold off
댓글 수: 0
답변 (1개)
David Goodmanson
2020년 5월 19일
Hi Thomas,
what the roots function is looking for is the coefficients of the powers of z in decreasing order. In this case that would be
r = roots([1 1 -1 1 -1 0 0 0 1 1])
This shows one real root at approximately -1.9, and eight complex roots. If you use
z = -2:0.01:1;
you can see the curve go through the real root.
댓글 수: 4
David Goodmanson
2020년 5월 19일
what do you get for the sizes of z and p?
maybe if you tried 'close all' and put 'figure(1)' just before the plot command ....?
참고 항목
카테고리
Help Center 및 File Exchange에서 Polynomials에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!