Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Применение MATLAB для решения аналитических задач моделирования. Учебное пособие
.pdf
1
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное
образовательное учреждение высшего образования
«ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»
Инженерно-технологическая академия
М. В. ПЕТРЯЕВА
А. Н. ЦЕЛЫХ
ПРИМЕНЕНИЕ MATLAB ДЛЯ РЕШЕНИЯ
АНАЛИТИЧЕСКИХ ЗАДАЧ МОДЕЛИРОВАНИЯ
Учебное пособие
Ростов-на-Дону – Таганрог
Издательство Южного федерального университета
2022

2
УДК 004.438:004.056 (075.8)
ББК 32.973-018.1я73
П313
Печатается по решению кафедры информационно-аналитических
систем безопасности Института компьютерных технологий и
информационной безопасности Южного федерального университета
(протокол № 7 от 27 апреля 2021 г.)
Рецензенты:
доктор технических наук, профессор кафедры информатики
Таганрогского института имени А. П. Чехова (филиал) «Ростовского
государственного Экономического университета (РИНХ)» Я. Е. Ромм
доктор технических наук, профессор кафедры информационно-
аналитических систем безопасности ИКТИБ ЮФУ А. В. Боженюк
Петряева, М. В.
П313 Применение MATLAB для решения аналитических задач моде-
лирования : учебное пособие / М. В. Петряева, А. Н. Целых ; Южный
федеральный университет. – Ростов-на-Дону ; Таганрог : Издательство Южного федерального университета, 2022. – 131 с.
ISBN 978-5-9275-4058-7
Изложены необходимые для освоения курса сведения – краткий кон-
спект лекций, методические указания к выполнению лабораторных работ,
индивидуального задания, а также образцы тестовых вопросов. Направление
подготовки 10.03.01 “Информационная безопасность”.
УДК 004.438:004.056 (075.8)
ББК 32.973-018.1я73
ISBN 978-5-9275-4058-7
© Южный федеральный университет, 2022
© Петряева М. В., Целых А. Н., 2022
© Оформление. Макет. Издательство
Южного федерального университета, 2022

3
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ ……………………………………………………………..
5
ИСТОРИЯ ……………………………………………………………….
8
РАБОЧИЙ СТОЛ ………………………………………………………
10
Лабораторная работа № 1. Основы работы в Matlab. Установка и
настройка среды ………………………………………………………
15
РАБОЧАЯ ОБЛАСТЬ. ПЕРЕМЕННЫЕ ……………………………..
16
Лабораторная работа № 2. Создание и редактирование переменных
24
СТРУКТУРА ПРОГРАММЫ ПАКЕТА MATLAB ………………...
26
Лабораторная работа № 3. Структура программы в Matlab. Математические операции …………………………………………………
27
ФУНКЦИИ ……………………………………………………………...
28
Лабораторная работа № 4. Работа с локальными и глобальными
функциями …………………………………………………………….
35
РАБОТА С МАТРИЦАМИ …………………………………………...
36
Лабораторная работа № 5. Функции для работы с матрицами ……
46
ПОЛЯ СТРУКТУР ……………………………………………………..
47
Лабораторная работа № 6. Работа со структурами …………………
50
ГРАФИЧЕСКИЕ ОБЪЕКТЫ ………………………………………….
52
Лабораторная работа № 7. Функция plot ……………………………
58
ТРЕХМЕРНЫЕ ГРАФИКИ …………………………………………...
60
Лабораторная работа № 8. Трехмерные объекты в Matlab. Сетчатые графики …………………………………………………………...
66
УРАВНЕНИЯ …………………………………………………………...
68
Лабораторная работа № 9. Решение дифференциальных уравнений
70
АППРОКСИМАЦИЯ В MATLAB …………………………………...
71
Лабораторная работа № 10. Аппроксимация в Matlab ………………
76
ФУНКЦИИ И ОПЕРАЦИИ ДЛЯ РАБОТЫ СО СТРОКАМИ …..
77

Оглавление
4
Лабораторная работа № 11. Обработка строк ………………………..
84
ФУНКЦИИ ВРЕМЕНИ И ДАТЫ MATLAB ……………………….
85
Лабораторная работа № 12. Функции времени и даты Matlab ……...
92
ИНТЕГРАЦИЯ MATLAB ……………………………………………..
93
Лабораторная работа № 13. Экспорт графиков а MA Power point ….
95
РАБОТА С ФАЙЛАМИ ………………………………………………
96
Лабораторная работа № 14. Форматированные файлы ……………...
100
ПОЛУЧЕНИЕ ДАННЫХ ……………………………………………...
101
ИНТЕЛЛЕКТУАЛЬНЫЙ АНАЛИЗ ТЕКСТА ………………………
102
Лабораторная работа № 15. Подготовка текста, анализ и моделирование данных …………………………………………………………...
108
РАЗРАБОТКА ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА ………...
110
ИНДИВИДУАЛЬНОЕ ЗАДАНИЕ ……………………………………
127
ЗАКЛЮЧЕНИЕ …………………………………………………………
128
СПИСОК ЛИТЕРАТУРЫ ……………………………………………..
129

