Вы ввели следующие элементы массива |
![Введенное выражение]() |
Полиминальная функция от матрицы, массива |
![Введенное выражение]() |
Давайте зададимся задачей, которая формулируется так:
Существует функция от одной переменной, которая задана в матричном виде.
= \begin{pmatrix} x & 8 & x \\ -4 & 9 & x \\7 & x&5 \end{pmatrix})
Не думайте что таких функций не существуют. Самый первый пример который приходит на ум это практические задачи по экономике.
Но речь в общем то не о том, что бы приводить конкертные примеры из жизни.
Теперь стоит задача, а как в общем то исследовать такую матричную функцию на максимумы, минимумы?
Конечно, можно подставляя вместо неизвестного параметра какое либо числовое значение, узнавать значение функции и двигаясь так, можно медотом приближения, вернее "методом тыка" обнаружить минимумы и максимумы, а также корни этого матричного уравнения.
Второй вариант, это разложить эту матрицу в полиминальную функцию. Да это самый разумный, но не самый простой способ, хотя в нашем примере такое решение можно применить.
=45x+56x-4x^2-63x-x^3+160)
Сократим и получим наше окончательной ответ =-x^3-4*x^2+38*x+160)
Неплохо, но что делать если матрица иметт размерность в 4, 5 или десять столбцов?
Неуверен что кто то в твердой памяти возьмется решить матрицу 5*5 при например 12 неизвестных.
А если элементы матрицы являются комплексными?? Тот-же..
Для того, что бы не ломать мозги, а также легко превращать матричные функции в полиноминальные и создан этот бот
Update 17.08.2015: То что мы вычисляем в этом материале ,в высшей математике широко применяется и называется характеристическим уравнением. Такие характеристические уравнения например используются для приведения кривой или поверхности второго порядка в канонический вид.
Синтаксис
Для тех кто использует XMPP клиентов то достаточно ввести команду poly_m элементы матрицы
Элементы матрицы - должны быть разделены пробелом. Элеметны могут любыми числами или функциями. В том числе и комплексными
Считаем матрицы только не больше 8*8. Будьте внимательны в расчетах.
Пример
Сразу возьмем для примера тот случай который мы привели выше.
Итак дана функция
= \begin{pmatrix} x& 8& x& x& 6\\ -4& 9& x& x& 0&\\ 2& -2& 0& 1& -3&\\ -1& x& x& x& 0&\\ 5& -2& -7& 0& x& \end{pmatrix})
и 9 неизвестных ячеек которые равны x. Привести данную функция в полиноминальную
Ну что, решите ручками? :)
Попробуем скормить эту матрицу нашему боту
poly_m x 8 x x 6 -4 9 x x 0 2 -2 0 1 -3 -1 x x x 0 5 -2 -7 0 x
В ответ получаем  = (1.0000)*x^4 + (16.0000)*x^3 + (-84.0000)*x^2 + (-795.0000)*x^1 + (-378))
это и есть наша полиноминальная функция от матрицы.
Такой вид, предоставляет совсем другие возможности. Эту функцию проще исследовать, и на основе анализа принимать те или иные решения.
Проверим? Да запросто
определим чему равна полученная функция ну например для x=3, и определим чему равен детерминант матрицы если в матрице мы все неизвестные x заменим значением -3
И в том и другом случае мы получим значение 900. Что доказывает что расчеты произведены верно.
Усложним нашу задачу и матрица у нас будет комплексная
=\begin{pmatrix} i& x& -2& -i& i\\ -i& 9& x& x& 0&\\ 2& -2& 0& 1& -3&\\ -1& x& -x& 3*x& 0&\\ x& -2i& -7+i& x& 2& \end{pmatrix})
Даем боту вот такую строку 0:1 x -2 0:-1 0:1 0:-1 9 x x 0 2 -2 0 1 -3 -1 x -x 3*x 0 x 0:-2 -7:1 x 2
Ответ не заставит нас долго ждать и следующая функция и будет ответом
 = (12)*x^4 + (13+2i)*x^3 + (135+48i)*x^2 + (157-917i)*x^1 + (54+126i))
Давайте проверим и её
Пусть х= 1-i
Функция дает ответ -680.0000000001-1248i
Если в матрице мы заменим все неизвестные на это число и посчитаем детерминанат то получим тоже самое значение.