Метод дыхания
- 1 year ago
- 0
- 0
Метод Лобачевского — Греффе — эффективный алгоритм для нахождения корней многочлена . Иногда называется по именам первооткрывателей «Метод Лобачевского — Греффе — Данделена» или «Метод Данделена — Лобачевского — Греффе».
По сравнению с другими алгоритмами решения той же задачи (например, методом Ньютона ), данный метод имеет несколько преимуществ. Он не требует предварительной работы по выяснению, где примерно находятся корни и сколько среди них комплексных — данный метод даёт в результате все вещественные корни, а при некоторой модификации — также и комплексные.
Недостатками метода являются отсутствие сопутствующего контроля ошибок при ручном счёте и сложность оценки точности результата. Точность метода может оказаться невысокой из-за численной неустойчивости, то есть быстрого накопления погрешности в ходе вычислений . Кроме того, метод медленно сходится, если у многочлена есть корни, равные или очень близкие по модулю (например, +4 и —4) .
Рассуждения, близкие к идее данного метода, высказывали ещё в XVII веке Ньютон (в « Универсальной арифметике ») и Варинг в «Аналитических этюдах» . Первое краткое изложение идеи опубликовал французский математик Жерминаль Данделен в 1826 году . Этот мемуар остался незамеченным. Восемь лет спустя аналогичную идею более подробно изложил и развил Н. И. Лобачевский в своём учебнике «Алгебра или вычисление конечных» (1834), но и его работа не привлекла внимания научной общественности .
В 1836 году Берлинская академия наук объявила конкурс на разработку удобного метода нахождения комплексных корней многочлена. Среди призёров была статья швейцарского профессора Карла Греффе « Die Auflösung der höheren numerischen Gleichungen » (1837). Греффе изложил метод развёрнуто, с многочисленными примерами. В дальнейшем этот алгоритм был несколько усовершенствован Иоганном Энке (1841) и (1896) ), Впервые имена всех трёх первооткрывателей были указаны в книге Эдмунда Уиттекера и Г. Робинсона «Математическая обработка результатов наблюдений» (« The calculus of observations », 1924) .
Рассмотрим многочлен -й степени , корни которого (пока неизвестные) обозначим :
Временно сделаем предположение, что все корни этого многочлена вещественны и различны (нет кратных корней). Обозначим многочлен, корни которого равны квадратам корней :
Его коэффициенты можно вычислить следующим образом. Поскольку получаем:
Если обозначить коэффициенты через соответственно:
то коэффициенты обоих многочленов связаны формулой:
где принято, что при или
Повторив эту процедуру достаточное число раз, мы получим многочлен, у которого один корень значительно больше прочих, среди остальных корней также один резко выделяется по величине и т. д. Условие прекращения процесса — отношения модулей коэффициентов очередного многочлена, в рамках заданной точности, совпадают с квадратами отношений коэффициентов предыдущего многочлена .
В результате в формулах Виета для последнего многочлена :
все одночлены, кроме одного, в каждом тождестве исчезающе малы, и система Виета сводится к простым линейным равенствам :
Для возврата к исходным неизвестным осталось извлечь из корни соответствующей степени и выбрать знаки для полученных корней. Для определения знака можно использовать грубую подстановку или формулы Виета.
При ручном счёте все вычисления удобно проводить с плавающей точкой , отделяя мантиссу и порядок числа. Нередко рекомендуется полученные результаты дополнительно уточнить (например, методом Ньютона ).
Описанный выше алгоритм лучше всего работает для уравнений, все корни которых вещественны (тогда и коэффициенты многочлена вещественны). Возникают затруднения, если у многочлена есть кратные корни, поэтому перед применением следует избавиться от них. Стандартная процедура для этого следующая. Находим наибольший общий делитель для исходного многочлена и его производной . Если степень больше нулевой, следует применить метод к частному от деления на (у этого частного кратные корни всегда отсутствуют).
При наличии у комплексных корней метод также применим, но включает некоторые усложнения, подробно описанные в приведенной ниже литературе.