Другие манипуляции с выражениями
Другие манипуляции с выражениями
В процессе преобразования выражений с ними возможны и иные манипуляции. Наиболее важные из них выполняются следующими функциями:
-
Append [expr, elem] — возвращает ехрг с дополнением elem;
-
AppendTo [s, elem] — добавляет elem к значению s и присваивает s новое значение;
-
Apply [f, expr, levelspec] — возвращает ехрг, замещая заголовки в тех частях ехрг, которые указаны спецификацией уровня levelspec;
-
Cancel [expr] — возвращает ехрг с сокращением общих множителей числителя и знаменателя;
-
Cases [expr, pattern, levelspec] — возвращает список всех частей выражения expr на уровнях, указанных спецификацией levelspec, которые соответствуют шаблону pattern;
-
Chop [expr] — присваивает значение 0 тем приближенным вещественным числам в выражении expr, абсолютные величины которых меньше 10
-10
;
-
Chop [expr, tol ] — присваивает значение 0 тем приближенным вещественным числам в выражении expr, абсолютные величины которых меньше tol;
-
Replace [expr, rules] — возвращает expr с подстановкой, заданной правилом или списком правил rules;
-
ReplaceAll — используется в виде expr /. rules и возвращает expr с подстановками, заданными правилом или списком правил rules;
-
ReplacePart [expr, new, n] — возвращает выражение, в котором п-я часть expr заменена на new;
-
ReplacePart [expr, new, {i, j,...}] — заменяет на new часть в позиции {i, j,...};
-
ReplacePart [expr, new, {{il, jl,...}, {i2, j 2 ,...},...}] — заменяет на new части в нескольких позициях выражения;
-
ReplaceRepeated — применяется в виде expr //. rules и неоднократно выполняет замещения до тех пор, пока expr не перестанет изменяться.
Действие этих функций достаточно очевидно и поясняется следующими примерами.
Ввод (In)
|
Вывод (Out)
|
Append [a + с, b]
|
a+ b+ с
|
х = {а, b, с}
|
{a, b, c}
|
AppendTo [ х , 15 ]
|
{a, b, c, 15}
|
x
|
{a, b, c, 15}
|
Apply[f, а
А
2 + b
^
2, 2]
|
f[a, 2] +f[b, 2]
|
Cancel [(z-1)
^
2/ (z - 1) ]
|
-1 + Z
|
Cases[{a, 3.5, 2, 5, "HELLO"}, _Integer]
|
{2, 5}
|
Exp[N[-лI]]
|
-1. - 1. 22461 x 10
-16
I
|
Chop[%]
|
-1.
|
Ехр[N[-лI]]
|
-1. - 1. 22461 x10
16
I
|
Chop[%, 1*10^-10]
|
-1.
|
Replace[s
^
2, s
^
2 -> a]
|
a
|
s^2 /. s -> a
|
a
2
|
Заинтересованному в таких манипуляциях читателю рекомендуется просмотреть множество примеров, имеющихся в справочной системе Mathematica, и, разумеется, попробовать свои собственные примеры.
Содержание раздела