Введение
5
ВВЕДЕНИЕ
В настоящее время развитие многих сфер деятельности напрямую
связано с развитием информационных технологий. С появлением персонального компьютера появились такие понятия, как информатизация и
информационное общество. Для современного научно-технического прогресса характерны не только активная информатизация, но и высокая степень автоматизации процессов. Появление компьютерной математики
принесло с собой целый набор интегрированных пакетов программ и программных комплексов, автоматизирующих инженерные и математические
расчеты. К ним относятся Gauss, TK Solver!, Eureka, Derive, Mathcad,
Mathematica, Maple V и др.
Перечисленные выше программы позволят намного легче находить
интегралы разных видов, работать с рядами, быстрее решать дифференциальные уравнения. Как наиболее популярные из них, выделяют MatLab,
Maple, MathCad и Mathematica.
MATLAB – одна из старейших, а потому тщательно разработанных
и проверенных временем систем автоматизации математических вычислений. Эти системы относятся к классу автоматизированного проектирования (CAE) в области инженерного проектирования. Инструментарий
MATLAB основан на расширенном представлении и применении матричных операций. Даже в названии системы – MATrix LABoratory – матричная лаборатория отражена матричная основа.
Несмотря на это пользователи, не заинтересованные в матричных
вычислениях, практически не испытывают неудобств в работе. Это происходит за счет того, что синтаксис встроенного языка программирования
данной системы тщательно продуман.
Матрицы применяются в математике для компактной записи систем
линейных алгебраических или дифференциальных уравнений, в матричной
механике – разделе квантовой механики, в математическом моделировании
различных статических и динамических систем и объектов. Матрицы составляют основу для решения уравнений состояния динамических объектов
и систем и используются для автоматизации их составления.
Ярким примером является Simulink – расширение MATLAB. Си-
стема MATLAB включает в себя новейшие достижения в области автома-

Введение
6
тизации процесса решения матричных задач, а потому представляет интерес для специалистов, наряду с этим обладая понятным и удобным интерфейсом, что важно для начинающих пользователей.
Миллионы инженеров и ученых во всем мире используют
MATLAB®, чтобы анализировать и спроектировать системы и продукты,
преобразовывающие наш мир. Матричный язык MATLAB является самым естественным способом в мире описать вычислительную математику. Встроенная графика облегчает визуализацию и понимание данных.
Окружение рабочего стола способствует экспериментированию, исследованиям и открытиям. Эти средства MATLAB и возможности все строго
протестированы и спроектированы, чтобы работать совместно.
Современный MATLAB позволяет проводить анализ данных практически в любых разделах математики. Как было сказано ранее, основным
объектом среды являются матрицы, что дает возможность решать уравнения линейной алгебры, выполнять операции над матрицами и векторами.
Также среда помогает находить корни в виде многочленов, выполнять
различные операции над ними, а также производить дифференцирование,
интерполяцию и экстраполяцию кривых.
Инструменты Matlab допускают работу со статистическими и динамическими функциями. Функции раздела математической статистики и
анализа данных позволяют выполнять быстрое преобразование рядов
Фурье. Matlab упрощает решение дифференциальных и дифференциально-алгебраических уравнений, дифференциальных уравнений, допускает
уравнения с ограничениями, частными производными, с начальными
условиями (задача Коши) с помощью пакета PDE toolbox.
Matlab – идеальная среда для моделирования физических явлений,
инженерных и экономических систем.
Чтобы расширить эти «способности», MathWorks вместе с Matlab
поставляет сопутствующую интерактивную программу Simulink для моделирования динамических систем. По словам создателей, этот продукт
«позволяет представить исследуемую динамическую систему с помощью
соединенных между собой функциональных блоков (блок-диаграммы), а
затем изучить ее поведение в динамике».
MATLAB позволяет пользователям воплощать свои идеи за пределами рабочего стола. На сегодняшний день возможно запустить исследо-

Введение
7
вания больших наборов данных и масштабировать до кластеров и облаков. Код MATLAB может быть интегрирован с другими языками, позволив вам развернуть алгоритмы и приложения в сети, предприятии и промышленных системах.
Фактически MATLAB – это аббревиатура от MATLABoratory.
Большая часть функциональных возможностей MATLAB может работать
с несколькими значениями одновременно.
Среда содержит все необходимые инструменты, типичные для IDE,
включая отладчик и профайлер. Современный MATLAB позволяет разрабатывать алгоритмы на основе основных принципов классического объектно-ориентированного программирования. Встроенные функции для
работы с различными типами данных упрощают создание программ для
микроконтроллеров.
Рис. 1. Официальный сайт Matlab
Для визуализации данных в MATLAB используются специальные
функции для построения двумерных и трехмерных графиков. Среда позволяет проводить визуальный анализ данных и даже создавать анимированные ролики. Графический интерфейс пользователя содержит множество элементов управления, таких как поля ввода, чекбоксы, кнопки, панели и т.д.

