Лабораторная работа: Решение уравнений, неравенств и их систем

Из примера видно, что последовательность множеств, представляющих два полученных решения, сохранена в переменной answ. Для проверки правильности полученных решений, подставляем эти решения в исходную систему и вычисляем полученные выражения с помощью команды eval(). В результате вычисления системы уравнений на двух полученных решениях мы получили тождества, что говорит о правильности наших решений. Если для дальнейших вычислений необходимо иметь значения первого решения в виде отдельных переменных, то той же самой командой eval () можно извлечь их, вычислив, соответственно, неизвестную х и у на первом решении:

> x1:=eval(x,answ[1]);

> y1:=eval(y,answ[1]);

Для проверки решения можно использовать функцию mар() вместе с функцией subs(), которая за одну операцию проверит все решения. Это удобно, когда решений очень много и для каждого из них пришлось бы выполнять команду eval(), если использовать предыдущий подход. Для решения нашей системы вызов команды mар() выглядит так:

> map(subs,[answ],fs);

Команда solve () может решать неопределенные системы уравнений, в которых количество уравнений меньше числа неизвестных. В этом случае система Maple сама решает, какие из неизвестных принять за параметры, а какие за неизвестные, относительно которых следует строить решение:

> fs1:=x+3*y+4*z+5*t=50;

> fs2:=3*x+3*y+2*z+t=30;

> answ1:=solve({fs1,fs1});

Здесь решение получено в параметрической форме относительно неизвестных y, t и z, которые выбраны системой. Можно явно указать, относительно каких неизвестных следует решать систему уравнений, тогда оставшиеся будут рассматриваться как параметры:


> answ2:=solve({fs1,fs1},{y,z});

В этом решении явно указаны неизвестные у и z, и полученное решение зависит от двух параметров х и t.

С помощью функции eval () можно вычислить значения решения при конкретных значениях параметров:

> eval(answ2,{x=1,z=1,t=1});

Бывает, что при решении систем уравнений ответ получается в виде множества уравнений, в которых левая часть является неизвестной переменной. Чтобы присвоить найденные значения переменным, относительно которых решалась система, следует применять команду assign(). Эта команда присваивает переменным, стоящим в левой части уравнений из множества решений, значения, равные правым частям. Можно сказать, что эта команда заменяет знак равенства (=) на знак операции присваивания (:=) во множестве, состоящем из уравнений, в которых левые части представлены неизвестными:

> {q=a+b,w=g+p};

> assign(%);q;w;

> eq:=x*a+y*b=c;

К-во Просмотров: 208
Бесплатно скачать Лабораторная работа: Решение уравнений, неравенств и их систем