Основы Maple

 

версия для печати

Функции и выражения

Функции или функциональные выражения вида f(x) или expr(args) – это вызов функции или применение функции (или процедуры) к аргументам args.

Для анализа типа функций каждого узла и ветви применяют команды whattype, nops, op.

Активные функции (начинаются с маленькой буквы) применяются для расчетов, например, diff, int, limit (об активных/инертных формах функций пакета Physics – см. описание команд пакета).

Инертные функции (начинаются с большой буквы) применяются для показа шагов при решении задачи, например, Diff, Int, Limit.

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

Выражение expr: действующий оператор, сформированный из комбинации команд, констант, переменных, функций.

  • Fn1:=cosh(x^3)/(1+x^2);

Внешне эту запись можно перепутать с вызовом функции.

Отличие от вызова функции в том, что именно следует сделать, чтобы вычислить определенное значение x:

Пишeте (вызываете) Fn1(x) – и ничего не получается!

Вместо этого надо было присвоить x значение:

  • x:=2.;

затем вычислить Fn1:

  • Fn1;

Функция Maple определяется так:

  • Fn2:=x->cosh(x^3)/(1+x^2);

Эта конструкция ведет себя как функция: ей дается аргумент, а она возвращает ответ:

  • Fn2(2.);

Можно определить функцию многих аргументов:

  • Fn3:=(x,y,z)->x*y^2*z^3;
  • Fn3(1,2,3);

Следовательно, знак -> обозначает функцию, как принято в математике. (Формальный синтаксис и более подробные сведения – см. Функции пользователя.)

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

Выражение Maple подобно функции в книге по математике, а функция Maple подобна устройству, которое имеет вход и выход.

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