История
8
ИСТОРИЯ
Изначально MATLAB не был языком программирования, а пред-
ставлял собой интерактивный матричный калькулятор. Со временем к простым вычислениям добавились сложные алгоритмы для расчетов FFT
(быстрое преобразование Фурье) и ODE (обыкновенное дифференциальное
уравнение), разнообразные наборы инструментов и средства визуализации.
В 2020 г. в журнале PACMPL (Proceedings of ACM on Programming
Languages) Ассоциацией вычислительной техники была опубликована
статья создателей Matlab математика Клива Моулера (англ. Cleve Moler) и
инженера Джека Литтла (настоящее имя John N. Little) под названием
“A History of MATLAB”.
Математической основой для первой версии MATLAB, по словам
авторов, послужила серия исследовательских работ Дж. Х. Уилкинсона и
его коллег, опубликованных между 1965 и 1970 гг. и позже собранных в
книге “Handbook for Automatic Computation, Volume II, Linear Algebra”.
В этих статьях были представлены алгоритмы решения матричных линейных уравнений и задач на собственные значения, реализованные на
языке ALGOL60.
Язык программирования MATLAB был разработан в конце 1970-х гг.
деканом факультета компьютерных наук Университета Нью-Мексико
Кливом Моулером как замена языку программирования Фортран. Клив
Моулер писал: «Изначально целью разработки была возможность использования программных библиотек для проведения расчетов Linpack и
EISPACK студентами университета»
1
.
Язык относительно быстро распространился среди других универси-
тетов и стал довольно популярным. Matlab наиболее широко используется
среди ученых, работающих в области прикладной математики. Одной из
первых была версия, написанная на Фортране в 1982 г., которую и сегодня
можно найти в Интернете. Эта версия с открытым исходным кодом. Использование Фортрана связано с тем, что инженер Джон Н. (Джек) Литтл
познакомился с ним во время учебы у Клайва Моулера в Стэнфордском
университете в 1983 г. Клив Моулер указывал в своей статье: «многие сту-
1
Статья Клива Моулера. URL: https://dl.acm.org/journal/pacmpl

История
9
денты Стэнфорда изучали такие дисциплины, как теория управления и обработка сигналов, в которых матрицы занимали важное место»
2
.
В результате совместных усилий Джона Литтла, Клева Моулера и
Стива Бангерта (англ. Steve Bangert) MATLAB был перенесен на популярный язык программирования C. По мнения создателей, новый язык
обладал огромным коммерческим потенциалом, поэтому в 1984 г. была
основана компания The MathWorks. Долгое время библиотеки, переписанные на C, выходили под общим названием JACKPAC.
«Изначально MATLAB был предназначен для решения задач в теории управления и обработке сигналов, использовался для проектирования
систем управления», – писал Клив Моулер: «Быстрое развитие и удобство
для начинающих пользователей, а также наличие большого количества
справочных материалов способствовало развитию популярности Matlab в
новых научных и инженерных областях»3. Простота и качество решения
примеров линейной алгебры и иных численных методов способствовало
популяризации Matlab в сфере образования.
2
Статья Клива Моулера. URL: https://dl.acm.org/journal/pacmpl
3
Книги Клива Моулера. URL: https://www.mathworks.com/moler.html

Применение Matlab для решения аналитических задач моделирования
10
РАБОЧИЙ СТОЛ
Главное рабочее окно в MATLAB называется рабочим столом. При
запуске MATLAB рабочий стол отображается в макете по умолчанию.
Чтобы открыть браузер рабочей области, если он в данный момент
не отображается, выполните одно из следующих действий:
• На вкладке Главная (Home) в разделе Среда (Environment)
нажмите Макет (Layout). Затем в разделе Показать выберите Рабочая область (Workspace).
• Вход в рабочее пространство в командном окне.
По умолчанию браузер рабочей области отображает базовую рабо-
чую область. Вы также можете просматривать функциональные рабочие
области в режиме отладки.
Чтобы отобразить дополнительные столбцы, такие как размер и
диапазон значений, в строке заголовка браузера рабочей области, после
нажатия кнопки , нажимают Choose Columns. В MATLAB Online, что-
бы выбрать столбцы для отображения, щелкают правой кнопкой по имени
столбца по браузеру Рабочей области и выбирают или очищают имена
требуемого столбца. Инструментальные окна рабочего стола представлены в табл. 1.
Таблица 1
Инструментальные окна Рабочего стола
Инструменты
Назначение
Command
Window
Командное окно выполняет все функции и команды системы MATLAB
Command
History
История команд допускает просмотр, копирование и выполнение функций, ранее введенных в командном окне
Launch Pad
Окно запуска предоставляет доступ ко всем инструментам
и пакетам в системе MATLAB
Current
Directory
Browser
Просмотр окна текущего каталога делает доступными
просмотр файлов MATLAB и связанных файлов, а также
выполнение файловых операций, таких как поиск и открытие файлов
Help Browser
Окно помощи позволяет совершать поиск и просматривать
документацию по всем функциям и функциям MATLAB
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
