1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /136, 1996 г./ | Бонус | Поиск  

Продукты

MATLAB – математическая лаборатория на компьютере

Евгений Тимофеев


© 2004, Еженедельник «Компьютерра» | http://www.computerra.ru/offline
Этого материала на сайте "Компьютерры", к сожалению, нет

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

Своими корнями MATLAB уходит в начало 80-х годов. Тогда он представлял собой одну из многих программных реализаций алгоритмов, применявшихся в математическом моделировании и инженерных расчетах. Как самостоятельный продукт пакет стал развиваться усилиями созданной в 1984 году фирмы The MathWorks Inc. Программа была расширена внушительным арсеналом средств математического моделирования, анализа и преобразования данных.

Сильнейшей стороной пакета был и остается матричный вычислитель. При создании продукта учитывалась необходимость быстрого и эффективного взаимодействия с матрично-ориентированным программным обеспечением. Собственно говоря, название MATLAB – это сокращение от matrix laboratory (матричная лаборатория).

 

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

Для повышения скорости вычислений наиболее важные внутренние циклы написаны на ассемблере – это позволяет пакету работать быстрее аналогичных программ, написанных на Фортране и Си.

Сейчас на рынке представлено несколько версий пакета MATLAB: для Windows, Macintosh, VMS и Unix-систем. Минимум аппаратных ресурсов, необходимых для работы программы, начинается с 486-го процессора и Windows 3.1 на PC (PowerPC 601 с системой 7.1.2 для работы на Power Macintosh), 4 Мбайт оперативной памяти только для численных расчетов (для эффективного использования графики потребуется в два раза больше) и 15 Мбайт дисковой памяти для установки пакета.

Пакет очень удобен по своей структуре: средства решения отдельных классов задач (статистика, символьные вычисления и т.д.) реализованы в специальных модулях-приложениях – toolboxes. Среди них наиболее известен уникальный модуль SIMULINK, предназначенный для моделирования динамических систем.

Матричные вычисления

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

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

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

 

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

Визуализация

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

 

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

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

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

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

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

Хотя MATLAB и не рассчитан для публикации математических документов, в нем предусмотрена возможность вывода данных (в том числе и графики) на внешние устройства. Среди поддерживаемых форматов – GIF, Postscript, PICT (для Macintosh), Adobe Illustrator, BMP и Windows metafile. Из настольных издательских систем поддерживаются Frame, ТЕХ, PageMaker, PowerPoint и некоторые другие.

Инструментарий

Для решения узких задач существуют специализированные приложения – toolboxes. Тематика этих приложений весьма обширна – к настоящему моменту их выпущено уже около тридцати пяти: "Символьная математика", "Статистика", "Оптимизация", "Системы управления", "Financial", SIMULINK, модули моделирования нейронных сетей, элементов нечеткой логики и многое другое. Например, модуль "Financial" служит для выполнения финансовых расчетов и особенно эффективен при взаимодействии со "Статистикой" или "Оптимизацией". Предметом гордости фирмы MathWorks является приложение SIMULINK. По сути это самостоятельный модуль, который может работать не только в основной среде пакета MATLAB, но и в связке с некоторыми другими прикладными системами. Основное предназначение SIMULINK – графическое моделирование динамических систем при помощи функциональных блоков, зависимостей и операторов. Кроме того, с его помощью может проводиться кинематический анализ инженерных конструкций. Программа находит широкое применение в авиационно-космической промышленности, энергетике и других отраслях специального машиностроения.

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

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

Сейчас на рынке представлена последняя версия пакета MATLAB – за номером 4.2, однако фирма MathWorks уже заявила о намерении выпустить к концу 1996 года версию 5.0. В России распространением системы MATLAB занимается официальный представитель компании MathWorks фирма "Тезис". В соответствии с International Price List цена продукта составляет 2120 долларов. Учебным заведениям (для использования в некоммерческих целях) пакет продается втрое дешевле.

Автор выражает благодарность фирме "Тезис" и корпорации "Софт-Лайн" за предоставленные материалы и консультации.

Фирма "Тезис": 214-68-16.

Корпорация "СофтЛайн":

232-00-23.

 


1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | Оглавление текущего номера /136, 1996 г./ | Бонус | Поиск  

© 2004, Издательский дом «Компьютерра» | http://www.computerra.ru
Телефон редакции: (095) 232-22-61
E-mail редакции: inform@computerra.ru