Информационные технологии для математических вычислений на примере пакета Maple. Профессиональные математические пакеты в образовании

На iOS - iPhone, iPod touch 31.07.2019
На iOS - iPhone, iPod touch

Лекция 5.
Математические пакеты для решения статистических задач
1) STATISTICA
2) MathCad
3) MatLab
4) MS Excel
5) Примеры других математических пакетов

1. STATISTICA
Какой математический пакет для решения статистических задач в настоящее время считается наиболее популярным?
В настоящее время научное и инженерное сообщество снабжено огромным количеством вычислительных математических пакетов, которые реализуют типовые решения стандартных практических задач, относящихся как к самой математике, так и к её приложениям в любой области человеческой деятельности. Теперь стандартные задачи можно в считанные секунды решить, используя доступ к мощному вычислительному серверу с любого персонального мобильного устройства.
Одним из известных и популярных математических пакетов является программа STATISTICA.
STATISTICA предоставляет мощные и удобные в использовании инструменты для статистического и графического анализа, прогнозирования, Интеллектуального анализа данных (data mining) — это технология выявления скрытых взаимосвязей внутри больших баз данных, создания собственных пользовательских приложений, интеграции, совместной работы, web-доступа и др.
Программу STATISTICA позиционирует в Интернете сайт StatSoft TV - новый уникальный ресурс, содержащий эксклюзивные видеоролики по применению методов и инструментов STATISTICA для решения реальных задач, адрес - http://www.statsoft.ru/
В чем состоят основные преимущества программы STATISTICA?
Преимущества использования STATISTICA:
. Удобный интерфейс и уникальные возможности настройки
Интерфейс STATISTICA является интуитивно понятным, легко настраивается в соответствии с пользовательскими задачами и аналогичен интерфейсу стандартных Windows приложений, поэтому легко осваивается пользователем.
Анализ данных проводится интерактивно, в режиме последовательно открывающихся диалоговых окон. Любое окно анализа сконструировано таким образом, что на первой вкладке содержатся только самые необходимые кнопки, а на последующих вкладках - углубленные методы и специальные опции.
Таким образом, внимание новичка не отвлекают дополнительные настройки и параметры, а продвинутый пользователь сможет всегда настроить анализ по своему усмотрению.
. Уникальная графика
STATISTICA включает графический модуль, содержащий удобные инструменты для эффективной и наглядной визуализации данных, проведения графического анализа. Более 10 000 различных типов графиков, имеющих богатые возможности редактирования, интерактивной настройки (вращение, масштабирование, прозрачность и другие возможности).
Графика STATISTICA традиционно признаётся самой точной и удобной в использовании.
. Возможность работы с файлами неограниченного размера, непревзойденная скорость обработки данных
Одним из важных свойств программных продуктов STATISTICA является их быстродействие при работе с большим объемом данных и вычислительная мощность приложений, требующих регулярного построения запросов к базам данных, комплексного управление данными.
. Повышенная точность вычислений
STATISTICA является единственным пакетом, способным максимально точно провести многие статистические расчеты.
. Широкие возможности интеграции и совместимости, простой импорт/экспорт данных, легкий доступ к базам данных
С 2008 года StatSoft является партнером Microsoft. STATISTICA полностью соответствует стандартам Microsoft, включая Связывание и внедрение объектов. Это позволяет:
- интегрировать новые модули в существующие системы;
- строить на основе STATISTICA интеллектуальную систему принятия решений, используя процедуры STATISTICA как готовые элементы.
STATISTICA позволяет напрямую производить импорт/экспорт данных из Microsoft Office, работать в Microsoft Excel "внутри" STATISTICA, автоматически сохранять результаты в Microsoft Word.
STATISTICA взаимодействует с любыми реляционными базами данных (Oracle, MS SQL Server, Informix, Access и др.), хранилищами бизнес-информации.
Имеет место интеграция с языком R (язык программирования для статистической обработки данных и работы с графикой). http://www.statsoft.ru/products/integration/integration-with-R.php
STATISTICA взаимодействует с Microsoft SharePoint, поддерживает OLAP технологии - аналитическая обработка в реальном времени — технология обработки данных, заключающаяся в подготовке суммарной (агрегированной) информации на основе больших массивов данных, структурированных по многомерному принципу.
В чем прослеживаются примеры интеграции STATISTICA?
Примеры интеграции
. Автоматизация любых процедур с помощью STATISTICA Visual Basic
Полный COM ориентированный интерфейс среды STATISTICA Visual Basic для всех функций и процедур (более 14000 функций), автоматическая запись макросов позволяют создавать пользовательские приложения и надстройки над STATISTICA для автоматизации любых еженедельных или длительных процедур.
Доступ ко всем свойствам через объектную модель, мощный отладчик процедур, браузер функций и т.д. позволяют создавать необходимые приложения максимально быстро.
STATISTICA Visual Basic интегрирован со множеством приложений (таких как MS Excel) и различными языками программирования (С++, Java и др.).
. Поддержка Web-технологий
Корпоративные версии STATISTICA полностью web-интегрированы: "ввод" и "вывод" данных через Web, направление результатов на Web-сервер, построение сложных автоматизированных систем, работающих с данными из внешних источников, проведение анализов и обновление содержания HTML-страниц на Web-сервере. Возможность пакетной обработки данных. Использование многоуровневой архитектуры клиент-сервер.
. Наличие русифицированной версии
STATISTICA полностью переведена на русский язык, включая электронное справочное руководство и документацию. Информация содержит общие положения о статистическом анализе данных, подробно разобранные примеры проведения конкретного анализа.
Для каких сфер деятельности может быть использована программа STATISTICA?
STATISTICA предоставляет решения - по отраслям
. Банковское дело
. Бизнес/Маркетинг
. Геологоразведка
. Интернет
. Медицина
. Образование
. Промышленность
. Страхование
. Телекоммуникации
. Фармакология
. Финансы
. Экономика/Социология
. Энергетика
Каким образом можно освоить программу STATISTICA?
Производитель на сайте http://www.statsoft.ru/ предоставляет возможность учиться:
. Электронный учебник
. Интерактивный модуль
. Техническая поддержка
. Книги
. Презентации
. Брошюры
Данные возможности открываются через меню Ресурсы.
Какие сервисы присутствуют на сайте производителя программы?
На сайте http://www.statsoft.ru/ можно посмотреть:
. Общие видео
. Прочитать про функции прогнозирование, Контроля качества, Методы статистики
. Data Mining - интеллектуальный анализ данных — это технология выявления скрытых взаимосвязей внутри больших баз данных
. Нейронные сети - исключительно мощный метод моделирования, позволяющий воспроизводить чрезвычайно сложные зависимости. В частности, нейронные сети нелинейны по свой природе. На протяжении многих лет линейное моделирование было основным методом моделирования в большинстве областей, поскольку для него хорошо разработаны процедуры оптимизации. В задачах, где линейная аппроксимация неудовлетворительна (а таких достаточно много), линейные модели работают плохо. Кроме того, нейронные сети справляются с "проклятием размерности", которое не позволяет моделировать линейные зависимости в случае большого числа переменных
. Big Data - Большие данные в информационных технологиях — серия подходов, инструментов и методов обработки структурированных и неструктурированных данных огромных объёмов и значительного многообразия для получения воспринимаемых человеком результатов, эффективных в условиях непрерывного прироста, распределения по многочисленным узлам вычислительной сети, сформировавшихся в конце 2000-х годов, альтернативных традиционным системам управления базами данных и решениям класса Business Intelligence

