Математические пакеты

В данной статье мы постараемся выяснить, что собой представляют популярные математические пакеты Maple, Matlab, Mathematica и Mathcad. Основное внимание будет уделено их возможностям и тем типам задач, которые они решают. К сожалению, нам не удалось достучаться до разработчиков Maple и Matlab. Но это не беда - ведь Maple и Matlab, пожалуй, самые популярные в России пакеты математических вычислений. О них нам любезно согласились рассказать эксперты журнала Exponenta Pro.

Mathcad


На наши вопросы отвечает Диана Эшфилд (Diane Ashfield), менеджер по маркетингу компании Mathsoft.


TanaT: Расскажите немного о своей компании.

Диана Эшфилд: Частная компания Mathsoft была основана в 1984 году. Наши штаб-квартиры расположены в городах Кембридж (штат Массачусетс, США), около технологических центров Массачусетского Технологического Института и Гарвардского Университета (Harvard University). Нынешний владелец компании приобрел контрольный пакет акций в январе 2001 года. Таким образом, Mathsoft превратилась из государственной компании в частную. Это позволило ей сохранить место ведущего поставщика корпоративного программного обеспечения для организаций, занимающихся интенсивными инженерными расчетами, а также для правительства и сферы образования.
Mathsoft - это единственный поставщик вычислительного ПО и документации, который дает возможность инженерам-конструкторам работать с помощью универсального языка инженерной математики. Наш флагманский продукт, Mathcad, призван ускорить разработку продуктов и технологических исследований, гарантируя высокое качество вычислений.
В Mathcad реализована технология самодокументирования, соответствующая всем издательским стандартам. Это позволяет инженерам создавать и заново использовать результаты уже проведенных вычислений, а также обмениваться ними с коллегами. Более полутора миллиона пользователей по всему миру используют Mathcad. Он почти стал промышленным стандартом.


TanaT: Кто является основными пользователями Mathcad?

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


TanaT: Сколько стоит Mathcad и где его можно купить в России?

Диана Эшфилд: Лицензия Mathcad 11 для одного пользователя стоит $999, существует множество скидок при продаже большого количества пакетов Mathcad Enterprise. Мы также делаем скидки для образовательных учреждений и студентов. Вот наши представители в России:

SoftLine Corporation
Shvernika Street. Bldg.4
117036, Moscow, Russia
Tel: +7-(095)232-0023
Fax: +7-(095)232-0023
Email: info@softline.ru
WWW: http://www.mathcad.ru

Если потребуется, они ознакомят вас со всеми ценами.


TanaT: В чем состоит особенность Mathcad? И чем он отличается от таких конкурентов, как Maple, Matlab, Mathematica?

Диана Эшфилд: Проводя вычисления с помощью Mathcad, кажется, что вы просто работаете с обыкновенной бумагой. Для четкого и понятного изложения метода и всех сделанных допущений можно вставлять столько комментариев, сколько потребуется. Рабочие листы Mathcad можно легко перепроверить, все документировано так четко, что понять не составляет труда. Благодаря интеллектуальным технологиям Mathcad, вы никогда не ошибетесь с размерностями, несовместимыми модулями. Рабочие листы защищены от такого рода ошибок, так что допустить ошибку на начальном этапе расчетов очень сложно. Вычислительные процедуры и важные для проекта параметры выносятся так, чтобы их можно было легко менять и следить за результатами. Например, легко определить, на какие вычисления в проекте повлияло изменение процедуры или параметра. Mathcad позволяет представлять результаты расчетов таким образом, что их поймут и инженеры, и менеджеры, и покупатели, и служба поддержки и проверяющие.

Maple, MATLAB и Mathematica - это языки программирования. Языки программирования гибкие и мощные, но трудные в использовании и требующие длительного времени на изучение. Поэтому, пользовательский интерфейс сложен, в нем легко допускать ошибки, которые вынуждают проверять и отлаживать весь код. Программирование не визуально и не интерактивно. Невозможно поменять несколько строк в программе и автоматически увидеть результаты. Для этого вам потребуется перекомпилировать и перезапустить программу. Также сложно разделить работу, а потом понять и использовать решения коллег. Не программисты не смогут снова использовать результаты. Даже если вы являетесь программистом, повторное использование чьих-то вычислений требует всестороннего инженерного анализа, чтобы понимать те процессы, которые скрываются за полученными результатами.


TanaT: Вы не могли бы назвать ваших основных конкурентов?

Диана Эшфилд: Мы полагаем, что электронные таблицы - наши самые главные конкуренты. Некоторые организации используют электронные таблицы или языки программирования для выполнения вычислений. Но ни те, ни другие не справляются с задачей, когда дело доходит до обработки полученных данных. Электронные таблицы разработаны для бухгалтерских дел, а не для инженерных расчетов. Для этого они не очень удобны: уравнения спрятаны в ячейках, сложно вставить комментарии. Это делает работу довольно затруднительной, а устранять ошибки и разбираться в чьих-то вычислениях вообще сложно. Электронные таблицы трудны для понимания и повторного использования другими членами организации.


