Доброго обывателя в области математики поражает способность Maple выполнять точные арифметические операции с целыми числами, которые не помешаются в строку. При этом знак \ переносит вывод на следующую строку, а знак % подставляет в строку ввода результат предшествующей операции:
> 200!+123456789;
031904170324062351700858796178922222789623703897374720 \ 000000000000000000000000000000000000000123456789> %-200!;
123456789Но Maple 9.5 идет еще дальше — почти мгновенно (особенно при повторе примера) система вычисляет факториал 100000:
> t : = time():bigFactorial := 100000!:TIME=time()-t;
TIME = .609> t := time():bigFactorial := 100000!:TIME=time()-t;
TIME = 0Заметно повышена и скорость многих сложных вычислений. Например, на вычисление внушительного определенного интеграла
> Int( х^n*ехр(-х^n) + Sum( cos(k*x)/k, k=1..n), х=0..1);
в стократно повторяющемся цикле, Maple 9.5 затрачивает чуть меньше трех сотых секунды на каждое вычисление интеграла:
> t := time():
for i from 1 to 100 do
evalf(Int(х^i*ехр(-x^i) + add(cos(k*x)/k, k=0..i), x=0..1)):
end do:
TIME=time()-t;
TIME = 2.922В следующем примере вычисляется время, которое нужно для создания большой матрицы случайных чисел с помощью пакета расширения LinearAlgebra:
> М := LinearAlgebra:-RandomMatrix(500);
> timeconsumed = time(type(M, 'Matrix'(algebraic)));
time_consumed = 0.031Повышение скорости вычислений обеспечено усовершенствованием алгоритмов численных вычислений (например, GNU) и применением подпрограмм национальной группы алгоритмов NAG — общепризнанных в области быстрых вычислений при решении задач линейной алгебры. Кстати, выше была приведена первая программа на Maple-языке программирования, использующая конструкцию цикла.
Читатели книги [23], описывающей предшествующую реализацию Maple 9, обратят внимание на то, что данные по скорости выполнения операций у Maple 9.5 лишь немного отличаются от приведенных для Maple 9, причем в ту или иную сторону. Это позволяет считать их практически равноценными.
Любопытно отметить, что последний пример в Maple 10 дал при первом пуске время 0.078 с, а при втором 0.015. Это говорит о том, что слишком щепетильно относиться к подобным тестам не стоит. Они дают лишь порядок величин, характеризующих скорость вычислений.
1.3. Интерфейс пользователя Maple 9.5
1.3.1. Окно системы
Как у всех приложений под Windows интерфейс Maple 9.5 имеет ряд характерных элементов, отчетливо видимых на рис. 1.2, 1.3 и 1.4:
• строка заголовка (сверху);
• строка главного меню;
• главная панель инструментов;
• контекстная панель инструментов, вид которой зависит от режима работы с Maple 9.5;
• окно ввода и редактирования документов;
• строка состояния (в самом низу окна);
• панели ввода специальных математических символов (см. ниже).
Пользовательский интерфейс Maple 9.5 позволяет готовить документы, содержащие одновременно текстовые комментарии, команды входного языка (с возможным преобразованием их в естественную математическую форму нажатием кнопки с буквой «х»), результаты вычислений в виде обычных математических формул и графические данные. Это обеспечивает понятное представление исходных данных и результатов вычислений, а также удобство их повторного использования.
Пользователь Maple 9.5 (как и ряда других математических систем) работает с документами, которые являются одновременно описаниями алгоритмов решения задач, программами и результатами их исполнения. Все данные команды и результаты размещаются в соответствующих ячейках. Графические построения выполняются как в ячейках документа, так и в отдельных окнах, и имеют свои меню для оперативного управления параметрами.
1.3.2. Меню системы
Наиболее полные возможности управления предоставляет меню системы Maple 9.5, расположенное под строкой заголовка — см. рис. 1.4 с открытой позицией View меню. Ниже дан перечень позиций меню, доступных при наличии открытого документа и стандартном виде интерфейса (см. рис. 1.2):
File — работа с файлами и печатью документов;
Edit — команды редактирование документа и операции с буфером обмена;
View — управление видом пользовательского интерфейса;
Insert — операции вставки;
Format — операции задания форматов;
Tools — доступ к инструментальным средствам;
Window — управление окнами;
Help — работа со справочной системой.
При классическом интерфейсе позиция Tools меню отсутствует, но есть другая позиция меню:
Spreadsheet — операции задания таблиц.
В позиции Tools меню стандартного интерфейса имеется доступ к ряду новых средства системы Maple 9.5, прежде всего к маплетам (maplets). Это надо учитывать при выборе интерфейса, с которым лучше работать.