Какие виды программы STATISTICA предлагает производитель?
Линейка STATISTICA состоит из следующих продуктов:
STATISTICA Base - Широкий набор основных статистик и графических инструментов в понятном интерфейсе со всеми преимуществами, простотой и мощностью технологий STATISTICA.
STATISTICA Advanced - Включает все возможности STATISTICA Base, а также мощные инструменты для построения линейных/нелинейных моделей, многомерные технологии анализа данных, инструменты для анализа мощности и вычисления объема выборки.
STATISTICA Quality Control - Включает STATISTICA Base, модуль для анализа мощности, а также промышленный блок модулей: Карты Контроля Качества, Анализ Процессов, Планирование Экспериментов.
Кроме основных версий Производиетль StatSoft предлагает:
. программный продукт для нейросетевых исследований, полностью переведенный на русский язык,
. набор аналитических инструментов, включая Data Miner, Text Miner, Data Visualization и др.
. специализированные модули для решения задач в промышленности, retail, финансовой сфере и др.
К вышеперечисленным, имеются корпоративные продукты STATISTICA, которые совмещают эффективный интерфейс для доступа к центральному многопользовательскому репозиторию данных, средства для совместной работы пользователей и мощный функционал статистического анализа данных с преимуществами корпоративной работы, а также являются корпоративной платформой для продуктов, основанных на промышленных модулях.
Отдельным модулем программы STATISTICA выделены расширенные версии продуктов STATISTICA с возможностью генерирования исходного кода на языках C, Java и PMML, мощными инструментами для анализа неструктурированной текстовой информации. К расширенным возможностям программы относится Платформа для сбора, поиска и бизнес-анализа Больших Данных. Объединяет в себе возможности последних разработок в области Big Data:
. Масштабируемость и производительность Hadoop
. Создание выборок с помощью MapReduce
. Поиск на движке Lucene/SOLR
. Углубленная аналитика Mahout
. Работа с текстом Natural Language Processing
. Возможность работы в «облаках»
. контроль доступа и аудит операций,
. автоматизация сбора, предобработки и анализа, аналитические отчеты,
. архитектура клиент-сервер и т.д.
Имеется еще и Специализированные продукты STATISTICA, позволяющие агрегировать и форматировать большой объем исходных данных, быстро представлять данные в виде наглядных таблиц, получая оперативную информацию для принятия бизнес-решений, имеют удобный инструмент для создания скоринговых карт, тестирования и мониторинга скоринговых моделей (скоринг - система оперативной оценки клиента (потенциального заемщика) с помощью численных статистических методов), набор методов для проведения многомерного статистического управления качеством, инструмент для анализа экспериментов, содержащих как фиксированные, так и случайные эффекты.

2. MathCad
Почему пакет MathCad пользуется популярностью?
Одним из наиболее эффективных математических пакетов, способствующих как объединению математики и информатики, так и изучению классической математики, является пакет Mathcad. Он достаточно прост для освоения студентами и достаточно открыт, для того, чтобы за программированием увидеть математическую основу решаемой задачи.
В чем состоит основное достоинство MathCad?
Пакет MathCAD - продукт компании Mathsoft (появился 1988г.) - представляет собой универсальный математический пакет, предназначенный для выполнения инженерных и научных расчетов. Основное достоинство пакета - естественный математический язык, на котором формулируются решаемые задачи. К тому же у пакета мощная графическая составляющая. Объединение текстового редактора с возможностью использования общепринятого математического языка и графических средств позволяет пользователю получить готовый итоговый документ в визуально приятном виде. Применение пакета существенно повышает эффективность интеллектуального труда.
В настоящее время разработано и функционирует множество различных математических систем: Maple, Matlab, Mathematica, Reduce, Derive, Theorist, Macsyma и др. Каждая из них имеет свои преимущества и недостатки, а также свои области применения.
В чем состоят основные достоинства и отличия системы MathCAD от аналогичных?
1. Универсальность. MathCAD способен решать практически все задачи из различных областей применения математики. В нем имеется мощный математический аппарат, позволяющий решать задачи без вызова внешних процедур. Перечень вычислительных инструментов, доступных в среде MathCAD следующий:
. работа с векторами и матрицами (линейная алгебра и др.);
. решение алгебраических уравнений и систем (линейных и нелинейных);
. решение обыкновенных дифференциальных уравнений и систем (задача Коши и краевая задача);
. вычисление интегралов;
. вычисление производной;
. разложение функции в ряды;
. решение дифференциальных уравнений в частных производных;
. поиск минимумов и максимумов функциональных зависимостей;
. вычислять и упрощать символьные выражения;
. использовать для вычисления интегралы и производные функции;
. решать системы линейных алгебраических уравнений, работать с матрицами и определителями;
. решать системы нелинейных алгебраических уравнений;
. строить графики как в декартовых и цилиндрических, так и в полярных координатах, различные диаграммы и гистограммы;
. создавать программы с разветвляющимися и циклическими алгоритмами, используя свой собственный, интуитивно понятный, язык программирования;
. решать дифференциальные уравнения;
. решать задачи теории вероятности и математической статистики;
. осуществлять обмен информацией с другими приложениями операционной системы Windows, такими, как Excel, Powerpoint, Word;
. документировать расчёты и создавать отчётную документацию;
. имеет более 600 встроенных математических функций;
. поддержка шаблонов документов, форматирования текста, форматирования формул;
. улучшенный модуль работы с 3D-графиками;
. статистическая обработка данных, интерполяция, экстраполяция, аппроксимация и многое другое.
Таким образом, MathCAD - это мощная и простая универсальная среда для решения задач в различных отраслях науки и техники, финансов и экономики, физики и астрономии, строительства и архитектуры, математики и статистики, организации производства и управления. Она располагает широким набором инструментальных, информационных и графических средств. MathCAD - одна из самых популярных математических систем, которая пользуется спросом у экономистов, менеджеров, инженеров, научных работников и всех тех, чья деятельность связана с количественными методами расчета.
2. Наглядность. Принцип построения интерфейса MathCAD определяется формулой “What you see is what you get” - что вы видите, то и получите. То есть математические выражения в среде MathCAD записываются в их общепринятой нотации: числитель находится сверху, а знаменатель внизу; интеграл или производная - это привычные математические знаки, а не специальным образом записанные символы, снижающие наглядность решения, в интеграле пределы интегрирования также расположены на привычных местах. Все это делает запись понятной для пользователя, читающего распечатку или глядящего на экран. Эту особенность ценят те, кому приходилось решать задачи при помощи языков программирования, где понять суть решения может лишь, владеющий подобными навыками, специалист.
В среде MathCAD процесс создания модели идет параллельно с ее отладкой. Пользователь, введя в MathCAD-документ новое выражение, может не только сразу подсчитать, чему оно равно при определенных значениях переменных, но и построить график или поверхность и увидеть, где произошла ошибка, которая была допущена при вводе формул или при создании самой математической модели. В систему MathCAD интегрированы средства символьной математики, что не только улучшает визуальное восприятие преобразований на экране, но и позволяет решать задачи или их этапы как численно, так и аналитически.
Решая поставленную задачу, пользователь может вводить числовые значения переменных и дополнять их размерностями. При этом можно выбирать и систему единиц (СИ, или другую), и конкретные размерности (мм, дюймы, футы и т.д.) - MathCAD имеет встроенную систему автоматического пересчета и контроля единиц измерении в процессе вычислений. Так, если мы определяем расстояние от одного объекта до другого как сумму отдельных расстояний с использованием различных единиц измерения (мили, футы, ярды, сантиметры), то система MathCAD автоматически произведет перерасчет всех расстояний и выдаст результат с заранее установленной единицей измерения.
Кроме этого, система MathCAD снабжена средствами анимации, что позволяет реализовывать созданные модели не только в статике, но и в динамике (анимационные клипы), что значительно повышает наглядность.
3. Интегрированность. MathCAD - это программа, позволяющая работать в тесной интеграции как с другими системами: Microsoft Word, Excel и пр., - так и эффективно использовать Web-технологии. Поддерживаются все соглашения и возможности интерфейса Windows: OLE-технология, клиент-сервер, доступ к поисковым программам с помощью Internet Explorer в среде пакета, присоединение к общедоступному Internet-форуму, объединяющему всемирное сообщество пользователей MathCAD.
Решая поставленную задачу, можно в статике (через буфер обмена) или в динамике (OLE-технология) передать данные в среду другой программы, например, в среду языка Fortran, и там решать часть задачи. Не выходя из среды MathCAD, можно открывать новые документы на других серверах и пользоваться всеми преимуществами информационных технологий, предоставляемыми системой Internet.
MathCAD может взаимодействовать с другими приложениями, например, данные программ Microsoft Excel или Matlab могут непосредственно включаться в вычислительный поток системы MathCAD: здесь допускается управлять чертежами, выполненными в AutoCAD, использовать Visual Basic для создания коммерческих приложений и др.
4. Последние версии MathCAD имеют собственный язык, который дает возможность программисту эффективно применять программный код в документах MathCAD. Простота и интуитивность этого языка позволяет быстро ему обучиться. Программные модули внутри документа MathCAD сочетают в себе и обособленность (поэтому их легко отличить от остальных формул) и простоту смыслового восприятия. Несмотря на небольшое количество операторов, язык программирования MathCAD позволяет решать довольно сложные задачи.
5. Для экономистов важны статистические и финансовые функции, реализованные в пакете. MathCAD имеет развитый аппарат работы с задачами математической статистики. С одной стороны, имеется большое количество встроенных специальных функций, позволяющих рассчитывать плотности вероятности и другие характеристики основных законов распределения случайных величин. В MathCAD запрограммировано соответствующее количество генераторов псевдослучайных чисел для каждого закона распределения, что позволяет эффективно проводить моделирование методом Монте-Карло. Имеется возможность строить гистограммы и рассчитывать статистические характеристики выборок случайных чисел и случайных процессов, таких как: средние, дисперсии, корреляции и т. п. При этом случайные последовательности могут, как создаваться генераторами случайных чисел, так и вводиться пользователем из файлов.
6. В MathCAD встроена мощная справочная база с множеством примеров, подсказок и удобной системой поиска. Если же какая-то проблема освещена недостаточно полно в справочной системе, то нужный ответ можно найти на сайте компании MathSoft, ссылки на который имеются в справочной системе MathCAD.
Пакет MathCAD дополнен справочником по основным математическим и физико-химическим формулам и константам, которые можно автоматически переносить в документ, не набирая их вручную.
7. К пакету MathCAD можно приобрести электронные учебники по различным дисциплинам: решение обыкновенных дифференциальных уравнений, статистика, термодинамика, теория управления, сопротивление материалов и т.д. Прежде чем начать решать возникшую задачу, пользователь может изучить электронный учебник и перенести из него в свой документ нужные фрагменты, отдельные формулы и константы.
Какие дополнительные особенности программы MathCAD?
В целом, можно сказать, что MathCAD - это среда для выполнения с помощью компьютера разнообразных математических и инженерно-технических расчетов, предоставляющая пользователю обширный набор инструментов для реализации графических, аналитических и численных методов решения математических задач различной сложности в любой области, где применяются математические методы.
Не так давно появилось нововведение - можно отметить лишь появление функций преобразования координат и обработки звуковых файлов, расширение справочной базы и др. Основные же функции: решение уравнений, символьные преобразования, - хорошо проработаны и в более ранних версиях пакета, так что их удобно использовать.
Программа изменяется с каждой версией и меняются системные требования. Для MathCAD 2001 было достаточно 16 Mb оперативной памяти, для последних версий - рекомендуется 512 Мб. Программа работает на Windows - платформе.
MathCAD ориентирован на IBM-совместимые персональные компьютеры. Он автоматически поддерживает работу с математическим процессором, который значительно повышает скорость расчетов и вывода графиков, что существенно в связи с тем, что MathCAD работает в графическом режиме. Это вызвано тем, что только в этом режиме можно формировать на экране специальные математические символы и одновременно применять их вместе с графиками и текстом. MathCAD поддерживает работу со многими типами принтеров, а также с плоттерами, основными типами адаптеров и дисплеев.

