Иллюстрированный самоучитель по Mathematica 3/4

Рекуррентные функции. Инверсные функции.

Использование подстановок при определении функций позволяет легко реализовывать рекуррентные алгоритмы, то есть алгоритмы, при которых очередной шаг вычислений основан на определенном преобразовании предшествующих шагов. Примером может служить задание функции вычисления факториала fact [n], представленное ниже.

Операция Комментарий
fact[n_]: = n*fact[n-l] Задана рекурсивная функция факториала
fact[l]=l
1
Выполнена инициализация функции
fact[3]
6
Вычислено значение 3!
fact[10]
3628800
Вычислено значение 10!
?fact[l]
Global ' fact
fact[l] = 1
fact[n_]: = nfact[n-l]
Выполнена проверка определения функции

Обратите внимание на использование знака вопроса перед именем функции в конце примера, показанного выше. Оно позволяет вывести текст декларации (определения) функции. После объявления функция может быть использована в последующих ячейках документа.

Инверсные функции

Инверсными функциями называют функции, полученные в результате обращения заданных функций. Например, для функции Sin [x] инверсной будет ArcSin [х] и т. д. Следующие функции обеспечивают представление инверсных функций:

  • InverseFunction [f ] – представляет функцию, обратную для f, то есть определенную таким образом, что InverseFunction [f ] [у] возвращает значение х, для которого f [х] равно у. Для функции нескольких переменных InverseFunction [ f ] представляет обращение по первому аргументу;
  • InverseFunction [f, n] – представляет обращение по п-му аргументу;
  • InverseFunction [f, n, tot] – представляет обращение по п-му аргументу, когда имеется всего tot аргументов.

Следующие примеры иллюстрируют работу с этими функциями.

Ввод (In) Вывод (Out)
InverseFunction [Sin] ArcSin
%[х] ArcSin[x]
Composition [ f, g, h] Ccrrposition[f, g, h]
InverseFunction [Composition [%, q] ] Corpositiont [q-1, h-1, g-1, f-1]

Обратите внимание на то, что в этих примерах фигурируют заголовки функций – например, для получения инверсной функции от Sin [х] следует использовать Sin в качестве аргумента f функции InverseFunction [f].

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.