Оценка интервалов изоляции корней полиномов (Rootlsolation)
Следующие функции подпакета Rootlsotation позволяют оценивать интервалы изоляции для действительных и комплексных корней полиномов:
- CountRoots [poly, {x,m1,m2} ] – возвращает число корней полинома poly от переменной х в комплексном интервале {m1, m2 };
- RealRootsIntervals [poly] – возвращает разделенный интервал изоляции для вещественных корней полинома poly;
- RealRootsIntervals [poly1,poly2,…] – возвращает разделенные интервалы изоляции для вещественных корней нескольких полиномов;
- ComplexRootsIntervals [poly] – возвращает разделенный интервал изоляции для комплексных корней полинома;
- ComplexlRootsIntervals [poly1, poly2,…] – возвращает разделенные интервалы изоляции для комплексных корней нескольких полиномов;
- Contractlnterval [a,n] – возвращает интервал изоляции для числа а с точностью, задаваемой числом знаков результата n.
Применение этих функций поясняют следующие примеры:
<
<
Algebra`Rootlsolation`
f
=
(x
^
2
-
1
) (x
^
2
-
3
) (x
^
2
-
5
); CountRoots [f, {x,
1
,
2
}]
1
CountRoots[(x
^
2
+
2
) x
^
4
, {x,
-
1
,
2
I}]
5
CountRoots[x
^
21
-
1
, {x,
0
,
5
+
10
*
1
}]
5
RealRootlntervals[f]
{{
-
4
,
-
2
}, {
-
2
,.
-
1
}, {
-
1
,
-
1
}, {
1
,
1
}, {
1
,
2
}, {
2
,
4
}}
ComplexRootlntervals[f
+
5
]
{{
-
1
,
0
}, {
0
,
1
}, {
-
7
-
71
,
-
7
/
4
}, {
-
7
,
-
7
/
4
+
7I
},
{
-
7
/
4
,
-
7I
+
7
/
2
}, {
-
7
/
4
,
-
7
/
2
+
7I
}}
ComplexRootlntervals[x
^
3
, x
^
5
+
1
]
{{{
-
2
,
0
}, {
0
,
0
),
{
-
3
-
31
,
0
}, {
-
3
,
31
}, {
-
31
,
3
), {
0
,
3
+
31
}}, {
2
,
1
,
2
,
2
,
2
,
2
}}
Contractlnterval[Root[x
^
7
-
1
,
5
],
5
]
{
58333
/
262144
+
511143I
/
524288
+
116665
/
524288
+
63893I
/
65536
}
N[
%
]
{
-
0.222523
+
0.9749281
,
-
0.222521
+
0.974931
}