3. MatLab
В чем состоят особенности программы MATLAB?
MATLAB — пакет прикладных программ для решения задач технических вычислений и одноимённый язык программирования, используемый в этом пакете. MATLAB используют более 1 000 000 инженерных и научных работников, он работает на большинстве современных операционных системах, включая Linux, Mac OS, Solaris и Microsoft Windows.
MATLAB, пожалуй, наиболее мощная программа для обработки данных. Название происходит от сокращенного MATrix LABoratory - матричная лаборатория. Как и гласит название, MATLAB - идеальная среда для работы с многомерными данными, представимыми в виде таблиц (или, на математическом языке, - матриц). Именно к такому классу данных относится большинство финансовой информации: котировки, индикаторы, макроэкономическая статистика и т.п.
В чем состоит основное отличие интерфейса MATLAB от других аналогичных математических пакетов?
MATLAB не столь прост в освоении, как, например, Excel, - начинающих может отпугнуть командная строка. Многие задачи в MATLAB решаются гораздо проще и быстрее, чем в том же Excel. К тому же для многих функций в MATLAB имеется привычный графический интерфейс, а командная строка на практике оказывается не так уж и страшна, и, возможно, спустя какое-то время вам даже станет удобнее работать непосредственно через нее.

Какие функции MATLAB могут быть актуальны для студента?
1. Общие функции работы с данными: добавление и удаление элементов таблицы, сортировка, преобразование и т.п. К примеру, в MATLAB очень быстро можно перевернуть «вверх ногами» колонку котировок при помощи функции, так что вверху будут находиться более старые данные, а внизу - более новые. Это актуально при работе с некоторыми источниками котировок, с которых загружаются наоборот (сверху - новые, снизу - старые).
2. Математические функции. Возможности применения математики ограничены лишь нашей фантазией. Это же утверждение применимо и к мат. функциям. MATLAB имеет огромное количество таких встроенных функций, начиная от элементарных, напр., логарифмической, и заканчивая специальными, такими как гамма-функция и т.д. Эти функции используются в качестве «кирпичиков» при решении практически любой задачи.
3. Численные методы: интегралы и оптимизаторы. Необходимость обращения к ним обычно возникает при оптимизации портфеля, а также в управлении капиталом и риском. Задачи оптимизации в MATLAB решаются при помощи специального набора функций Optimization Toolbox. Пользователь задает начальные веса портфеля или параметры торговой системы, а MATLAB по специальным алгоритмам перебирает их, пока не будет достигнута оптимальная комбинация.
4. Статистические функции и прогнозирование: среднее арифметическое, среднее геометрическое, стандартное отклонение (волатильность), корреляции, распределения вероятностей, генераторы случайных чисел, регрессия, факторный анализ, кластерный анализ и мн. др. Эти функции пригодятся при тестировании и оптимизации торговых систем и портфелей, визуализации и поиске зависимостей в котировках. К этой же группе функций можно отнести и Neural Network Toolbox - мощный инструмент прогнозирования временных рядов.
5. Специальные пакеты (Toolboxes) финансовых функций:
- Econometrics. Может быть актуальным для прогнозирования волатильности;
- Financial: обработка котировок, теханализ, облигации, оптимизация портфеля, опционы;
- Financial Derivative: продвинутые функции для производных инструментов (экзотические опционы, опционы на процентные ставки и т.п.);
- Fixed Income: продвинутые функции для инструментов с фиксированной доходностью, например, облигаций, обеспеченных пулом ипотечных кредитов и т.п.
Также поклонникам теханализа может пригодиться Filter Design Toolbox для разработки индикаторов Технического Анализа на базе цифровых фильтров. Это весьма популярное направление в «наукоемком» теханализе.
В MATLAB имеется удобный редактор функций. С его помощью можно значительно автоматизировать рутинные задачи, комбинируя используемые при их решении встроенные функции в целые блоки пользовательских функций. Есть даже возможность создания для этих функций графического интерфейса в привычном для Windows оконно-кнопочном стиле.
Какой язык программирования является встроенным в MATLAB?
Язык MATLAB является высокоуровневым интерпретируемым языком программирования, включающим основанные на матрицах структуры данных, широкий спектр функций, интегрированную среду разработки, объектно-ориентированные возможности и интерфейсы к программам, написанным на других языках программирования.
Программы, написанные на MATLAB, бывают двух типов — функции и скрипты. Функции имеют входные и выходные аргументы, а также собственное рабочее пространство для хранения промежуточных результатов вычислений и переменных. Скрипты же используют общее рабочее пространство. Как скрипты, так и функции не компилируются в машинный код и сохраняются в виде текстовых файлов.
Основной особенностью языка MATLAB являются его широкие возможности по работе с матрицами, которые создатели языка выразили в лозунге «думай векторно» .
Какие области математики охватывает программа MATLAB?
MATLAB предоставляет пользователю большое количество (несколько сотен) функций для анализа данных, покрывающие практически все области математики, в частности:
. Матрицы и линейная алгебра — алгебра матриц, линейные уравнения, собственные значения и вектора, сингулярности, факторизация матриц и другие.
. Многочлены и интерполяция — корни многочленов, операции над многочленами и их дифференцирование, интерполяция и экстраполяция кривых и другие.
. Математическая статистика и анализ данных — статистические функции, статистическая регрессия, цифровая фильтрация, быстрое преобразование Фурье и другие.
. Обработка данных — набор специальных функций, включая построение графиков, оптимизацию, поиск нулей, численное интегрирование (в квадратурах) и другие.
. Дифференциальные уравнения — решение дифференциальных и дифференциально-алгебраических уравнений, дифференциальных уравнений с запаздыванием, уравнений с ограничениями, уравнений в частных производных и другие.
. Разреженные матрицы — специальный класс данных пакета MATLAB, использующийся в специализированных приложениях.
. Целочисленная арифметика — выполнение операций целочисленной арифметики в среде MATLAB.
Какие наборы инструментов позволяет создавать MATLAB?
Для MATLAB имеется возможность создавать специальные наборы инструментов, расширяющие его функциональность. Наборы инструментов представляют собой коллекции функций, написанных на языке MATLAB для решения определённого класса задач. Компания Mathworks поставляет наборы инструментов, которые используются во многих областях, включая следующие:
. Цифровая обработка сигналов, изображений и данных — наборы функций, позволяющих решать широкий спектр задач обработки сигналов, изображений, проектирования цифровых фильтров и систем связи.
. Системы управления — наборы функций, облегчающих анализ и синтез динамических систем, проектирование, моделирование и идентификацию систем управления, включая современные алгоритмы управления.
. Финансовый анализ — наборы функций, позволяющие быстро и эффективно собирать, обрабатывать и передавать различную финансовую информацию.
. Анализ и синтез географических карт, включая трёхмерные.
. Сбор и анализ экспериментальных данных — наборы функций, позволяющих сохранять и обрабатывать данные, полученные в ходе экспериментов, в том числе в реальном времени. Поддерживается широкий спектр научного и инженерного измерительного оборудования.
. Визуализация и представление данных — позволяет создавать интерактивные миры и визуализировать научную информацию с помощью технологий виртуальной реальности и языка VRML.
. Средства разработки — наборы функций, позволяющих создавать независимые приложения из среды MATLAB.
. Взаимодействие с внешними программными продуктами — наборы функций, позволяющие сохранять данные в различных видов таким образом, чтобы другие программы могли с ними работать.
. Базы данных — инструменты работы с базами данных.
. Научные и математические пакеты — наборы специализированных математических функций, позволяющие решать широкий спектр научных и инженерных задач, включая разработку генетических алгоритмов, решения задач в частных производных, целочисленные проблемы, оптимизацию систем и другие.
. Нейронные сети — инструменты для синтеза и анализа нейронных сетей.
. Нечёткая логика — инструменты для построения и анализа нечётких множеств.
. Символьные вычисления — инструменты для символьных вычислений с возможностью взаимодействия с символьным процессором программы Maple.

