
Факультет ПМ-ПУ СПбГУ
Глава 4 моделирование элементов информационных систем в среде matlab
Исключительная значимость вопросов компьютерного моделирования в исследованиях и проектировании информационных систем определяют то внимание, которое постоянно уделяется специалистами в области информационных технологий выбору инструментальных программных средств, обеспечивающих вычислительную поддержку всех этапов построения компьютерных моделей.
В настоящее время известны несколько крупных универсальных программных пакетов, как правило, включающих интегрированные среды, для проведения исследований и разработок, ориентированных на решение широкого круга математических задач. Это такие широко известные системы, поставляемые под различные операционные платформы, как Mathematica, MathCad, Maple, MATLAB и некоторые другие.
Среди указанных систем особую роль играет интегрированный математический пакет MATLAB, изначально ориентированный на работу с матрицами. В своей основе этот пакет включает совокупность базовых и дополнительных подпрограмм, предназначенных для решения широкого круга математических задач вычислительного характера. Базовые подпрограммы включены в ядро системы, являющееся интерпретатором команд специализированного языка высокого уровня MATLAB, которые могут выполняться как непосредственно из интегрированной среды, так и в программном режиме.
Дополнительные подпрограммы поставляются в виде исходного кода на языке MATLAB в составе специализированных инструментальных пакетов (так называемых TOOLBOXов), имеющих предметную ориентацию, как правило, связанную с решением того или иного круга прикладных задач. Сюда относятся и задачи прикладной теории управления, относящиеся к вопросам анализа, синтеза, моделирования и реализации управляемых динамических систем.
Особое значение для специалистов информационным технологиям и их приложениям имеет специальный пакет программных средств Simulink, обеспечивающий моделирование динамических объектов и процессов, функционирующий под управлением и в непосредственном взаимодействии с основной частью системы MATLAB. С помощью этого пакета осуществляется построение цифровой модели динамической системы на базе библиотеки стандартных блоков (включая поиск положений равновесия и линеаризацию уравнений относительно этих положений), выполняется имитационное моделирование динамических процессов, происходит визуальное отображение динамических процессов и осуществляется передача результатов счета в рабочую среду MATLABа для выполнения дальнейших действий.
1. Основные элементы пакета matlab
1.1. Общие сведения
MATLAB – это высокопроизводительная инструментальная система для математической поддержки научно-технической деятельности. Система обеспечивает выполнение вычислений и визуализацию их результатов с использованием программирования в удобной интегрированной среде в форме, которая близка к математической.
Характерными направлениями применения системы являются:
математические вычисления;
алгоритмизация обработки информации;
компьютерное и имитационное моделирование;
анализ данных, их исследование и визуализация;
научная и инженерная графика;
формирование пользовательского интерфейса;
разработка приложений для современных операционных сред.
Система MATLAB является интерактивной средой, в которой основной математической формой представления данных служит матрица. Отсюда и название системы матричная лаборатория (matrix laboratory). Подобная ориентация системы делает ее особо значимой для решения прикладных задач с использованием матричных методов. При этом эффективность программирования существенно возрастает по сравнению с универсальными языками высокого уровня типа Си, Паскаля или Фортрана.
Первые разработки системы относятся к концу 70-х годов и связаны с университетами Нью Мехико и Стенфорда, где они были использованы для преподавания курсов линейной алгебры, теории матриц и численного анализа. Целью создания MATLAB было упрощение взаимодействия с известными пакетами прикладных программ по линейной алгебре Linpack и Eispack, написанными на языке Фортран. Авторы разработки системы MATLAB поставили перед собой задачу об использовании этих пакетов без написания программ на Фортране.
Поставленная задача была успешно решена и система начала успешно развиваться как в базовом, так и в прикладном аспекте, и адаптироваться к самым современным операционным средам.
В настоящее время MATLAB широко используется на Западе. В университетах он представляет собой инструмент для исследовательской работы и преподавания в различных областях математики, техники и других наук. В промышленности эта система используется как инструмент для высокопродуктивных исследований, анализа, разработок и моделирования.
Базовые подпрограммы включены в ядро системы, являющееся интерпретатором команд специализированного языка высокого уровня MATLAB, которые могут выполняться как непосредственно из интегрированной среды, так и в программном режиме.
Дополнительные подпрограммы поставляются в виде исходного кода на языке MATLAB в составе специализированных инструментальных пакетов (toolboxes). Эти пакеты имеют проблемно ориентированный характер и применяются для высокоэффективного решения того или иного круга частных прикладных задач с использованием специализированных вычислительных методов.
Сюда относятся и многочисленные вопросы анализа, синтеза и моделирования информационных систем и процессов, включая задачи прикладной теории управления динамическими объектами.
Особое значение для специалистов в области информационных технологий имеет специальный пакет программных средств Simulink, обеспечивающий моделирование динамических объектов и процессов, функционирующий под управлением и в непосредственном взаимодействии с основной частью системы MATLAB.
С помощью этого пакета осуществляется построение цифровой модели динамической системы на базе библиотеки стандартных блоков (включая поиск положений равновесия и линеаризацию уравнений относительно этих положений), выполняется имитационное моделирование динамических процессов, происходит визуальное отображение динамических процессов и осуществляется передача результатов счета в рабочую среду MATLABа для выполнения дальнейших действий.
Конкретизируя изложенные положения, отметим следующие особенности, которые характеризуют выделенный математический пакет:
Система MATLAB представляет пользователю уникальный базовый набор подпрограмм общематематического характера, реализующих наиболее эффективные вычислительные методы алгебры, анализа, теории функций комплексной переменной, теории обыкновенных дифференциальных уравнений и т.д., которые используются специалистами по информационным технологиям.
В состав специализированных инструментальных пакетов системы входят совокупности функций, реализующих современные вычислительные методы анализа и синтеза динамических объектов, теории оптимизации, теории идентификации, теории робастного управления, теории управления с предсказанием и другие блоки, позволяющие выполнять широчайший спектр работ по исследованию и проектированию информационных систем в автоматизированном режиме.
Система включат специализированную среду Simulink для моделирования динамических процессов, как в непрерывном, так и в дискретном времени, позволяющую выполнять все необходимые действия по исследованию динамики в режиме имитации реальных условий функционирования с удобной системой цифрового и графического отображения динамических параметров.
Система включает объектно-ориентированные средства построения графического интерфейса пользователя, позволяющие формировать удобную среду управления процессами вычислений и моделирования в привычном для многооконных графических операционных сред режиме, а также удобную систему контроля над текущим ходом указанных процессов.
Входным языком программирования системы является язык высокого уровня MATLAB, на котором можно писать специализированные программы и процедуры, расширяя последними стандартный состав пакетов с целью их ориентации на предметную область и типовые задачи пользователя. Кроме того, допускается использование отдельных подпрограмм, написанных на языках С и С++, а также компиляция MATLAB - программ в С код.
Все подпрограммы, входящие в состав специализированных пакетов, поставляются в исходных кодах на языке MATLAB, что является особым достоинством системы, поскольку позволяет легко выполнять необходимую модификацию и адаптацию предметно ориентированных инструментов для решения конкретных задач, а также осуществлять развитие возможностей пакета в соответствии с представлениями и возможностями конкретного пользователя.
Встроенный в систему редактор исходного текста позволяет осуществлять высококачественное документирование программ с введением необходимых комментариев, делающих исходный код удобным для восприятия и выполнения необходимых преобразований.
Графическая подсистема позволяет обеспечивать эффективную визуализацию результатов вычислений с возможностью сохранения графических образов в файлах наиболее популярных графических форматов, либо передачи через буфер обмена в любые современные текстовые или графические редакторы, что существенно упрощает процесс формирования отчетной документации.
В настоящее время система MATLAB является некоторым общепризнанным мировым стандартом представления научно-технической информации в среде специалистов, занимающихся исследованиями и проектированием информационных систем и систем управления. Подавляющее большинство научных статей и докладов, публикуемых по данному направлению, сопровождается иллюстративным материалом, выполненным в среде MATLAB. Существует обширный круг научной литературы, базирующейся на использовании данной системы. Проводятся специальные международные конференции специалистов, применяющих пакет в своей деятельности.
10. Рассматриваемая система широко доступна, и имеет относительно невысокую стоимость. Пакет реализуется в современных 32-х разрядных операционных системах MS Windows, Unix и OS Mac.