Назначение пакетов расширения и обращение к ним
Новые пакеты Maple 7
Система Maple 7 пополнилась рядом новых пакетов:
- CurveFutting – приближение кривых;
- ExternalCalling – внешние вычисления;
- LinearFunctionalSystem – линейные функциональные системы;
- MathML – поддержка средств языка MathML 2.0;
- OrthogonalSeries – серии с ортогональными полиномами;
- PolynomialTools – работа с полиномами.
Из этих пакетов надо особо выделить пакет приближения кривых. Он содержит наиболее важные функции для приближения кривых, которые до сих пор были разбросаны по ряду пакетов. В конце данного урока содержится описание пакета CurveFitting. Там же имеется описание другого нового и полезного пакета – PolynomialTools.
Получение информации о конкретном пакете
С помощью команды:
>?name_package;
Можно получить информацию о любом пакете расширения и найти список входящих в него функций. Названия пакетов были приведены выше.
Для обращения к функциям того или иного пакета используется его полная загрузка командой:
>with(package):[:]
Знак : блокирует вывод списка функций пакета а знак; указывает вывести этот список.
Если вам необходима какая-то одна функция пакета или небольшая их часть, то не стоит загружать пакет целиком. Это может привести к избыточным затратам памяти компьютера и даже нарушить нормальную работу некоторых функций – следует помнить, что нередко пакеты переопределяют некоторые функции ядра.
Для загрузки избранных функций используется команда with в форме:
>with(package .f1 .f2….):
…или:
>with(package, [f1 .f2….]):
При этом загружаются функции f1, f2,… из пакета с именем packages.
Может показаться, что было бы лучше иметь все функции в ядре. Однако создание ядра, реализующего все функции системы (в версии Maple 7 их около 3000), неразумно. Такое ядро занимало бы много места в памяти, имело большое время загрузки и затрудняло бы поиск конкретных нужных функций.
Поэтому ядро Maple 7 содержит определенный (и довольно обширный) минимум хорошо апробированных функций, а большинство других функций размещается в стандартной библиотеке и пакетах. Они готовятся на Maple-языке программирования и могут легко модернизироваться. К тому же пакеты могут модифицироваться (что не очень желательно) или дополняться (что приветствуется) пользователями. Некоторой платой за это является необходимость вызова того или иного пакета или функции перед их применением.
В этом разделе описана структура пакетов Maple 7, имеющих математическую направленность. Ограниченный объем книги и огромное число функций в пакетах не позволяют остановиться даже на описании синтаксических правил применения всех функций этих пакетов. Очевидно, что в этом нет и особого смысла – подавляющее большинство функций представляет малый интерес для конкретного пользователя. Те же, кто ими интересуются, могут легко восполнить пробелы в их описании с помощью справочной системы.
Однако в описании состава каждого пакета в данном уроке упомянуты имена всех без исключения его функций. Это позволяет оценить полноту того или иного пакета и без труда вызвать справочные страницы для любой функции. Описание функций пакетов в уроке дано выборочно, при этом предпочтение отдавалось тем функциям, которые используются в массовых математических и научно-технических расчетах и представляют интерес для достаточно широкого круга читателей.
Полезно отметить, что большинство функций имеет вполне понятные имена, отражающие их суть и назначение. К примеру, назначение функций animate или даже textplot в пакете plots или Diff, Int и Limit в пакете student понятны, пожалуй, всем. Но и в гораздо более специализированных пакетах имена входящих в них функций в значительной мере знакомы специалистам, поскольку почти всегда ассоциируются с общепринятыми названиями тех или иных специализированных функций или с их комбинациями.