TanaT: Каковы основные особенности Mathcad? Какие задачи данный пакет решает?

Диана Эшфилд: Вот краткий обзор вычислительных возможностей Mathcad:

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

Подробности можно узнать на сайте: http://www.mathcad.com/products/Mathcad.asp


TanaT: Какая последняя версия Mathcad? Каковы основные изменения в ней?

Диана Эшфилд: При создании Mathcad 11, мы сосредоточили усилие на повышении скорости и мощности. Наша цель состояла в том, чтобы укрепить ядро Mathcad и повысить его практичность. Упрощение обработки данных, улучшение редактирования рабочих листов, улучшение взаимодействия с другими программами и повышение функциональных математических возможностей - суть последнего усовершенствования.


TanaT: Когда будет выпущена новая версия, и какие в ней планируются изменения?

Диана Эшфилд: Мы не собираемся выпускать новую версию Mathcad раньше весны/лета 2004 года и у нас еще нет планов на возможне изменения.


TanaT: Вы помогаете российским пользователям? Если да, то в чем заключается ваша поддержка?

Диана Эшфилд: Наш дистрибьютор - SoftLine - обеспечивает техническую поддержку российским пользователям, но у нас нет российской локализированной продукции.


TanaT: Спасибо, что уделили нам время!

Mathematica


На наши вопросы отвечает Кэтрин Киммер (Catherine Kimmer), менеджер продукта Mathematica в компании Wolfram Research.


TanaT: Расскажите немного о вашей компании.

Кэтрин Киммер: Компания Wolfram Research разрабатывает программное обеспечение для технологических расчетов. Рынок пользователей Wolfram Research на сегодняшний день, насчитывает около двух миллионов человек по всему миру, его большая часть принадлежит флагманскому продукту компании - Mathematica. Также, программное обеспечение компании получило множество промышленных наград за техническое превосходство. Частная компания Wolfram Research была основана в 1987 году Стивеном Вольфрамом (Stephen Wolfram). Ее штаб-квартира находится в городе Шампань, штат Иллинойс. Также есть офисы в Европе и Японии. Подробную информацию о компании Wolfram Research и ее продукции вы сможете получить, посетив наш сайт http://www.wolfram.com.


TanaT: Кто является основными пользователями Mathematica?

Кэтрин Киммер: Наибольшая часть пользователей Mathematica - это технические профессионалы. Также Mathematica широко используется в образовании. Сейчас несколько тысяч курсов на основе этого продукта читаются во многих учебных заведениях, начиная от средней школы и заканчивая аспирантурой. На сегодняшний день Mathematica используется в 50 самых крупных университетах по всему миру и в группе компаний Fortune 500, а также во всех 15 основных министерствах правительства США.


TanaT: Где ее можно купить в России и сколько она стоит?

Кэтрин Киммер: Коммерческая лицензия Mathematica стоит $1317.75. Для клиентов из сферы образования мы предлагаем Russian Mathematica Grant. Он создан для образовательных учреждений России и бывших стран СССР. Университетам предоставляется большая скидка на лицензию Mathematica 4.2. С помощью этой программы Wolfram Research способствует развитию технологий в России.
Лицензия на весь университет стоит $3000 не считая дополнительных транспортных расходов. Wolfram Research обеспечивает университет сетевой лицензией на 100 мест. 100 студентов могут одновременно на разных компьютерах использовать Mathematica.
Персональную копию Mathematica можно купить за $100 не считая дополнительных транспортных расходов. Если учреждение купит более 13 единичных пользовательских лицензий, оно получит 25% скидку.
Чтобы подробнее узнать о Mathematica, напишите письмо по адресу info@wolfram.com или свяжитесь с нашим российским дистрибьютором SoftLine Co. по телефонам +7-(0)095-232-00-23 и +7-(0)095-126-90-65 или по адресу: info@softline.ru


TanaT: Расскажите об особенностях Mathematica?

Кэтрин Киммер: Mathematica объединяет в единое целое числовое и символьное вычислительное ядро, графическую систему, язык программирования, систему документации и возможность взаимодействия с другими приложениями.


TanaT: Как вы считаете, кто ваш главный конкурент?

Кэтрин Киммер: Для всей среды Mathematica нет единственного конкурента. Вообще говоря, конкуренты делятся на следующие группы: численные пакеты, системы компьютерной алгебры, приложения дл набора текста и подготовки документации, графические и статистические системы, традиционные языки программирования (средства разработки интерфейсов) и электронные таблицы. С тех пор, как Mathematica впервые появилась, другие математические пакеты существенно расширили спектр собственных возможностей, первоначально они предназначались для решения задач, относящихся лишь к одной или двум вышеперечисленным категориям. Например, системы компьютерной алгебры научились решать задачи численно. Несмотря на это, Mathematica уникальна, потому что она неизменно объединяет все эти возможности.


