Как в wxMaxima и Maxima решить систему линейных уравнений?

В wxMaxima / Maxima система линейных уравнений решается с помощью функции solve, которая применима и к одиночным выражениям.

При вводе данных для решения системы линейных уравнений имеется особенность, не учитывая которую можно получить сообщение об ошибке. Эта особенность заключается в том, что и уравнения, и неизвестные должны представлять собой список. В wxMaxima / Maxima список – это набор данных, разделённых запятой и помещённый в квадратные скобки. Таким образом, общий вид вводимых данных выглядит так:

solve ([eqn_1, ..., eqn_n], [x_1, ..., x_n])

Допустим, требуется решить систему линейных уравнений:

%d0%ba%d0%b0%d0%ba-%d0%b2-wxmaxima-%d0%b8-maxima-%d1%80%d0%b5%d1%88%d0%b8%d1%82%d1%8c-%d1%81%d0%b8%d1%81%d1%82%d0%b5%d0%bc%d1%83-%d0%bb%d0%b8%d0%bd%d0%b5%d0%b9%d0%bd%d1%8b%d1%85-%d1%83%d1%80%d0%b0

Тогда мы вводим данные следующим образом:

solve([5*x-y-z=0,x+2*y+3*z=14,4*x+3*y+2*z=16],[x,y,z]);

01

Если количество неизвестных равно количеству уравнений, то список неизвестных можно опустить:

solve([5*x-y-z=0,x+2*y+3*z=14,4*x+3*y+2*z=16]);

02

Если количество неизвестных превышает количество уравнений, то находиться решение в общем виде:

03

Символ %r используется для обозначения произвольных констант в решении.

Кстати, в данном случае при использовании функции solve она вызывает функции linsolve или algsys. Поэтому можно использовать непосредственно эти функции.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поиск по сайту