![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Для присваивания найденных значений переменным, относительно которых искалось решение, используется функция вида
assign( s ).
Здесь s – множество решений - список или система уравнений - или имя переменной, хранящей это множество. Кроме указанного формата, эта команда может записываться в виде:
assign( a, b ) или assign( a = b ).
Здесь a - имя, b - любое допустимое выражение с одним исключением: это не может быть последовательность выражений, содержащая более одного элемента. В общем случае, эта команда присваивает величине а значение b.
Для отмены назначения функции assign используется функция вида
unassign( name1, name2,... ),
предварительно загружаемая из основной библиотеки. Имена переменных name1, name2,... в этой команде необходимо указывать в кавычках. Продолжим предыдущий пример.
> assign( s ); x;
> y;
> readlib(unassign):unassign( x, y );
Error, (in assign) invalid arguments
> unassign(' x ', ' y '); x; y;
x
y
Для нелинейных уравнений может быть найдено несколько решений, но необязательно все, или решение может быть не найдено.
Пример:
> eq:={u*v*y^2=8, v*w*y^2=24, u*w*y^2=12, u+v+w=y+4}:
> s:= solve ( eq, { u, v, w, y });
s:= {w = 3, y = 2, u = 1, v = 2}, {v = -2/3, w = -1, y = -6, u = -1/3},
{y = 2 %1, v = 2/3 %1 + 4/3, w = 2 + %1, u = 1/3 %1 + 2/3}
%1:= RootOf(_Z2 + 2 _Z + 3)
> _EnvExplicit:=true:> s:= solve( eq, { u, v, w, y });
s:= {w = 3, y = 2, u = 1, v = 2}, {v = -2/3, w = -1, y = -6, u = -1/3},
Дата публикования: 2014-11-29; Прочитано: 197 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!