TanaT: Каковы основные особенности Mathematica и какие задачи она решает?

Кэтрин Киммер: Mathematica имеет несколько основных особенностей и предназначена для решения широкого спектра задач. Вот некоторые классы задач, решаемых с помощью Mathematica:

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


TanaT: Какая последняя версия Mathematica? Каковы основные изменения в ней?

Кэтрин Киммер: Mathematica 4.2 - последняя версия. Mathematica 4.2 содержит новые функции и расширенную связь с Java, XML и сетью. Она предлагает новые усовершенствованные возможности для линейного программирования, статистики, оптимизации, комбинаторики и теории графов.
Более подробную информацию об этих и других новейших возможностях Mathematica 4.2 вы можете узнать, посетив наш сайт http://www.wolfram.com/products/mathematica/newin42.


TanaT: Вы оказываете поддержку российским пользователям?

Кэтрин Киммер: Наш партнер в России проводит конференции и семинары, посвященные Mathematica. Wolfram Research собирается посетить города России в 2004 году, чтобы прочесть лекции и провести обучающие семинары по Mathematica. Мы собираемся съездить в различные университеты, компании и научно-исследовательские лаборатории. Если кто-нибудь из ваших читателей захочет быть спонсором лекций по Mathematica в своем институте, пусть напишут нам письмо по адресу info@wolfram.com. Мы свяжемся с ним, чтобы включить в план лекций.


TanaT: Большое спасибо, удачи вам и вашему продукту!

Maple и Matlab


На наши вопросы согласились ответить В.В. Анохин (к.ф.-м.н., гл. редактор журнала "Exponenta Pro. Математика в приложениях", компания SoftLine) и Р.И. Ивановский (д.т.н., профессор Санкт-Петербургского Государственного Политехнического Университета).




Maple в работе

TanaT: Можно ли считать, что Maple и Matlab способны решать одни и те же типы задач? Или у одного из этих пакетов спектр возможностей шире? Иногда возникает ощущение, что использование Matlab позволяет полностью отказаться от Maple, так как ядро работы с символьными переменными из Maple используется в Matlab. Как вы считаете, это действительно так?

В.В. Анохин: Maple и MATLAB - принципиально разные пакеты. У них есть пересечение в символьной математике, а именно: MATLAB имеет расширение Maple, но на этом сходство заканчивается. Maple - чисто математический пакет, а MATLAB - это язык, на котором разговаривают ученые на международных симпозиумах, т. к. MATLAB используется и математиками, и химиками, и биологами, и многими, многими другими специалистами.


Одно из многочисленных окон Matlab

TanaT: Matlab всегда способен перевести свою программу в код на языке С? Или в некоторых случаях он испытывает затруднения?

В.В. Анохин: Вопрос не совсем некорректен, версии MATLAB'а обновляются, как правило, не реже раза в год. С каждой версией ограничений становится меньше. Пока, например, нельзя транслировать программы, в которых есть операторы обращения к клавиатуре и вызова функций (feval и т.п.).


Поверхности в Matlab

TanaT: Очень часто при решении той или иной задачи (например, СЛУ) математический пакет сам выбирает, каким методом ее решать. Как бы вы оценили интеллект пакетов вообще? Они способны проводить тонкий анализ и применять самые эффективные методы? Или по-прежнему необходимо проводить анализ самому?

Р.И. Ивановский: Думается, что попытка исключить пользователя из вычислительного процесса не приведет к положительному результату. Мне бы и дальше хотелось самому принимать решение по выбору метода. Если эту функцию поручить системе, у пользователя останется справедливое недоверие к действиям системы. Всегда останется вопрос: "А действительно хороший метод предложен системой?". Нельзя полностью заменить интеллект пользователя компьютером. Выбор метода трудно формализовать, он зависит от "тонкой структуры задачи", ее порою скрытых свойств.


Экспорт модели из Maple

TanaT: Понимаю, что вопрос, возможно некорректный, но все-таки хотелось бы узнать мнение опытного человека: вы не считаете, что среди четырех известных пакетов (Maple, Matlab, Mathematica и Mathcad) есть один - самый лучший? Или у каждого свои сильные и слабые стороны?

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


TanaT: Спасибо, что уделили нам время!

Полезные ссылки


www.exponenta.ru - Очень много полезной информации об использовании пакетов Matlab и Maple в on-line.
www.exponenta.ru/journal - Полезный журнал на ту же тему, но печатный.
www.matlab.ru - Консультационный центр Matlab от компании Softline.
www.mathworks.com - Официальный сайт Matlab.
www.wolfram.com - Официальный сайт Mathematica.
www.maplesoft.com - Официальный сайт Maple.