6.29.2 Exact bounds for complex roots of a polynomial: complexroot
The complexroot command finds bounds for the complex roots of
a polynomial.
complexroot takes two mandatory arguments and two
optional arguments:
P, a polynomial.
є, a postive real number.
Optionally, α, β, two complex numbers.
complexroot(P,є)
returns a list of vectors, where the elements of each vector are one
of:
an interval (the
boundaries of this interval are the opposite vertices of a rectangle with sides
parallel to the axis and containing a complex root of the polynomial) and the
multiplicity of this root.
Suppose the interval is [a1+ib1,a2+ib2] then |a1−a2|<є,
|b1−b2|<є and the root a+ib satisfies
a1≤ a ≤ a2 and b1≤ b ≤ b2.
the value of an exact complex root of the polynomial and the
multiplicity of this root.
complexroot(P,є,α,β)
returns a list of vectors as above, but only for the roots lying in
the rectangle with sides parallel to the axis having α,β as
opposite vertices.
Examples.
Find the roots of x3+1. Input:
complexroot(x^3+1,0.1)
Output:
⎡
⎢
⎢
⎢
⎢
⎣
−1
1
⎡
⎣
0.499999046325680..0.500000953674320
⎤
⎦
−
⎡
⎣
0.866024494171135..0.866026401519779
⎤
⎦
i
1
⎡
⎣
0.499999046325680..0.500000953674320
⎤
⎦
+
⎡
⎣
0.866024494171135..0.866026401519779
⎤
⎦
i
1
⎤
⎥
⎥
⎥
⎥
⎦
Hence, for x3+1:
-1 is a root of multiplicity 1,
a+ib is a root of multiplicity 1 with
0.499999046325680 ≤ a ≤ 0.500000953674320 and
−0.866026401519779 ≤ b ≤ −0.866024494171135.
c +id is a root of multiplicity 1 with
0.499999046325680 ≤ c ≤ 0.500000953674320 and
0.866024494171135 ≤ d ≤ 0.866026401519779.
Find the roots of x3+1 lying inside the rectangle
with opposite vertices −1,1+2*i. Input: