CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2002 ГОД

Maple кленовый символ математики

Константин НОСОВ

Сегодня мощными универсальными пакетами, в том числе и математическими, никого не удивишь. Обилие и разнообразие предложений на рынке научного программного обеспечения — большое благ для пользователя, ищущего рабочий инструмент, но с другой стороны, проблема выбора может поставить в тупик даже серьезного специалиста.

Математический пакет, о котором пойдет речь сегодня, был создан для удовлетворения запросов любого пользователя, нуждающегося в математических расчетах, — от школьника до профессионального исследователя. Система Maple, выпускаемая известной компанией-производителем научного ПО Waterloo Maple Inc. (http://www.maplesoft.com), давно стала незаменимым рабочим инструментом многих тысяч инженеров и математиков. Надеемся, что наша публикация увеличит число поклонников этого замечательного продукта.

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

Система Maple представляет собой математический пакет универсального назначения, с помощью которого можно численно и аналитически решать широчайший спектр задач современной математики, строить двух- и трехмерные графики, обмениваться данными с другими приложениями.

Все вычисления выполняются в дружественной интерактивной среде и записываются в Worksheet — основной документ программы (рис. 1). Работа с документом Worksheet базируется практически на тех же принципах, что и Рис. 1редактирование обычного документа в текстовом редакторе: текст можно форматировать на уровне абзацев (для этого поддерживаются привычные стили) или символов, содержимое документа допускает структурирование по секциям, подсекциям и т. д. — вплоть до ячеек, в которые записываются отдельные абзацы и операторы. Существенным отличием является лишь наличие активной строки ввода, воспринимающей команды пользователя. Введенные команды (операторы) передаются ядру системы и возвращаются, как правило, в виде текста или графического изображения. Таким образом интерфейс Maple соединяет функции текстового и командного процессоров, что для большинства пользователей является достаточно привычным решением.

Чтобы не терять время на характеристику второстепенных деталей, сразу перейдем к основным задачам, решаемых системой. В Maple доступны более 3000 функций, охватывающих основные области современной математики. Сильной стороной пакета является использование во многих его функциях высокоэффективных алгоритмов, разработанных Numerical Algorithm Group (Великобритания) — коллективом высококлассных специалистов по численному анализу.

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

Система позволяет проводить следующие символьные вычисления:

основные операции анализа (нахождение пределов, дифференцирование, интегрирование);

подсчет символьных сумм и произведений;

аналитические преобразования выражений (различные виды разложений, приведение подобных, факторизация, операции с полиномами и многие другие);

операции дискретной математики (комбинаторика и теория графов);

решение дифференциальных уравнений и их систем — как обыкновенных, так и в частных производных. Возможно решение начальных, краевых и многоточечных задач для дифференциальных уравнений;

решение задач линейной алгебры: решение систем линейных уравнений, нахождение определителей матриц, их собственных корней и собственных чисел, разложений, ядер и десятков других характеристик;

интегральные преобразования, разложение функций в ряды Тейлора и Фурье, операции из теории чисел, групп, дифференциальных алгебр и форм;

и многие другие функций, перечисление которых заняло бы многие страницы.

Все вычисления можно проводить как в вещественной, так и комплексной арифметике.

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

Maple — мощный инструмент визуализации функциональных зависимостей, позволяющий строить двумерные и трехмерные графики поверхностей и кривых (рис. 2). Для графика в зависимости от его типа можно выбрать цвет и толщину линий, вид осей координат, тип заливки поверхности, добавить пояснительные надписи и задать многие другие параметры, придающие рисунку совершенный и научно корректный вид. Кроме статических, система позволяет строить анимированные графики, Рис. 2позволяющие в режиме реального времени просматривать развитие динамических процессов. Например, решив нестационарное дифференциальное уравнение, с помощью анимированного графика можно сразу же просмотреть, как его решение зависит от времени.

Несмотря на широкий набор встроенных функций, для решения сложных задач их всегда не хватает. Поэтому Maple был создан как расширяемая система, позволяющая пользователю вводить собственные функции и программы. Система имеет внутренний язык программирования, состоящий из привычных любому программисту операторов цикла, условного перехода, присваивания и других, имеющихся и в других языках. Главные же средства языковой среды Maple ориентированы на проведение расчетов — как численных, так и аналитических, что отличает его от традиционных языков. С помощью программы на внутреннем языке несложно вызвать внешнюю динамическую библиотеку, написанную в другом приложении. Кроме того, для любого выражения или процедуры пакета можно получить код на C и Fortran’е — языках, наиболее часто используемых в научных приложениях.

Организационно Maple состоит из ядра, постоянно загруженного в память, и подключаемых библиотек, решающих специфические задачи. Такая организация используется для экономии системных ресурсов и повышения быстродействия. Подключаемые библиотеки (называемые в Maple пакетами — packages) содержат функции, относящиеся к одной какой-либо области. Maple содержит несколько десятков пакетов, охватывающих такие сферы, как комбинаторика, алгебраическая геометрия, финансовая математика, поля Галуа, статистика, теория чисел, алгоритмы аппроксимации и другие. Для студентов и школьников, которым нужно получить не только ответ, но и решение задачи, очень пригодится пакет Student, позволяющий отображать промежуточные результаты многих математических операций.

Для работы с большими массивами в системе предусмотрена поддержка электронных таблиц Spreadsheet (рис. 3). Таблица вставляется непосредственно в документ системы. Принципы работы с электронной таблицей Рис. 3практически такие же, как в популярных табличных процессорах типа Lotus 1-2-3 или Excel: поддерживаются абсолютные и относительные ссылки на ячейки, имеются функции автозаполнения и т. д.

Maple может обмениваться данными со многими приложениями. Документы системы экспортируются в специальные (HTML, LaTeX) и текстовые форматы (RTF, Plain Text). Отметим тесное взаимодействие системы с Microsoft Excel. Из Excel с помощью специальной надстройки (add-on) пользователи получают доступ ко всем функциям Maple, что позволяет соединить и умножить мощь этих двух замечательных пакетов.

Летом минувшего года была выпущена новая версия системы —Maple 7. Должен сказать, что и предыдущая, 6-я версия, является очень мощной и надежной программой. Во время ее использования даже при решении очень сложных и масштабных задач крайне редко возникали проблемы, связанные с ограниченностью возможностей системы. С появлением же новой версии Maple поднялся еще на ступеньку выше, поставив компьютерные вычисления на новую, недосягаемую ранее высоту. Поскольку места у нас немного, опишем наиболее важные нововведения, появившиеся в очередной версии.

Система была усовершенствована в нескольких направлениях.

Введение новых математических методов, позволяющих существенно расширить круг решаемых задач.

Так, появилось несколько важных функций для решения новых типов дифференциальных уравнений и их систем. Усовершенствованы многие численные алгоритмы, что позволяет проводить приближенные вычисления с недоступной ранее скоростью и/или значительной экономией оперативной памяти. Это дает возможность обрабатывать значительно большие массивы и решать более сложные задачи, чем раньше, затрачивая при этом меньше ресурсов.

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

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

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

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

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

Поддержка форматов XML и MathML. MathML (от Mathematical Markup Language) — одно из расширений языка XML, ставшее стандартом для передачи математических текстов по сети.

В заключении скажем, что система сегодня доступна для всех основных платформ (Windows, Macintosh и Unix/Linux), требует порядка 80 Мб дискового пространства и в зависимости от используемой ОС от 16 Мб до 64 Мб оперативной памяти, что вполне приемлемо для программ такого класса.

Понятно, что в небольшом обзоре сложно изложить все возможности такого многогранного и сложного продукта, как Maple, и многие вопросы, с ним связанные, остались вне нашего рассмотрения. И все же надеемся, что наша публикация достаточна для общего ознакомления с возможностями системы. Maple — исключительно мощный и универсальный вычислительный инструмент. Овладев им, Вы почувствуете себя уверенно в бескрайнем океане компьютерной математики.

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov