Maple 9.5/10 в математике, физике и образовании
Шрифт:
Для создания последовательностей выражений можно использовать также функцию seq:
3.5.4.
При выполнении порой даже простых операций результаты получаются чрезвычайно громоздкими. Для повышения наглядности выражений Maple выводит их с выделением общих частей выражений и с присваиванием им соответствующих меток. Метки представлены символами %N, где N — номер метки.
Помимо меток при выводе результатов вычислений могут появляться и другие специальные объекты вывода, например корни RootOf, члены вида O(x^n), учитывающие погрешность при разложении функций в ряд, и обозначения различных специальных функций, таких как интегральный синус, гамма-функция и др. Примеры такого вывода приведены ниже:
Часто встречаются также знаки ~ для отметки предполагаемых переменных, постоянные интегрирования и другие специальные обозначения. По мере упоминания в тексте таких объектов вывода они будут описаны.
3.5.5. Работа с частями выражений
Выражения (expr) или уравнения (eqn) обычно используются как сами по себе, так и в виде равенств или неравенств. В последнем случае объекты с выражениями имеют левую и правую части. Для простейших манипуляций с выражениями полезны следующие функции:
• cost(a) — возвращает число сложений и умножений в выражении а (функция пакета codegen);
• lhs(eqn) — выделяет левую часть eqn;
• rhs(eqn) — выделяет правую часть eqn;
• normal(expr) — дает нормализацию (сокращение) expr в виде дроби;
• numer(expr) — выделяет числитель expr;
• denom(expr) — выделяет знаменатель expr.
Ввиду очевидности действия этих функций ограничимся наглядными примерами их применения:
Обратите
внимание на то, что в старых версиях (до Maple 7) загрузка библиотечной функции cost выполнялась иначе — командой readlib(cost). Это обстоятельство может служить причиной неверной работы документов, созданных в старых версиях Maple, в среде последующих версий Maple.3.5.6. Работа с уровнями вложенности выражений
В общем случае выражения могут быть многоуровневыми и содержать объекты, расположенные на разных уровнях вложенности. Приведем две функции для оценки уровней выражений и списков:
• nops(expr) — возвращает число объектов первого уровня (операндов) в выражении expr;
• op(expr) — возвращает список объектов первого уровня в выражении expr;
• op(n,expr) — возвращает n-й объект первого уровня в выражении expr. Ниже представлены примеры применения этих функций:
Рекомендуется просмотреть и более сложные примеры на применение этих функций в справке.
3.5.7. Преобразование выражений в тождественные формы
Многие математические выражения имеют различные тождественные формы. Порою преобразование выражения из одной формы в другую позволяет получить результат, более удобный для последующих вычислений. Кроме того, различные функции Maple работают с разными формами выражений и разными типами данных. Поэтому большое значение имеет целенаправленное преобразование выражений и данных.
Основной функцией для такого преобразования является функция
Здесь expr — любое выражение, form — наименование формы, arg3, … — необязательные дополнительные аргументы.
convert — простая и вместе с тем очень мощная функция. Ее мощь заключается в возможности задания множества параметров. Их полный перечень (около восьмидесяти наименований) можно найти в справке по функции convert. Многие из этих параметров очевидны с первого взгляда, поскольку повторяют наименования типов чисел, данных или функций. Например, опции binary, decimal, hex и octal преобразуют заданные числа в их двоичное, десятичное, шестнадцатиричное и восьмеричное представление. Параметр vector задает преобразование списка в вектор (напоминаем, что список и вектор — разные типы данных), а параметр matrix — в матрицу. Приведем примеры применения функции convert (файл expr1):