Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
matlab_5.3(учебник).DOC
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
2.18 Mб
Скачать

125

Федеральное агенство по образованию

Томский государственный университет

В.И. Смагин

ПАКЕТ ПРИКЛАДНЫХ ПРОГРАММ

MATLAB 5.3

Учебное пособие

Томск

2006

Смагин В.И.

Пакет прикладных программ Matlab 5.3. Учебное пособие. – Томск: Томский государственный универсистет, 2006. – 123 с.

     Дано описание пакета прикладных программ Matlab и системы визуального моделирования Simulink. Рассмотрено назначение и описание панели инструментов пакета Matlab (версия 5.3.1) и системы Simulink (версия 3.1), приводятся основные операторы, функции и примеры по их использованию.

 Томск. гос. у-нт, 2006

Содержание

ВВЕДЕНИЕ………………..……………………………………….5

1. ОПИСАНИЕ ПАНЕЛИ ИНСТРУМЕНТОВ 10

     1.1. Командное окно 10

     1.2. Окно редактирования и отладки 11

     1.3. Окно рабочей области 12

     1.4. Пути доступа к m-файлам 13

     1.5. Окно справки Help Window 14

2. ПЕРЕМЕННЫЕ, ОПЕРАТОРЫ И ФУНКЦИИ СИСТЕМЫ MATLAB 15

     2.1. Переменные, константы и специальные символы 15

     2.2. Арифметические операторы 17

     2.3. Операторы и функции отношения 18

     2.4. Логические операторы 20

     2.5. Элементарные функции 21

     2.6. Массивы и матрицы 25

3. ГРАФИЧЕСКИЕ СРЕДСТВА СИСТЕМЫ MATLAB 32

     3.1. Основные операторы и функции графики 33

     3.2. Окно графики 34

     3.3. Графика в прямоугольных координатах 36

     3.4. Масштабирование осей и вывод на экран 38

     3.5. Графика в полярных координатах 39

     3.6. Построение столбиковых даграмм и гистограмм 40

     3.7. Отображение трехмерных поверхностей 43

4. ПРОГРАММИРОВАНИЕ В СИСТЕМЕ MATLAB 46

     4.1. Структура m-файла сценария и функции 46

     4.2. Ввод и вывод иформации 49

     4.3. Форматы вывода чисел 50

     4.4. Функции nargin и nargout 52

     4.5. Локальные и глобальные переменные 52

     4.6. Управление последовательностью выполнения 53

операторов 53

     4.7. Ускорение вычислений 55

     4.8. Примеры программирования с использованием средств пакета Matlab 56

5. СИСТЕМА SIMULINK 68

     5.1. Библиотека модулей 70

     5.2. Раздел Sinks (получатели сигналов) 72

     5.3. Раздел Sources (источники сигналов) 77

     5.4. Раздел Continuous (аналоговые блоки) 83

     5.5. Раздел Discrete (дискретные блоки) 85

     5.6. Раздел Function & Tables (функции и таблицы) 87

     5.7. Раздел Math (математические блоки) 91

     5.8. Раздел Nonlinear (нелинейные компоненты) 98

     5.9. Раздел Signal & Systems (блоки преобразования сигналов и создания систем) 102

     5.10. Применение системы Simulink в задачах моделирования динамических систем 112

ЛИТЕРАТУРА 125