4. MS Excel
В чем назначение программы Microsoft Excel?
Программа Microsoft Excel служит для работа с большим объемом числовых данных, самые популярные электронные таблицы.
Применение электронных таблиц упрощает работу с данными и позволяет получать результаты без проведения расчетов вручную или специального программирования. Электронные таблицы предназначены для ввода и обработки табличных данных. С помощью них можно выполнять сложные вычисления с большими массивами чисел, строить диаграммы и печатать финансовые отчеты. Основное отличие электронной таблицы от обычной заключается в том, что над информацией (данными и расчетными формулами), расположенной в ячейках электронной таблицы, можно осуществлять самые различные операции и вычисления. Программные средства для проектирования электронных таблиц часто называют табличными процессорами или редакторами.
Microsoft Excel позволяет выполнять математические, финансовые и статистические вычисления, оформлять отчеты, построенные на базе таблиц, выводить числовую информацию в виде графиков и диаграмм. Microsoft Excel предназначена для обработки и хранения информации в табличном виде, который широко используется в деятельности многих пользователей.
Каковы основные возможности программы Microsoft Excel?
Наиболее широкое применение электронные таблицы нашли в экономических и бухгалтерских расчетах, но и в научно-технических задачах электронные таблицы можно использовать эффективно, например для:
. проведения однотипных расчетов над большими наборами данных;
. автоматизации итоговых вычислений;
. решения задач путем подбора значений параметров, табулирования формул;
. обработки результатов экспериментов;
. проведения поиска оптимальных значений параметров;
. подготовки табличных документов;
. построения диаграмм и графиков по имеющимся данным.
. широкий выбор функций для различных вычислений;
. присвоение имен таблицам, областям и ячейкам и введенным в них формулам, а также вставка примечаний к ячейкам;
. общие средства проверки орфографии, поиска и замены при редактировании, совместимые с Word;
. создание пользовательских списков для автозаполнения, импорта дополнительных данных в ранее построенные диаграммы;
. расширенный набор средств форматирования ячеек, выравнивания информации (текста и чисел) в ячейках, обрамления и заливки, подгонка высоты строк и ширины колонок, скрытие и отображение строк и столбцов, условное форматирование чисел;
. разнообразный выбор типов диаграмм и автоматизация их построения;
. поиск, сортировка и фильтрация при работе со списками;
. средства быстрого автоформатирования таблиц, применение шаблонов для создания типовых документов;
. широкий выбор способов представления данных на диаграммах и графиках, вплоть до нанесения диаграмм, отображающих соотношения между данными, на географических картах;
. раскрывающиеся списки, флажки - переключатели на рабочих листах, которые упрощают работу пользователя с таблицей;
. вставка в рабочий лист множества различных объектов, созданных другими приложениями, и работа с ними (текстовые документы Word, фигурный текст WordArt, различные фото, рисунки, геометрические фигуры);
. возможность работать с определённой информацией, как с базой данных;
. сохранять информацию во внешней памяти и получать копии на бумаге;
. широкие возможности по защите информации на уровне листа и книги и т.д.
Какие встроенные модули имеются в программе Microsoft Excel?
Действия, которые можно использовать в формулах, не ограничиваются только простейшими арифметическими операциями. Более сложные вычисления возможны при использовании стандартных функций. В программе Excel включить в формулу произвольную функцию можно при помощи «Мастера функций». Для облегчения выбора функции разделены на категории. Чаще всего применяют математические и статистические функции.
После того как функция выбрана, она автоматически заносится в формулу. На экране появляется специальная палитра для задания параметров функции. Если курсор установлен в поле ввода параметра, в нижней части палитры появляется текст, описывающий назначение данного параметра.
В качестве параметров можно указывать числовые значения или адреса ячеек. Некоторые функции могут принимать в качестве параметра диапазон ячеек.
Программа Excel использует еще один мастер - «Мастер диаграмм», хотя в последних версиях он так не называется и диаграммы и графики создаются через вкладку Вставка и группу Диаграммы.
Какие пакеты встроены в программу Microsoft Excel для выполнения статистических анализов и решения прикладных задач?
Программа Excel имеет еще встроенные пакеты: Анализ данных и Поиск решения.
Анализ данных позволяет выполнять основные виды статистических анализов:
. Однофакторный дисперсионный анализ
. Двухфакторный дисперсионный анализ с повторениями
. Двухфакторный дисперсионный анализ без повторений
. Корреляция
. Ковариация
. Описательная статистика
. Экспоненциальное сглаживание
. Двухвыборочный F - тест для дисперсии
. Анализ Фурье
. Гистограмма
. Скользящее среднее
. Генерация случайных чисел
. Ранг и персентиль
. Регрессия
. Выборка
. Парный двухвыборочный t - тест для средних
. Двухвыборочный t - тест с одинаковыми дисперсиями
. Двухвыборочный t - тест с различными дисперсиями
. Двухвыборочный t - тест для средних
Функция Поиск решения позволяет оптимизировать функцию, использовать симплекс-метод.

5. Примеры других математических пакетов
Какой математический пакет может быть использован для сложных математических расчетов, кроме вышеперечисленных?
Компьютерный математический пакет Maple фирмы Waterloo - это программный пакет, ориентированный на выполнение сложных математических расчетов и визуализацию результатов вычислений. Программа имеет удобный многооконный пользовательский интерфейс, справочную систему с множеством примеров, мощные библиотеки встроенных функций, обладает широкими возможностями в сфере программирования и моделирования.
Почему компьютерный математический пакет Maple рекомендуется использоваться в качестве основы для совершенствования методической системы обучения информатике на профильном уровне?
Положительные моменты того, что если в процессе обучения моделированию, алгоритмизации и программированию в курсе информатики в рамках физико-математического профиля обучения использовать компьютерные математические пакеты, в частности, систему Maple, состоят в следующем:
- развивается математическая логика и алгоритмическое мышление учащихся, и, как следствие, повышается эффективность обучения информатике;
- активизируется творческая и познавательная деятельность студентов, повышается их интерес к учебной деятельности и заинтересованность в ее конечном результате, как в рамках обучения информатике, так и в рамках межпредметной интеграции информатики и других дисциплин профильной подготовки;
- повышается профессиональная ориентация студентов в естественнонаучной и технической деятельности, развиваются практические умения в области применения информационных технологий в последующей профессиональной работе;
- компьютерный математический пакет Maple обладает возможностями (удобный интерфейс, интерактивность, структурное и объектно-ориентированное программирование, графика), эффективными для обучения моделированию, алгоритмизации и программированию в рамках физико-математического профиля подготовки студентов по информатике;
- применение пакета Maple реализует дидактический принцип наглядности в обучении, повышает мотивацию к обучению и профессиональную ориентацию студентов, развивает их научное творчество;
- использование усовершенствованной методической системы обучения моделированию, алгоритмизации и программированию, ориентированной на использование компьютерного математического пакета Maple и метода проектов, способствует повышению эффективности обучения и развитию познавательной активности учащихся, формированию потребности и практических навыков использования информационных технологий в профессиональной деятельности.
Какие достоинства имеют большинство математических пакетов?
Из множества привлекательных свойств рассматриваемых статистических пакетов выделим следующие:
1. Наличие достаточно широкого спектра статистических алгоритмов;
2. Сотни типов двумерных и трехмерных графиков;
3. Обмен данными с другими программными продуктами;
4. Большой набор возможностей манипулирования данными (сортировка, трансформация, кодировка, изменение шкалы измерения);
5. Комбинирование текста и графики для составления статистических отчетов;
6. Коррекция и преобразование элементов графических отображений (изменение цвета, заливки, шрифта, надписей, меток, масштабов и т.д.);
7. Взаимодействие пользователя с данными посредством графики (идентификация объекта, разгонка точек на диаграммах рассеивания, окраска «интересных» объектов).
Естественно, что приведенные достоинства далеко не полностью отображают все возможности анализа данных, которыми располагают компьютерные статистические пакеты, но уже достаточно информации, для того чтобы стало ясно, что работа с ними эффективна и удобна.
Наличие недостатков и, следовательно, привлекательность того или иного пакета пользователь может определить при непосредственной работе. Поэтому выбор в пользу предпочтения какого-либо программного продукта предоставляется самому исследователю, а нам лишь остается познакомить его с основными принципами работы со статистическими программами.
Какие еще математические пакеты можно назвать?
. MATHEMATICA
. MAPLE
. SPSS
. MAXIMA
. STATGRAPHICS
. STADIA
. Scilab
. SMath Studio
В лекции перечислены только самые популярные продукты из области математических пакетов. Для их освоения требуются практико ориентированные занятия с непосредственно установленными программами.

