Warning: include(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/wp-cache-base.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include_once(/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php): failed to open stream: No such file or directory in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82

Warning: include_once(): Failed opening '/var/www/iill7773/data/www/wiselab.ru/wp-content/plugins/wp-super-cache/ossdl-cdn.php' for inclusion (include_path='.:/opt/alt/php55/usr/share/pear:/opt/alt/php55/usr/share/php') in /home/u7426dd0/domains/wiselab.ru/public_html/wp-content/plugins/wp-super-cache/wp-cache.php on line 82
Основные формы записи выражений | Учебники

Главная > Mathematica 8 > Основные формы записи выражений


Основные формы записи выражений

Основные формы записи выражений
Возможны четыре основные формы записи выражений:

  • f [х, у] — стандартная форма для f [х, у];
  • f @ х — префиксная форма для f [ х ];
  • х / / f — постфиксная форма для f [ х ];
  • х ~ f ~ у — инфиксная форма для f [ х, у ].

Далее приведены примеры применения этих форм.

Ввод (In)

Вывод (Out)

F[x_] = 2*х^2

2X 2

F[a]

2a 2

a//F

2 a 2

f [x_, y_] = х^ 2 + у^2

y 2 +x 2

f[a,b]

a 2 +b 2

a-f-b

a 2 + b 2

Можно использовать ту или иную форму выражений в зависимости от класса решаемых математических задач.
Части выражений и работа с ними
Сложные выражения состоят из частей, которые могут интерпретироваться различным образом.

Тип части

Зависимость

Пример

Function

От аргументов или параметров

Ехр[х], f [х,у]

Command

От аргументов или параметров

Expand [ (х-1) ^2]

Operator

От операндов

x + y+z, a = b

Head

От элементов

{a,b,c}

Object type

От контекста

RGBColor [r,g,b]

Работа с частями выражений напоминает работу со списками. Для выделения любой заданной части выражения используются функция Part или двойные квадратные скобки;

  • Part [expr, n] или expr [ [n] ] — выделяет п-ю часть выражения, начиная с начала;
  • expr [ [-n] ] — выделяет п-ю часть выражения, начиная с конца;
  • expr [ [nl,n2,…] ] — выделяет части выражения и показывает их в форме дерева;
  • expr [[{nl, n2,…}]] — дает комбинацию нескольких частей выражения. Приведем примеры использования этих средств.

Ввод (In)

Вывод (Out)

f :=а + b*х^2 + с*х^3

 

Part[f, 3]

ex 3

Part[f, 2]

bx 2

f[[1]]

a

f[[3]]

ex 3

f[[-1]]

ex 3

Нередко выражения рассматриваются как возможные значения переменных. В этом случае используются операторы присваивания переменным заданных значений. Mathematica имеет два типа присваивания — с помощью символов «: =» и с помощью символа «=». Они различаются временем вычисления выражения, следующего за этими символами. Знак «: =» используется для задержки присваивания до вычисления правой части, например:
f[x_] := % + 2 х
Вывода здесь нет. Продолжим наш эксперимент: 1 + у^2
1 + y2
g[х_] = % + 2 х
1 + 2 х + у2
Теперь вывод есть, так как % (ссылка на предыдущий результат) определена в виде выражения 1 + у^2 и при задании [х_] использован оператор немедленного присваивания. Далее:
2 + z
2 + z
{f[a],g[a]>
{2 + 2a+z, 1 + 2 а + у2}
Следующие функции возвращают особые части выражения:

  • Denominator [expr] — возвращает знаменатель выражения ехрг;
  • First[expr] — возвращает первый элемент из ехрг;
  • Last[expr] — возвращает последний элемент из ехрг;
  • Rest [expr] — возвращает ехрг с удаленным первым элементом.

Ниже приводятся примеры применения этих функций.

Ввод (In)

Вывод (Out)

Denominator [ (х + 1) / (х ^ 2 + 2*х + 3) ]

3+ 2х+ х^2

ехрг = а * b + с — d

ab+ с- d

First [expr]

ab

Last [expr]

-d

Rest [expr]

c-d

Работа с выражениями, умение их преобразовывать и выделять нужные фрагменты является важнейшей частью культуры символьных преобразований.
Удаление элементов выражения
Иногда возникает необходимость в удалении части выражения. Для этого используются следующие функции:

  • Delete [expr, n] — удаляет элемент в позиции п в выражении ехрг. Если п отрицательно, позиция отсчитывается с конца;
  • Deletefexpr, (i, j,…}] — стирает часть выражения в позиции {i, j ,…};
  • Delete [expr, {{i1, j1,…}, {i2, j2,…},…}] — удаляет части выражения в нескольких указанных позициях;
  • DeleteCases [expr, pattern] — удаляет все элементы выражения expr, которые совпадают с образцом pattern;
  • DeleteCases[expr, pattern, levspec] — удаляет все части выражения ехрг на уровнях, указанных levspec и соответствующих образцу pattern.

Следующие примеры иллюстрируют применение этих функций.

Ввод (In)

Вывод (Out)

ехрr = а * b + с — d

ab + с — d

Delete [expr, 1]

c-d

Delete [expr, 3]

ab+ с

Delete [expr, {{!}, {3}}]

с

DeleteCases [expr, а*b]

c-d

DeleteCases [expr, с, 1]

ab-d

Обратите внимание на то, что в общем случае выражения могут быть многоуровневыми. Уровень задается спецификацией levspec.

Статьи по теме

Комментарии запрещены.