Введение

     Система Matlab (Matrix Laboratory - матричная лаборатория) - одна из популярных систем программирования, построенная на расширенном представлении и применении матричных операций. Матрицы широко применяются в сложных математических расчетах, например, при решении задач линейной алгебры и математического моделирования статических и динамических систем и объектов. Они являются основой автоматического составления и решения уравнений состояния динамических объектов и систем.

     Система Matlab была разработана Молером (С. В. Moler) и с конца 70-х гг. широко использовалась на больших ЭВМ. В начале 80-х гг. Джон Литл (John Little) из фирмы MathWorks, Inc. разработал версии системы PC Matlab для компьютеров класса IBM PC и Macintosh. В дальнейшем были созданы версии для компьютеров с операционной системой UNIX. В настоящее время свыше десятка популярных компьютерных платформ могут работать с системой Matlab.

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

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

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

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

     Перечислим основные пакеты расширения системы Мatlab:

  • Control System - пакет предназначен для моделирования, анализа и проектирования систем автоматического управления - как непрерывных, так и дискретных;

  • Nonlinear Control Design - пакет реализует метод динамической оптимизации для проектирования систем управления;

  • Robust Control - пакет включает средства для проектирования и анализа многопараметрических устойчивых систем управления объектами, динамика которых известна не полностью или параметры которых могут изменяться непредсказуемо;

  • Model Predictive Control - пакет содержит полный набор средств для реализации стратегии синтеза управлений с использованием прогнозирующих моделей;

  • -Analysis and Synthesis - пакет содержит функции для проектирования устойчивых систем управления на основе оптимизации в равномерной норме и использует сингулярный параметр ;

  • Stateflow - пакет моделирования событийно-управляемых систем, основанный на теории конечных автоматов;

  • Quantitative Feedback Theory - пакет содержит функции для создания робастных (устойчивых) систем с обратной связью;

  • LMI Control (LMI - Linear Matrix Inequality) - пакет обеспечивает решение задач линейного программирования и используется при синтезе систем управления на основе методов решения матричных неравенств;

  • System Identification - пакет содержит средства для создания математических моделей динамических систем на основе наблюдаемых входных и выходных данных;

  • Frequency Domain System Identification - пакет предоставляет специализированные средства для идентификации линейных динамических систем по их временному или частотному отклику;

  • Neural Networks - пакет прикладных программ, содержащих средства для построения нейронных сетей, базирующихся на поведении математического аналога биологического нейрона;

  • Fuzzy Logic - пакет прикладных программ реализует теорию нечетких множеств в задачах принятия решений;

  • Symbolic Math - пакет прикладных программ, дающих системе MATLAB принципиально новые возможности - возможности решения задач в символьном (аналитическом) виде;

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

  • Spline - пакет прикладных программ для работы со сплайнами;

  • Statistics - пакет прикладных программ по статистике;

  • Optimization - пакет прикладных задач используется для решения оптимизационных задач (в том числе с ограничениями) и систем нелинейных уравнений;

  • Partial Differential Equations - пакет прикладных программ, содержащий множество функций для решения систем дифференциальных уравнений в частных производных;

  • Communications - пакет прикладных программ для построения и моделирования разнообразных телекоммуникационных устройств;

  • Digital Signal Processing (DSP) Blockset - пакет для проектирования устройств, использующих процессоры цифровой обработки сигналов;

  • Fixed-Point Blockset - пакет ориентирован на моделирование цифровых систем управления и цифровых фильтров в составе пакета Simulink;

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

  • Higher-Order Spectral Analysis - пакет содержит специальные алгоритмы для анализа сигналов с использованием моментов высшего порядка;

  • Image Processing - пакет представляет собой широкий спектр средств для цифровой обработки и анализа изображений;

  • Wavelet - пакет предоставляет пользователю полный набор программ для исследования многомерных нестационарных явлений с помощью вейвлетов (коротких волновых пакетов);

  • Financial - пакет прикладных программ по финансово-экономическим расчетам;

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

  • Power System - пакет моделирования энергетических систем;

  • Real Time Windows Target и Workshop - подключающаяся к Simulink подсистема имитационного моделирования в реальном масштабе времени;

  • Report Generator for Matlab & Simulink - генераторы отчетов - средство дает информацию о работе системы Matlab и пакета расширения Simulink (это средство очень полезно при отладке сложных вычислительных алгоритмов или при моделировании сложных систем);

  • Data Acquisition & Instrument Control - пакет расширения, относящийся к области сбора данных;

  • Excel Link - позволяет использовать Microsoft Excel как процессор ввода и вывода для системы Matlab;

  • MATLAB Compiler - компилятор для программ, создаваемых на языке программирования системы MATLAB (транслирует коды этих программ в программы на языке Си++, применение компилятора обеспечивает возможность создания исполняемых кодов, время выполнения которых для программ с большим числом циклических операций уменьшается до 15 раз).

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

     В настоящем учебном пособии мы будем придерживаться версии Matlab 5.3.1 и Simulink 3.1, все материалы учебного пособия могут быть использованы и при работе с версией Matlab 6.5, а также с последней версией Matlab 7.0 и Simulink 5.0, однако необходимо учитывать внесенные разработчиками изменения. Отметим, что описание пакета Matlab с его расширениями приведено также в [1-10]. Полное описание пакета дано в документации к пакету Matlab фирмы MathWorks [11] и на сайтах интернета [12, 13].

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]