Информационные источники
1. Математические методы в психологии: учебник / О. Ю. Ермолаев - Томин. - 5-е изд., испр. и доп. - М.: Издательство Юрайт, 2014. - 511с. - Серия: Бакалавр. Базовый курс.
2. Теплотехнические этюды с Excel, Mathcad и Интернет / Под общ.
ред. В.Ф. Очкова. Издательство БХВ-Петербург. 2014. - 336 с.
3. MATLAB. Самоучитель. Практический подход. / Васильев А. Н. - 2-е изд., испр. и доп. - М.: Наука и техника, 2015. - 448с.

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

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

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

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

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

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

Решать задачи оптимизации позволяют такие универсальные системы компьютерной математики, как MATHCAD и MATHEMATICA. В MATHCAD возможен ввод ограничивающих условий при решении задач оптимизации нелинейных целевых функций. Для этого в системе MATHCAD имеются специальные функции Maximize и Minimize, которые позволяют расширить круг решаемых задач при минимальных затратах времени на подготовку средств к их решению. Обе эти функции реализованы достаточно универсальными алгоритмами оптимизации, которые не требуют вычисления производных целевой функции, что не только упрощает запись алгоритмов, но и позволяет решать задачи, у которых вычисление производных по тем или иным соображениям нежелательно.

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

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

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

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

Математические пакеты можно разделить
на 4 группы:
- программы численных расчетов;
- программы аналитических
вычислений;
- программы построения графиков;
- программы верстки математических
текстов.

Scilab
Scilab - пакет прикладных математических программ,
предоставляющий открытое окружение для инженерных
(технических) и научных расчётов.
Это самая полная общедоступная альтернатива MATLAB.

Возможности
2D и 3D графики, анимация
Линейная алгебра, разреженные
матрицы (sparse matrices)
Полиномиальные и рациональные
функции
Интерполяция, аппроксимация
Симуляция: решение ОДУ и ДУ
Scicos: гибрид системы моделирования
динамических систем и симуляции
Дифференциальные и не
дифференциальные оптимизации
Обработка сигналов
Параллельная работа
Статистика
Работа с компьютерной алгеброй
Интерфейс к
Fortran, Tcl/Tk, C, C++, Java, LabVIEW

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

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

10.

Mathcad – является мощной системой компьютерной математики, сочетающей
в себе визуально ориентированный входной язык, удобный редактор текста и
формул, численный и символьный процессоры. Пакет достаточно прост в
изучении, а наличие большого числа электронных книг и «быстрых
шпаргалок» существенно упрощают его применение для решения конкретных
научно-инженерных задач.

11.

Программы
аналитических
вычислений

12.

Мaxima.
Программа ориентирована на проведение вычислений и
преобразования символьных и численных выражений, начиная от
упрощения алгебраических выражений до дифференцирования,
интегрирования, разложения в ряд, преобразования Лапласа,
решения дифференциальных уравнений, задач тензорной и
линейной алгебры

13.

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

14.

Программы
построения
графиков

15.

Advanced Grapher
Advanced Grapher - Мощная и простая в использовании программа для
построения графиков и их анализа. Поддерживает построение графиков
функций вида Y(x), X(y), в полярных координатах, заданных
параметрическими уравнениями, графиков таблиц, неявных функций
(уравнений) и неравенств. До 100 графиков в одном окне.

16.

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

17.

Graph
Программа с открытым кодом, предназначенная для построения
математических графиков. Это приложение поддерживает все
стандартные функции и позволяет выстраивать графики синусов,
косинусов, логарифмов и т.д.
MagicPlot
Простое приложение для анализа данных, построения графиков и
нелинейной аппроксимации, разрабатывающаяся в России
ZyukaGraphik
Программа ZyukaGraphik предназначена для построения и исследования
графиков, заданных табличным способом. Программа может быть полезна всем,
кому приходится работать с наборами данных, представленных в виде двумерных
числовых массивов, в частности для оформления результатов измерений,
оформления студентами лабораторных работ и т.п.

18.

Программы верстки
математических текстов.

19.

Латекс система подготовки документов для высококачественной верстки. Это
наиболее часто используется для средних и крупных технических или
научных документов, но он может быть использован для любого вида
издания

20.

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

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

При организации компьютерной поддержки образования можно выделить два направления:

  • · разработка компьютерных программ учебного назначения, программ, специально предназначенных для изучения определенной дисциплины;
  • · использование программного обеспечения, разработанного для профессиональной деятельности в соответствующей области знания; для большинства естественно научных дисциплин - это профессиональные математические пакеты.

Математическими пакетами здесь называются системы, среды, языки типа Mathematica, Maple V, MatLAB, Derive, Mathcad, а также семейство систем статистического анализа данных - таких как SPSS, Statistica, Statgraphics, Stadia и др. Современные математические пакеты - это программы (пакеты программ), обладающие средствами выполнения различных численных и аналитических (символьных) математических расчетов, от простых арифметических вычислений, до решения уравнений с частными производными, решения задач оптимизации, проверки статистических гипотез, средствами конструирования математических моделей и другими инструментами, необходимыми для проведения разнообразных технических расчетов. Все они имеют развитые средства научной графики, удобную справочную систему, а также средства оформления отчетов. Название "профессиональный" или "универсальный" используется как альтернатива названию "учебный пакет".

Многие годы преподаватели математики, довольно четко разделялись на приверженцев использования компьютерных программ учебного назначения ("учебных пакетов", обучающих программ) и тех, кто предпочитал использовать универсальные пакеты.

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

Компьютер стал элементом "бытовой техники". Современное представление о качественном образовании включает в качестве необходимого элемента свободное владение компьютерными технологиями и, как следствие, компьютер воспринимается как предмет если не первой, то уж второй необходимости. Большинство родителей не мыслят себе воспитание собственных детей-школьников без компьютера. Все большее число студентов имеют компьютеры дома и все чаще именно студенты выступают инициаторами использования компьютерных технологий в учебном процессе. Ими движет не "игровой" интерес, как мы говорили и видели раньше, а стремление "облегчить себе жизнь", желание приобрести полезные для будущей карьеры профессиональные навыки, готовность учиться работе на компьютере не только на специальных занятиях по информатике. Можно смело утверждать, что "домашний компьютер" - самый мощный фактор, изменивший отношение преподавателей к использованию компьютера в профессиональной деятельности. Их позиция меняется под влиянием общественного мнения, под влиянием позиции студентов, а также потому, что у многих преподавателей тоже появились дома компьютеры. Отсюда понятен интерес к универсальным пакетам - научиться работать с готовым программным обеспечением значительно проще, чем самому писать программы.

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

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

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

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

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

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

Доступность документации и справочной литературы по математическим пакетам. Если еще сравнительно недавно литературы по пакетам на русском языке практически не было, то сейчас новые версии, новые пакеты и различные руководства для пользователей по ним появляются почти одновременно. Трудно найти пакет, по которому бы не вышло на русском языке по две-три книги.

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

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

  • CAD - Computer Aided Design;
  • CAM - Computer Aided Manufacturing;
  • CAE - Computer Aided Engeneering.

