Я получил это уравнение после того, как решил эту проблему здесь
Я хотел бы решить это с помощью Matlab.
Я получил это уравнение после того, как решил эту проблему здесь
Я хотел бы решить это с помощью Matlab.
Функция roots
возвращает полиномиальные корни. Просто передайте коэффициенты:
roots([1,-6,-36,216,-324])
Используйте solve
из набора инструментов символьной математики MATLAB:
>> syms x;
>> y = solve('x^4-6*x^3-36*x^2+216*x-324==0')
y =
7.7446378738164683022795580182987
-6.3360292312480789716536487435108
2.2956956787158053346870453626061 - 1.1543655214730370697054534567177*i
2.2956956787158053346870453626061 + 1.1543655214730370697054534567177*i
Первая строка кода объявляет, что x
— это символическая математическая переменная, которую мы можем использовать с набором инструментов. Затем мы используем solve
и вставляем строку, описывающую уравнение, которое видно в вашем сообщении. Имейте в виду, что когда мы умножаем коэффициенты, вам нужно использовать оператор *
, а для равенства нам нужно использовать двойное равно, или ==
. На выходе вы должны получить четыре корня, как того требует основная теорема алгебры. Вы увидите, что у вас есть два действительных корня, а также два мнимых корня.
В качестве альтернативы вы можете использовать roots
в MATLAB, указав вектор коэффициентов начиная с самого высокого порядка до самого низкого согласно ответу Дэниела.
solve polynomial equations matlab
, и первая ссылка дала мне ответ на то, что вы искали. Как правило, вопросы, которые можно решить с помощью простого запроса в поисковой системе, в конечном итоге получают отрицательные отзывы и закрываются, поскольку они бесполезны. Однако, пожалуйста, примите один из наших ответов, когда будете готовы! - person rayryeng   schedule 02.02.2015