- Тригонометрическая формула Виета
-
Тригонометрическая формула Виета — один из способов решения кубического уравнения
Первым решение этого уравнения нашел Никколо Тарталья, Джероламо Кардано опубликовал его решение в 1545 году под своим именем (см. формула Кардано). Однако формула Виета более удобна для практического применения:
Формула
- Вычисляем
- Вычисляем
- Если , то вычисляем и имеем три действительных корня:
-
- Если , то заменяем тригонометрические функции гиперболическими. Здесь возможны два случая в зависимости от знака
- :
-
- (действительный корень)
- (пара комплексных корней)
-
- :
-
- (действительный корень)
- (пара комплексных корней)
-
- :
- Если , то уравнение вырождено и имеет меньше 3 различных решений (второй корень кратности 2):
-
Вывод формулы
- Исходный многочлен имеет вид .
- Подстановкой приводим многочлен к виду , где и .
- Ищем решение уравнения в виде , получаем уравнение .
- Заметим что в случае при это уравнение приобретает вид .
- Используя тригонометрическое тождество приходим к уравнению вида .
- Решение этого уравнения имеет вид , где пробегает значения 1, 2, 3.
- Подставляя полученные значения в выражение для переменной , получаем ответ
Программа на языке C, находящая корни кубического многочлена в случае трёх действительных корней
#include <math.h> int main(void) { // x*x*x + a * x * x + b * x + c == 0.0 double p = b - a * a * а/ 3.0; double q = 2.0 * a * a * a / 27.0 - a * b / 3.0 + c; double A = sqrt(- 4.0 * p / 3.0); double c3phi = - 4.0 * q / (A * A * A); double phi = acos(c3phi) / 3.0; double root1 = A * cos(phi) - a / 3.0; double root2 = A * cos(phi + 2 * M_PI / 3.0) - a / 3.0; double root3 = A * cos(phi - 2 * M_PI / 3.0) - a / 3.0; return 0; }
Для улучшения этой статьи по математике желательно?: - Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждающие написанное.
- Проставить интервики в рамках проекта Интервики.
Категория:- Многочлены
Wikimedia Foundation. 2010.