Сегодня серьезное конструирование, градостроительство и архитектура, электротехника и масса смежных с ними отраслей, а также учебные заведения технической направленности уже не могут обойтись без систем автоматизированного проектирования (САПР), производства и расчетов. А математические пакеты являются составной частью мира CAE-систем, но эта часть никак не может считаться второстепенной, поскольку некоторые задачи вообще невозможно решить без помощи компьютера. Более того, к системам символьной математики сегодня прибегают даже теоретики (так называемые чистые, а не прикладные математики), например для проверки своих гипотез.

Всего каких-нибудь 10 лет назад эти системы считались сугубо профессиональными, но середина 90-х годов стала переломным моментом для мирового рынка CAD/CAM/CAE-систем массового применения. Тогда, впервые за долгое время, пакеты для параметрического моделирования с промышленными возможностями стали доступны пользователям персональных компьютеров. Создатели подобных систем учли требования широкого круга пользователей и таким образом дали возможность десяткам тысяч инженеров и математиков использовать на своих персональных рабочих местах новейшие достижения науки в области технологий CAD/CAM/CAE-систем.

Так что же умеют программы математического моделирования? Неужели они требуют от ученых умения программировать на тех или иных алгоритмических языках, отлаживать программы, отлавливать ошибки и тратить массу времени на получение результата? Нет, те времена давно прошли, и теперь в математических пакетах применяется принцип конструирования модели, а не традиционное «искусство программирования». То есть пользователь лишь ставит задачу, а методы и алгоритмы решения система находит сама. Более того, такие рутинные операции, как раскрывание скобок, преобразование выражений, нахождение корней уравнений, производных и неопределенных интегралов компьютер самостоятельно осуществляет в символьном виде, причем практически без вмешательства пользователя.

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

Рассказывать о программах математического моделирования и возможных областях их применения можно очень долго, но мы ограничимся лишь кратким обзором ведущих программ, укажем их общие черты и различия. В настоящее время практически все современные CAE-программы имеют встроенные функции символьных вычислений. Однако наиболее известными и приспособленными для математических символьных вычислений считаются Maple, MathCad, Mathematica и MatLab. Но, делая обзор основных программ символьной математики, мы укажем и на возможные альтернативы, идеологически схожие с тем или иным пакетом-лидером.

Так что же делают эти программы и как они помогают математикам? Основу курса математического анализа в высшей школе составляют такие понятия, как пределы, производные, первообразные функций, интегралы разных видов, ряды и дифференциальные уравнения. Тому, кто знаком с основами высшей математики, наверняка известны десятки правил нахождения пределов, взятия интегралов, нахождения производных и т.д. Если добавить к этому то, что для нахождения большинства интегралов нужно также помнить таблицу основных интегралов, то получается поистине огромный объем информации. И если какое-то время не тренироваться в решений подобных задач, то многое быстро забывается и для нахождения, например, интеграла посложнее придется уже заглядывать в справочники. Но ведь взятие интегралов и нахождение пределов в реальной работе не является главной целью вычислений. Реальная цель заключается в решении каких-либо проблем, а вычисления - всего лишь промежуточный этап на пути к этому решению.

С помощью описываемого ПО можно сэкономить массу времени и избежать многих ошибок при вычислениях. Естественно, CAE системы не ограничиваются только этими возможностями, но в данном обзоре мы сделаем упор именно на них.

Отметим только, что спектр задач, решаемых подобными системами, очень широк:

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

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

