Reading the answer properly for roots
조회 수: 2 (최근 30일)
이전 댓글 표시
I have a polynomial
p(x) = (x^5 + 1.3301x^4 - 9.1234x^3 + 1)(x^2 - 9976/1000)
I need to find the roots preferably to the nearest 100,000th.
Here is what I do:
p = [1 1.3301 -9.1234 0 0 1]; roots(p);
my result is:
-3.760932681080143 + 0.000000000000000i
2.416314783767116 + 0.000000000000000i
0.495523859135796 + 0.000000000000000i
-0.240502980911384 + 0.405248700488689i
-0.240502980911384 - 0.405248700488689i
then I do:
p = [1 0 9976/1000]; roots(p);
my result is:
-0.000000000000000 + 3.158480647399949i
0.000000000000000 - 3.158480647399949i
I'm not really understanding my answers or if they are even correct. If someone could explain them I would appreciate it.
댓글 수: 0
채택된 답변
Walter Roberson
2012년 11월 6일
Those look correct. The "i" (lower-case I) at the end of numbers indicates the imaginary component. So one of the solutions is
-3.760932681080143 + 0.000000000000000i
which has an imaginary component of 0 and so could be written more typically as
-3.760932681080143
but
-0.240502980911384 + 0.405248700488689i
has both real and imaginary components.
댓글 수: 2
Walter Roberson
2012년 11월 6일
"i" at the end should be read as "* sqrt(-1)", so one of the roots is
-0.240502980911384 + (0.405248700488689 * sqrt(-1))
In that expression, -0.240502980911384 is only the real component of the number, and is not a root in itself.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Polynomials에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!