Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Применение MATLAB для решения аналитических задач моделирования. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
☆
Рабочий стол
11
Окончание табл. 1
Инструменты
Назначение
Workspace Browser
Средство просмотра рабочей области дает возможность просматривать и изменять содержимое рабочей области
MATLAB
Array Editor
Редактор массивов данных помогает просматривать со­держимое массивов данных, оформленных в виде табли­цы, и редактировать табличные данные
Editor/Debugger
Редактор/Отладчик используется для создания и измене­ния файлов, содержащих функции MATLAB (m-файлов)
В базовой рабочей области хранятся переменные, которые были со­зданы в командной строке. Сюда входят любые переменные, создаваемые скриптами, при условии, что скрипт запускается из командной строки или из редактора.
Функции не задействуют базовое рабочее пространство. Каждая функция имеет собственное рабочее пространство. Каждая рабочая об­ласть функции отделена от базовой рабочей области и всех других рабо­чих областей для защиты целостности данных. Даже локальные функции в общем файле имеют свои рабочие пространства. Переменные, характер­ные для рабочей области функции, называются локальными переменны­ми. Обычно локальные переменные не остаются в памяти от одного вызо­ва функции к другому.
При вызове скрипта из функции используется рабочее простран­ство этой функции. Вложенные функции, как и функции локальные, име­ют собственные рабочие пространства. Все переменные во вложенных функциях или функциях, которые их содержат, должны быть явно опре­делены. Таким образом, нельзя вызвать функцию или сценарий, которые присваивают значения переменным, если эти переменные уже очищены из рабочей области функции.
Рабочий стол содержит следующие панели, некоторые из которых не отображаются при первом запуске: поле со списком, панели инстру­ментов, строки заголовка, строки главного меню.
Для удобства начинающих пользователей и помощи пользовате­лям, продвинутым в сфере математических вычислений, существует раз­дел Справка. Справочную информацию можно получить различными спо­собами. Например, с помощью команды helpwin можно вызвать на экран
Применение Matlab для решения аналитических задач моделирования
12
систему помощи. Так же работает щелчок лкм и выбор опции Help из ме­ню Help и команда help, введенная в командой строке. Информацию о конкретном разделе можно получить, вызвав команду helpwin <section>.
Команда >> help позволяет вывести файлы с определением и при-
мерами реализации операторов, функций, матриц и других объектов, до­ступных в запущенной версии MATLAB (m-файлы) (рис. 2).
Рис. 2. Результат вызова команды help
Для вывода информации о конкретном объекте к командам help
или doc добавляется имя интересующего объекта. Далее на рис. 3 приве­ден пример для функции вычисления даты и времени.
Рис. 3. Результат вызова справки для функции datetime
На экран выводится справочная информация, которая включает
описание функции, свойства, описание методов и функций с кратким опи­санием и соответствующими ссылками на подробный синтаксис, а также примеры с комментариями. В конце справки приведены смежные главы
Рабочий стол
13
Документация по datetime, другие функции с именем datetime, папки с таким именем.
В разделе Примеры (Examples) приведены необходимые сведения о работе с матрицами, графиками, тригонометрическими рядами и т.д. (рис. 4). Все вкладки с примерами можно открыть через браузер, а также запустить в среде Matlab. Причем доступны два варианта: рассмотреть их в Matlab онлайн или установить/запустить десктопную версию программы.
Рис. 4. Опции для запуска примера из библиотеки
Примеры хранятся в файлах с расширением .mlx и содержат сцена­рии для проведения математических вычислений. Сценарий хранится в формате Live Script, который содержит код MATLAB, уравнения, графики и специальным образом отформатированный текст, а также допускает встроенный вывод. Содержимое файлов .mlx, перечисленное выше, мож­но комбинировать для достижения нужного результата (рис. 5).
Рис. 5. Открытие сценария Basic Matrix Operations
В отличие от файлов старого образца с расширением .m, современ­ные файлы .mlx можно просматривать и редактировать в режиме реально­го времени. При необходимости можно сохранить файл .mlx в формате .m. Для этого нужно выбрать опцию Сохранить → Сохранить как на вкладке «Живой редактор» →Файл, выбрать «MATLAB Code files (* .m)» и «Сохранить как тип».
Для начала работы нужно в верхней строке меню последователь­но выбрать Панель управления Matlab и вкладку View. После нужно сделать активными Command Window, Command History, Current Folder
Применение Matlab для решения аналитических задач моделирования
14
и Workspace. При необходимости можно активировать отображение за­головков окон Titles.
В процессе работы со средой MATLAB в командной строке вводят­ся команды для создания и определения значений переменных и вызова функции. Чтобы создать переменную и присвоить ей числовое значение, введите допустимое имя и оператор “ = ” в командной строке:
>>X = 10.
X = 10.
Программа вычисляет значение введенного выражения, записывает результат в переменную X и выводит ее значение. MATLAB добавляет пе­ременную X к рабочей области и отображает результат в Командном окне.
После нажатия клавиши ENTER и в десктопной версии, и в Matlab онлайн происходит выполнение команды и вывод результата на экран. Эта особенность называется эхом команд. Для того чтобы ее отключить, в конце команд ставится “ ; ”.
Значения переменных хранятся в Рабочей области (Workspace) во время текущего сеанса работы (рис. 6). После перезапуска программы содержимое Рабочей области очищается. Для того чтобы сохранить зна­чения переменных из нее, в меню File нужно выбрать пункт Save Workspase As (Сохранить Рабочую область как), указать в диалоговом режиме (Save Workspase Variables) нужный каталог и задать имя файла.
Рис. 6. Содержимое Workspace после ввода переменной Х
Исполняемые команды и результаты можно сохранить в журнале работы с помощью ввода команды diary в командной строке. В качестве аргумента команды diary указывается имя файла, хранящегося в подката­логе work корневого каталога MatLab, в котором будет храниться журнал работы. Команды, введенные после diary, вместе с результатами их вы­полнения сохраняются в выбранном файле. Команда computer позволяет вывести на экран информацию о компьютере, на котором в данный мо­мент времени запускается система MATLAB.
Рабочий стол
15
Лабораторная работа № 1.
Основы работы в Matlab. Установка и настройка среды
Авторизуйтесь на сайте www.mathworks.com и установите
лицензионную версию программы. Изучите интерфейс и возможности Рабочего стола. Ознакомьтесь со справочным разделом (Просмотр Помо­щи): основные разделы, язык описания, наличие дополнительных матери­алов в виде ссылок. Найдите информацию о возможностях наборов ин­струментов в соответствии с вариантом (табл. 2).
Таблица 2
Варианты задания для лабораторной работы №1
№ варианта
Набор
1
Neural Network Toolbox
2
Mapping Toolbox
3
Financial Toolbox
4
Control Systems Toolbox
5
MATLAB Compiler
6
Filter Design Toolbox
7
Image Acquisition Toolbox
8
Database Toolbox
9
Communication Toolbox
10
Symbolic Math Toolbox
Применение Matlab для решения аналитических задач моделирования
16
РАБОЧАЯ ОБЛАСТЬ. ПЕРЕМЕННЫЕ
Рабочее пространство MATLAB® состоит из переменных, которые создаются и сохраняются в памяти во время всего сеанса работы с систе­мой MATLAB. Вы можете создать новые переменные в рабочей области, запустив код MATLAB или используя существующие переменные.
Переменные разделяют на локальные и глобальные.
Для создания новой переменной необходимо ввести в Командном окне ее имя, знак " = " и нужное значение переменной (табл. 3).
Таблица 3
Пример создания нескольких переменных
Команда
Результат
b = 2
b = 2
c = a + b
c = 3
d = cos(a)
d = 0.5403
Когда вы не задаете выходную переменную, MATLAB использует переменную ans, сокращенно от answer, чтобы сохранить результаты ва­шего вычисления (табл. 4).
Таблица 4
Синтаксис команды Ans
Команда
Результат
sin(a)
ans = 0.8415
Вам не нужно объявлять переменные перед присвоением им значе­ний. MATLAB не нужно отдельно объявлять операторы типа или измере­ния. Каждый раз, когда MATLAB встречает новое имя переменной, он создает переменную с тем же именем и выделяет память для ее хранения.
Если переменная уже определена, то MATLAB производит замену значений и в случае изменения объема необходимой для хранения памяти, выделяет новое место для хранения переменной.
Команда whos позволяет посмотреть уже созданные переменные, а также их тип и размер.
Рабочая область. Переменные
17
Если вы не заканчиваете оператор присваивания точкой с запя-
той ";", MATLAB отобразит результат выполнения команды в командном окне. Пример приведен в табл. 5.
Таблица 5
Синтаксис оператора присваивания
Команда
Результат
x = 5.71
x = 5.7100
Если вы завершаете выражение точкой с запятой, MATLAB вы-
полняет расчет, но подавляет отображение вывода (эхо команд) в Ко­мандном окне.
e = a*b;
При задании переменных в Matlab существуют правила определе­ния их имен, например, в именах переменных можно использовать только латинские буквы, цифры и символ нижнего подчеркивания " _ ".
Имена переменных в Matlab могут быть заданы почти любым со­четанием английских букв и цифр (без пробелов). Нельзя чтобы имена переменных совпадали со словами, которые являются какими-либо ко­мандами самого языка программирования. Нельзя начинать имена пере- менных с цифры или специального символа. Первым символом в имени переменной обязательно идет буква латинского алфавита. Среда чувстви­тельна к регистру. Так, например, имена
abc = 0; Abc = 1; ABC = 2;
представляют три несвязанные между собой переменные, которые при­нимают значения 0,1,2 соответственно.
Для просмотра и редактирования переменных используйте обозре­ватель рабочей области и редактор переменных. Некоторые параметры редактирования недоступны в MATLAB Online. Типы данных приведены в табл. 6.
В некоторых случаях требуется преобразовать типы данных для пе­ременных. Команда cast(A,newclass) преобразует A в тип данных (класс) newclass, где newclass – это имя встроенного типа данных, совместимого
Применение Matlab для решения аналитических задач моделирования
18
с A. Функция приведения усекает любые значения в A, выходящие за пре­делы диапазона newclass до ближайшей конечной точки. При преобразова­нии числа с плавающей запятой в целое число функция приведения округ­ляет число до ближайшего целого числа. Если дробная часть числа с пла­вающей запятой равна ровно 0,5, то оно округляется от нуля до целого чис­ла с большей величиной.
Таблица 6
Типы данных в Matlab
Тип
Назначение
char
Массив символов
complex
Сложные данные. Функция приведения принимает дей­ствительные и мнимые компоненты
double
Двойная точность с плавающей запятой
int8, int16, int32, int64
Целое число со знаком logical
Логическое значение true или false
single
Одинарная точность с плавающей запятой
struct
Структура
uint8, uint16, uint32, uint64
Беззнаковое целое Fixed-point
Типы данных с фиксированной точкой
Возможно преобразовать переменную A в тот же тип данных, что и
переменная B. Для этого вводится команда cast(A,'like',B). Если A и B яв­ляются вещественными, то результат преобразования также будет веще­ственным. В противном случае результат является комплексным.
Функции для преобразования типов данных приведены в табл. 7.
Таблица 7
Преобразование типов данных в Matlab
Функция
Назначение
cast
Используется для преобразования переменных в другой тип данных
dec2bin
Используется для перевода целого десятичного числа в двоичный вид
typecast
Используется для смены типов данных без изменения ба­зовых данных
Рабочая область. Переменные
19
Окончание табл. 7
Функция
Назначение
int2str
Используется для преобразования целых чисел в символы
num2str
Преобразует числа в символьный массив
str2double
Используется для преобразования строковых переменных в значения двойной точности
str2num
Преобразует символьный массив в массив числовой, работа­ет и для строк
native2unicode
Преобразует числовые байты в кодировку Unicode
unicode2native
Преобразует символы кодировки Unicode в числовые байты
Рабочая область Matlab последней версии на момент написания учебного пособия представлена на рис. 7.
Рис. 7. Рабочее окно Matlab
Команды вводятся в командной строке после знака " >> " и активи­руются нажатием клавиши Enter.
Например, чтобы получить результат умножения чисел 2 и 2, нуж­но ввести 2*2 и Enter.
Если при записи команды не задана переменная для хранения ре­зультата, результат записывается в ans по умолчанию.
В противном случае следует указать имя переменной, например:
>>m = 2*2.
Применение Matlab для решения аналитических задач моделирования
20
В данном случае знак " = " является оператором присваивания. Он
присваивает переменной слева значение выражения справа. Например, если записать после введенной ранее команды новую команду m = m + 1, то переменная m примет значение 5.
Столбец справа хранит информацию обо всех переменных, создан-
ных и измененных в процессе работы. На рис. 8 представлен вид Рабочего пространства (также Рабочая область).
Рис. 8. Рабочее пространство Matlab
Как уже было сказано ранее, если после команды поставить знак " ; ",
то результат выполнения не будет выведен на экран. Тем не менее, команда выполнится, но в фоновом режиме. Изменение значения переменной будет отражено в соответствующем столбце справа.
Вернуться к предыдущим командам можно путем нажатия клави-
ши Up. Для данного действия окно команд должно быть активно.
Для вывода текущего значения переменной на экран достаточно
написать имя переменной в окне команд и нажать Enter.
Имена переменных в Matlab всегда должны начинаться с буквы и
могут состоять из букв, цифр и знаков подчеркивания. В случае некор­ректного ввода переменной, программа предложит варианты исправления ошибки (рис. 9).
Рис. 9. Пример ошибки в среде Matlab
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]