Mathematica (http://www.wolfram.com/)

  • 400-550 Мбайт дискового пространства;
  • операционные системы: Windows 98/Me/ NT 4.0/2000/2003 Server/2003x64/XP/XP x64.

Компания Wolfram Reseach, Inc., разработавшая систему компьютерной математики Mathematica, по праву считается старейшим и наиболее солидным игроком в этой области. Пакет Mathematica (текущая версия 5.2) повсеместно применяется при расчетах в современных научных исследованиях и получил широкую известность в научной и образовательной среде. Можно даже сказать, что Mathematica обладает значительной функциональной избыточностью (там, в частности, есть даже возможность для синтеза звука).

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

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

Отметим, что в разработках различных версий системы Mathematica, наряду с головной фирмой Wolfram Research, Inc., принимали участие другие фирмы и сотни специалистов высокой квалификации, в том числе математики и программисты. Есть среди них и представители пользующейся уважением и спросом за рубежом математической школы России. Система Mathematica является одной из самых крупных программных систем и реализует наиболее эффективные алгоритмы вычислений. К их числу, например, относится механизм контекстов, исключающий появление в программах побочных эффектов.

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

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

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

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

Кстати, центральное место в системах класса Mathematica занимает машинно-независимое ядро математических операций, которое позволяет переносить систему на различные компьютерные платформы. Для переноса системы на другую компьютерную платформу используется программный интерфейсный процессор Front End. Именно он определяет, какой вид имеет пользовательский интерфейс системы, то есть интерфейсные процессоры систем Mathematica для других платформ могут обладать своими нюансами. Ядро сделано достаточно компактным для того, чтобы можно было очень быстро вызвать из него любую функцию. Для расширения набора функций служат библиотека (Library) и набор пакетов расширения (Add-on Packages). Пакеты расширений готовятся на собственном языке программирования систем Mathematica и являются главным средством для развития возможностей системы и их адаптации к решению конкретных классов задач пользователя. Кроме того, системы имеют встроенную электронную справочную систему - Help, которая содержит электронные книги с реальными примерами.

Таким образом, Mathematica - это, с одной стороны, типичная система программирования на базе одного из самых мощных проблемноориентированных языков функционального программирования высокого уровня, предназначенная для решения различных задач (в том числе и математических), а с другой - интерактивная система для решения большинства математических задач в диалоговом режиме без традиционного программирования. Таким образом, Mathematica как система программирования имеет все возможности для разработки и создания практически любых управляющих структур, организации ввода-вывода, работы с системными функциями и обслуживания любых периферийных устройств, а с помощью пакетов расширения (Add-ons) появляется возможность подстраиваться под запросы любого пользователя, (хотя рядовому пользователю эти средства программирования могут и не понадобиться - он вполне обойдется встроенными математическими функциями системы, поражающими своим обилием и многообразием даже опытных математиков).

К недостаткам системы Mathematica следует отнести разве что весьма необычный язык программирования, обращение к которому, впрочем, облегчает подробная система помощи.

В качестве более простых, но идеологически близких альтернатив программы Mathematica можно назвать такие пакеты, как Maxima ( /) и Kalamaris (developer.kde.org/~larrosa/kalamaris.html).

Отметим, что система Maxima - это некоммерческий проект с открытым кодом. В программе Maxima для математической работы используется язык, сходный с языком в пакете Mathematica, а графический интерфейс построен по тем же принципам. Изначально программа называлась Xmaxima и создавалась для UNIX-систем.

Кроме того, сейчас у системы Maxima есть еще более мощный, эффективный и дружественный кроссплатформенный графический интерфейс, который называется Wxmaxima (http://wxmaxima.sourceforge.net). И хотя этот проект пока что существует лишь в бета-версии, он постепенно превращается в очень серьезную альтернативу коммерческим системам.

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

Maple (http://www.maplesoft.com/)

Минимальные требования к системе:

Процессор Pentium III 650 МГц;

400 Мбайт дискового пространства;

Операционные системы: Windows NT 4 (SP5)/98/ME/2000/2003 Server/XP Pro/XP Home.

Программа Maple (последняя версия 10.02) - своего рода патриарх в семействе систем символьной математики и до сих пор является одним из лидеров среди универсальных систем символьных вычислений. Она предоставляет пользователю удобную интеллектуальную среду для математических исследований любого уровня и пользуется особой популярностью в научной среде. Отметим, что символьный анализатор программы Maple является наиболее сильной частью этого ПО, поэтому именно он был позаимствован и включен в ряд других CAE-пакетов, таких как MathCad и MatLab, а также в состав пакетов для подготовки научных публикаций Scientific WorkPlace и Math Office for Word.

Пакет Maple - совместная разработка Университета Ватерлоо (шт. Онтарио, Канада) и Высшей технической школы (ETHZ, Цюрих, Швейцария). Для его продажи была создана специальная компания - Waterloo Maple, Inc., которая, к сожалению, больше прославилась математической проработкой своего проекта, чем уровнем его коммерческой реализации. В результате система Maple ранее была доступна преимущественно узкому кругу профессионалов. Сейчас эта компания работает совместно с более преуспевающей в коммерции и в проработке пользовательского интерфейса математических систем фирмой MathSoft, Inc. - создательницей весьма популярных и массовых систем для численных расчетов MathCad, ставших международным стандартом для технических вычислений.

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

Пакет Maple состоит из ядра (процедур, написанных на языке С и хорошо оптимизированных), библиотеки, написанной на Maple-языке, и развитого внешнего интерфейса. Ядро выполняет большинство базовых операций, а библиотека содержит множество команд - процедур, выполняемых в режиме интерпретации.

Интерфейс Maple основан на концепции рабочего поля (worksheet) или документа, содержащего строки ввода-вывода и текст, а также графику.

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

Интерфейс Maple

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

Система Maple позволяет вводить электронные таблицы, содержащие как числа, так и символы. Они совмещают в себе математические возможности системы Maple с уже знакомым форматом из строк и столбцов традиционных электронных таблиц. Электронные таблицы системы Maple можно использовать для создания таблиц формул.

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

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

Вычисления в Maple

Систему Maple можно использовать и на самом элементарном уровне ее возможностей - как очень мощный калькулятор для вычислений по заданным формулам, но главным ее достоинством является способность выполнять арифметические действия в символьном виде, то есть так, как это делает человек. При работе с дробями и корнями программа не приводит их в процессе вычислений к десятичному виду, а производит необходимые сокращения и преобразования в столбик, что позволяет избежать ошибок при округлении. Для работы с десятичными эквивалентами в системе Maple имеется специальная команда, аппроксимирующая значение выражения в формате чисел с плавающей запятой. Система Maple вычисляет конечные и бесконечные суммы и произведения, выполняет вычислительные операции с комплексными числами, легко приводит комплексное число к числу в полярных координатах, вычисляет числовые значения элементарных функций, а также знает много специальных функций и математических констант (таких, например, как «е» и «пи»). Maple поддерживает сотни специальных функций и чисел, встречающихся во многих областях математики, науки и техники. Приведем лишь некоторые из них:

  • функция ошибок;
  • эйлерова константа;
  • экспоненциальный интеграл;
  • эллиптическая интегральная функция;
  • гамма-функция;
  • зета-функция;
  • ступенчатая функция Хевисайда;
  • дельта-функция Дирака;
  • бесселева и модифицированная бесселева функции.

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

Maple также имеет множество мощных инструментальных средств для вычисления выражений с одной или несколькими переменными. Программу можно использовать для решения задач дифференциального и интегрального исчисления, вычисления пределов, разложений в ряды, суммирования рядов, умножения, интегральных преобразований (таких как преобразование Лапласа, Z-преобразование, преобразование Меллина или Фурье), а также для исследования непрерывных или кусочно-непрерывных функций.

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

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

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

Графика в Maple

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

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

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

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

Специализированные приложения

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

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

Программирование

Система Maple использует процедурный язык 4-го поколения (4GL). Этот язык специально предназначен для быстрой разработки математических подпрограмм и пользовательских приложений. Синтаксис данного языка аналогичен синтаксису универсальных языков высокого уровня: C, Fortran, Basic и Pascal.

Maple может генерировать код, совместимый с такими языками программирования, как Fortran или C, и с языком набора текста LaTeX, который пользуется большой популярностью в научном мире и применяется для оформления публикаций. Одно из преимуществ этого свойства - способность обеспечивать доступ к специализированным числовым программам, максимально ускоряющим решение сложных задач. Например, используя систему Maple, можно разработать определенную математическую модель, а затем с ее помощью сгенерировать код на языке C, соответствующий этой модели. Язык 4GL, специально оптимизированный для разработки математических приложений, позволяет сократить процесс разработки, а настроить пользовательский интерфейс помогают элементы Maplets или документы Maple со встроенными графическими компонентами.

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

Интернет-совместимость

Maple является первым универсальным математическим пакетом, который предлагает полную поддержку стандарта MathML 2.0, управляющего как внешним видом, так и смыслом математики в Интернете. Эта эксклюзивная функция делает текущую версию MathML основным средством Интернет-математики, а также устанавливает новый уровень совместимости многопользовательской среды. TCP/IP-протокол обеспечивает динамический доступ к информации из других Интернет-ресурсов, например к данным для финансового анализа в реальном времени или к данным о погоде.

Перспективы развития

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

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

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

Пакет Maple широко распространен в университетах ведущих научных держав, в исследовательских центрах и компаниях. Программа постоянно развивается, вбирая в себя новые разделы математики, приобретая новые функции и обеспечивая лучшую среду для исследовательской работы. Одно из основных направлений развития этой системы - повышение мощности и достоверности аналитических (символьных) вычислений. Это направление представлено в Maple наиболее широко. Уже сегодня Maple может выполнять сложнейшие аналитические вычисления, которые нередко не по силам даже опытным математикам. Конечно же, Maple не способна на гениальные догадки, но зато рутинные и массовые расчеты система выполняет с блеском. Другое важное направление - повышение эффективности численных расчетов. В результате этого заметно возросла перспектива использования Maple в численном моделировании и в выполнении сложных вычислений - в том числе с произвольной точностью. И наконец, тесная интеграция Maple с другими программными средствами - еще одно важное направление развития этой системы. Ядро символьных вычислений Maple уже включено в состав целого ряда систем компьютерной математики - от систем для широкого круга пользователей типа MathCad до одной из лучших систем для численных расчетов и моделирования MatLab.

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

Альтернативные пакеты

В качестве более простых, но идеологически близких альтернатив программе Maple можно отметить такие пакеты, как Derive (http://www.chartwellyorke.com/derive.html), Scientific WorkPlace (http://www.mackichan.com/) и YaCaS (www.xs4all.nl/~apinkus/yacas.html).

Как мы уже говорили, система Scientific WorkPlace (SWP, текущая версия 5.5) поначалу развивалась как редактор научных текстов, позволяя легко набирать и редактировать математические формулы. Однако со временем компания MacKichan Software, Inc. (разработчик системы Scientific WorkPlace) лицензировала символьный движок Maple у компании Waterloo Maple, Inc., и теперь эта программа объединяет простой в использовании текстовый процессор, обеспечивающий создание математических текстов и систему компьютерной алгебры в одной среде. Благодаря встроенной системе компьютерной алгебры вы можете производить вычисления прямо в документе. Конечно, у этой программы нет таких возможностей, как у Maple, однако она маленькая и простая в использовании.

Что касается YaCaS (аббревиатура от выражения Yet Another Computer Algebra System - еще одна система компьютерной алгебры), то это бесплатная кроссплатформенная альтернатива Maple, построенная на тех же принципах. Мощный и высокоэффективный движок YaCaS полностью реализован на C++ на условиях открытой лицензии (OpenSource). Интерфейс, конечно, более бедный и простой, чем у маститых конкурентов, но довольно удобный.

А вот маленькая коммерческая математическая система Derive (текущая версия 6.1) существует уже довольно давно, но, конечно, не может рассматриваться как полноценная альтернатива Maple, хотя она и по сей день привлекательна своей нетребовательностью к аппаратным ресурсам ПК. Более того, при решении задач умеренной сложности она демонстрирует даже более высокое быстродействие и большую надежность решения, чем первые версии систем Maple и Mathematica. Впрочем, системе Derive трудно всерьез конкурировать с этими системами - как по обилию функций и правил аналитических преобразований, так и по возможностям машинной графики и по удобству пользовательского интерфейса. Пока что Derive является больше учебной системой компьютерной алгебры начального уровня.

И хотя новейшая версия Derive 6 под Windows уже имеет современный удобный интерфейс, он во многом уступает изысканному интерфейсу маститых конкурентов. А в плане возможности графической визуализации результатов вычислений Derive и вообще далеко отстает от конкурентов.

MatLab (http://www.mathworks.com/)

Минимальные требования к системе:

  • процессор Pentium III, 4, Xeon, Pentium M; AMD Athlon, Athlon XP, Athlon MP;
  • 256 Мбайт оперативной памяти (рекомендуется 512 Мбайт);
  • 400 Мбайт дискового пространства (только для самой системы MatLab и ее Help);
  • операционная система Microsoft Windows 2000 (SP3)/XP.

Система MatLab относится к среднему уровню продуктов, предназначенных для символьной математики, но рассчитана на широкое применение в сфере CAE (то есть сильна и в других областях). MatLab - одна из старейших, тщательно проработанных и проверенных временем систем автоматизации математических расчетов, построенная на расширенном представлении и применении матричных операций. Это нашло отражение и в самом названии системы - MATrix LABoratory, то есть матричная лаборатория. Однако синтаксис языка программирования системы продуман настолько тщательно, что данная ориентация почти не ощущается теми пользователями, которых не интересуют непосредственно матричные вычисления.

Несмотря на то что изначально MatLab предназначалась исключительно для вычислений, в процессе эволюции (а сейчас выпущена уже версия 7), в дополнение к прекрасным вычислительным средствам, у фирмы Waterloo Maple по лицензии для MatLab было приобретено ядро символьных преобразований, а также появились библиотеки, которые обеспечивают в MatLab уникальные для математических пакетов функции. Например, широко известная библиотека Simulink, реализуя принцип визуального программирования, позволяет построить логическую схему сложной системы управления из одних только стандартных блоков, не написав при этом ни строчки кода. После конструирования такой схемы можно детально проанализировать ее работу.

В системе MatLab также существуют широкие возможности для программирования. Ее библиотека C Math (компилятор MatLab) является объектной и содержит свыше 300 процедур обработки данных на языке C. Внутри пакета можно использовать как процедуры самой MatLab, так и стандартные процедуры языка C, что делает этот инструмент мощнейшим подспорьем при разработке приложений (используя компилятор C Math, можно встраивать любые процедуры MatLab в готовые приложения).

Библиотека C Math позволяет пользоваться следующими категориями функций:

  • операции с матрицами;.
  • сравнение матриц;
  • решение линейных уравнений;
  • разложение операторов и поиск собственных значений;
  • нахождение обратной матрицы;
  • поиск определителя;
  • вычисление матричного экспоненциала;
  • элементарная математика;
  • функции beta, gamma, erf и эллиптические функции;
  • основы статистики и анализа данных;
  • поиск корней полиномов;
  • фильтрация, свертка;
  • быстрое преобразование Фурье (FFT);
  • интерполяция;
  • операции со строками;
  • операции ввода-вывода файлов и т.д.

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

Для визуализации моделирования система MatLab имеет библиотеку Image Processing Toolbox, которая обеспечивает широкий спектр функций, поддерживающих визуализацию проводимых вычислений непосредственно из среды MatLab, увеличение и анализ, а также возможность построения алгоритмов обработки изображений. Усовершенствованные методы графической библиотеки в соединении с языком программирования MatLab обеспечивают открытую расширяемую систему, которая может быть использована для создания специальных приложений, пригодных для обработки графики.

Основные средства библиотеки Image Processing Tollbox:

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

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

Таким образом, программу MatLab можно использовать для восстановления испорченных изображений, шаблонного распознавания объектов на изображениях или же для разработки каких-либо собственных оригинальных алгоритмов обработки изображений. Библиотека Image Processing Tollbox упрощает разработку высокоточных алгоритмов, поскольку каждая из функций, включенных в эту библиотеку, оптимизирована для максимального быстродействия, эффективности и достоверности вычислений. Кроме того, библиотека обеспечивает разработчика многочисленным инструментарием для создания собственных решений и для реализаций сложных приложений обработки графики. А при анализе изображений использование мгновенного доступа к мощным средствам визуализации помогает моментально увидеть эффекты увеличения, восстановления и фильтрации.

Среди других библиотек системы MatLab можно также отметить System Identification Toolbox - набор инструментов для создания математических моделей динамических систем, основанных на наблюдаемых входных/выходных данных. Особенностью этого инструментария является наличие гибкого пользовательского интерфейса, позволяющего организовать данные и модели. Библиотека System Identification Toolbox поддерживает как параметрические, так и непараметрические методы. Интерфейс системы облегчает предварительную обработку данных, работу с итеративным процессом создания моделей для получения оценок и выделения наиболее значимых данных. Быстрое выполнение с минимальными усилиями таких операций, как открытие/сохранение данных, выделение области возможных значений данных, удаление погрешностей, предотвращение ухода данных от характерного для них уровня.

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

А что касается математических вычислений, то MatLab предоставляет доступ к огромному количеству подпрограмм, содержащихся в библиотеке NAG Foundation Library компании Numerical Algorithms Group Ltd (инструментарий имеет сотни функций из различных областей математики, и многие из этих программ были разработаны широко известными в мире специалистами). Это уникальная коллекция реализаций современных численных методов компьютерной математики, созданных за последние три десятка лет. Таким образом, MatLab вобрала и опыт, и правила, и методы математических вычислений, накопленные за тысячи лет развития математики. Одну только прилагаемую к системе обширную документацию вполне можно рассматривать как фундаментальный многотомный электронный справочник по математическому обеспечению.

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

Поэтому для проведения аналитических преобразований в MatLab используется ядро символьных преобразований Maple, а из Maple для численных расчетов можно обращаться к MatLab. Ведь недаром символьная математика Maple вошла составной частью в целый ряд современных пакетов, а численный анализ от MatLab и наборы инструментов (Toolboxes) уникальны. Тем не менее математические пакеты Maple и MatLab - это интеллектуальные лидеры в своих классах, это образцы, определяющие развитие компьютерной математики.

В качестве более простых, но идеологически близких альтернатив программе MatLab можно отметить такие пакеты, как Octave (www.octave.org), KOctave (bubben.homelinux.net/~matti/koctave/) и Genius (www.jirka.org/genius.html).

Octave - это программа числовых вычислений, хорошо совместимая с MatLab. Интерфейс системы Octave, конечно, беднее, и у нее нет таких уникальных библиотек, как у MatLab, зато это очень простая в освоении программа, нетребовательная к системным ресурсам. Распространяется Octave на условиях открытой лицензии с исходным кодом (OpenSource) и может стать хорошим подспорьем для учебных заведений.

Программа KOctave по сути представляет собой более продвинутый графический интерфейс для системы Octave. В результате использования KOctave система Octave становится полностью похожей на MatLab.

Простенькая математическая программа Genius, естественно, не может поспорить по мощности с именитыми конкурентами, но идеология математических преобразований у нее сходна с MatLab и Maple. Распространяется Genius тоже на условиях открытой лицензии с исходным кодом (OpenSource). Она имеет собственный язык GEL, развитый инструментарий Genius Math Tool и хорошую систему подготовки документов для публикации (с использованием таких языков оформления, как LaTeX, Troff (eqn) и MathML). Очень хороший графический интерфейс программы Genius сделает работу с ней простой и удобной.

MathCad (http://www.mathsoft.com/ , http://www.mathcad.com/)

Минимальные требования к системе:

  • процессор Pentium II или выше;
  • 128 Мбайт оперативной памяти (рекомендуется 256 Мбайт или больше);
  • 200-400 Мбайт дискового пространства;
  • операционные системы: Windows 98/Me/NT 4.0/2000/XP.

В отличие от мощного и ориентированного на высокоэффективные вычисления при анализе данных пакета MatLab, программа MathCad (текущая версия 13) - это, скорее, простой, но продвинутый редактор математических текстов с широкими возможностями символьных вычислений и прекрасным интерфейсом. MathCad не имеет языка программирования как такового, а движок символьных вычислений заимствован из пакета Maple. Зато интерфейс программы MathCad очень простой, а возможности визуализации богатые. Все вычисления здесь осуществляются на уровне визуальной записи выражений в общеупотребительной математической форме. Пакет имеет хорошие подсказки, подробную документацию, функцию обучения использованию, целый ряд дополнительных модулей и приличную техническую поддержку производителя (как можно видеть по версии продукта, обновление этой программы происходит чаще, чем других, упомянутых в этом обзоре, хотя год выпуска первой версии у них примерно один и тот же - 1996-1997 годы). Однако пока математические возможности MathCad в области компьютерной алгебры намного уступают системам Maple, Mathematica, MatLab и даже малютке Derive. Однако по программе MathCad выпущено много книг и обучающих курсов, в том числе у нас в России. Сегодня эта система стала буквально международным стандартом для технических вычислений и даже многие школьники осваивают и используют MathCad.

Для небольшого объема вычислений MathCad идеален - здесь все можно проделать очень быстро и эффективно, а затем оформить работу в привычном виде (MathCad предоставляет широкие возможности для оформления результатов, вплоть до публикации в Интернете). Пакет имеет удобные возможности импорта/экспорта данных. Например, можно работать с электронными таблицами Microsoft Excel прямо внутри MathCad-документа.

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

В качестве более дешевых, простых, но идеологически близких альтернатив программе MathCad можно отметить такие пакеты, как уже упомянутый YaCaS, коммерческую систему MuPAD (http://www.mupad.de/) и бесплатную программу KmPlot (http://edu.kde.org/kmplot/).

Программа KmPlot распространяется на условиях открытой лицензии с исходным кодом (OpenSource). Она очень проста в освоении и подойдет даже школьникам.

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

Заключение

Несмотря на то что в области компьютерной математики не наблюдается такого разнообразия, как, скажем, в среде компьютерной графики, за видимой ограниченностью рынка математических программ скрываются их поистине безграничные возможности! Как правило, CAE-системы охватывают практически все области математики и инженерных расчетов.

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

Отметим, что практически все эти системы работают не только на персональных компьютерах, оснащенных популярными операционными системами Windows, но и под управлением операционных системы Linux, UNIX, Mac OS, а также на КПК. Они давно знакомы пользователям и широко распространены на всех платформах - от наладонника до суперкомпьютера.



Рекомендуем почитать

Наверх