Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Лабораторная работа № 1. Министерство образования и науки Украины



Министерство образования и науки Украины

Одесская национальная академия связи им. А.С.Попова

________________________________________________________________________________________________________________________

 

Кафедра информационных технологий

 

 

 

Основные принципы работы

В системе Matlab

 

 

Методические указания

К практическим и лабораторным занятиям

По дисциплине

«Программные пакеты проектирования

телекомуникационных систем»

 

Для студентов заочной формы обучения

направления бакалаврской подготовки

Телекоммуникации

 

 

Одесса 2015

 

 

УДК 004.43 План УМИ 2014 г.

 

Рецензент:к.т.н., доцент каф. КИТ ПиВ, Флейта Ю.В.

 

Основные принципы работы в системе Matlab:Методические указания к практическим и лабораторным занятиям по дисциплине «Программные пакеты проектирования телекомуникационных систем» /Л.Н. Буката, И.Г. Швайко. – Одесса:ОНАС им. А.С. Попова, 2014.-с.102.

 

 

Для проектирования телекомукационных ситем используют различные программные пакеты. В данном методическом пособии мы рассмотрим один из таких программных пакетов – пакет Matlab.

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

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

 

 

ОДОБРЕНО

на заседании кафедры

информационных технологий

и рекомендовано к печати.

Протокол № 2

от 05.10.2014 г.

 

ЗАТВЕРДЖЕНО

методическим советом

академии связи.

Протокол № 10/14

от 04. 07.2014р.

 


ПРЕДИСЛОВИЕ

Matlab – это высокопроизводительный язык для технических расчетов.

Типичное использование MATLAB - это:

− математические вычисления;

− создание алгоритмов;

− моделирование;

− анализ данных, исследования и визуализация;

− научная и инженерная графика;

− разработка приложений, включая создание графического интерфейса.

 

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

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

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

 

 

Рабочая среда MatLab

Чтобы запустить программу дважды щелкните на иконку . Перед Вами откроется рабочая среда, изображенная на рис. 1.1.

Интерфейс MatLab многооконный и имеет несколько средств прямого доступа к различным компонентам системы. Следует обратить внимание на следующие кнопки панели инструментов:

New M-file − выводит пустое окно редактора m-файлов;

Open file − открывает окно для загрузки файлов Matlab;

Simulink − открывает окно браузера библиотек Simulink;

Help− открывает окно справки.

Эти функции дублируются в очень простом меню системы MatLab.

В левой части окна системы появились окна со вкладками Launch Pad/Workspace доступа к компонентам системы и вкладками текущей директории Current Directory и истории сессии History. Они обеспечивают оперативный контроль за состоянием системы. Окна интерфейса MatLab могут быть включены или отключены из пункта меню View.

Вся работа организуется через командное окно (Command Window), которое появляется при запуске программы. В процессе работы данные располагаются в памяти (Workspace) в виде матриц.

 

Рисунок 1.1 – Окно рабочей среды MatLab

 

Если в рабочей среде MatLab отсутствуют некоторые окна, приведенные на рисунке, то следует в меню View выбрать соответствующие пункты: Command Window, Command History, Current Directory, Workspase, Launch Pad.

Команды следует набирать в командном окне. Символ « >> », обозначающий приглашение к вводу командной строки, набирать не нужно. Для просмотра рабочей области используют полосы прокрутки или клавиши Home, End для перемещения влево или вправо и PageUp, PageDown для перемещения вверх или вниз. Если пропала командная строка с мигающим курсором, просто нажмите Enter. Чтобы программа MatLab выполнила команду или вычислила выражение важно помнить, что набор любой команды или выражения должен заканчиваться нажатием на Enter.

Простейшие вычисления

Наберите в командной строке 1+2 и нажмите Enter. В результате в командном окне MatLab отражается следующее:

Рисунок 1.2 – Демонстрация выполнения команды присваивания

 

Программа MatLab сначала вычислила сумму 1+2, затем записала результат в специальную переменную ans и вывела ее значение, равное 3, в командное окно. Ниже ответа расположена командная строка с мигающим курсором, обозначающая, что MatLab готов к дальнейшим вычислениям и можно набирать новые выражения и находить их значения. Если требуется продолжить работу с предыдущим выражением, например, вычислить (1+2)/4.5, то проще всего воспользоваться уже имеющимся результатом, который хранится в переменной ans. Наберите ans/4.5 (при вводе десятичных дробей используется точка) и нажмите Enter, получается

 

Рисунок 1.3 – Графическое представление метода главных компонент

Рассмотрим пример с заданными значениями:

 

>> a=-1.3; b=0.91; c=0.75; x=2.32; k=7;

>> y=sin((a–x)/c))+1e4*((a–k*x^2)/(2*b))^1/3)+…

cos(k+x^2)/tan(3) – (b*c)/(a*x)

>> y=-1.45e+4–2.51e4i

 

После окончания сеанса работы с системой MatLab все ранее вычисленные переменные теряются. Чтобы сохранить в файле на диске компьютера содержимое рабочего пространства системы MatLab, нужно выполнить команду меню File \Save Workspace As … . По умолчанию расширение имени файла mat, поэтому такие файлы принято называть МАТ-файлами. Теперь можно закрыть MatLab. В следующем сеансе работы для восстановления значений переменных следует открыть этот сохраненный файл при помощи подпункта Open меню File. Теперь все переменные, определенные в прошлом сеансе, опять стали доступными. Их можно использовать во вновь вводимых командах.

Имена переменных должны начинаться с буквы. Знак « = » соответствует операции присваивания. Нажатие клавиши Enter заставляет систему вычислить выражение и показать результат. Если запись оператора не заканчивается символом «;», то результат выводится в командное окно, в противном случае – не выводится. Если оператор не содержит знака присваивания « = », то значение результата присваивается системной переменной ans (см. рис. 1.2).

Информация об использованных переменных в течение текущего сеанса работы представлена в окне Workspace в следующих полях:

− Name – имя переменной;

− Value – значение переменной;

− Size – размерность массива;

− Bytes – объем занимаемой памяти;

− Class – тип переменной (по умолчанию все числовые переменные представляются с двойной точностью - double array).

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

В арифметических выражениях применяются следующие знаки операций:

+, - – сложение, вычитание;

*– умножение;

/ – деление слева направо;

\ – деление справа налево;

^ – возведение в степень.

Система MatLab работает как с действительными, так и с комплексными числами. Перед использованием операций с комплексными числами необходимо определить переменную i = sqrt(–1) или j = sqrt(–1).

При делении нуля на ноль получается NaN (не число). При вычислении, например, MatLab переходит в область комплексных чисел:

 

>> sqrt(-3.0)

ans = 0 + 1.7321i

При наборе комплексных чисел в командной строке можно использовать i либо j, а сами числа при умножении, делении и возведении в степень необходимо заключать в скобки:

>> (2.1 + 3.2i)*2 + (4.2 + 1.7i)^2

ans = 18.9500 + 20.6800i

иначе умножаться и возводиться в степень будет только мнимая часть.

Для вычисления комплексно-сопряженного числа применяется апостроф, который следует набирать сразу за числом без пробела:

>> 2 – 3i'

ans = 2.0000 + 3.0000i

Для вычисления комплексно-сопряженного выражения его необходимо заключить в круглые скобки:

>> ((3.2 + 1.5i)*2 + 4.2 + 7.9i)'

ans = 10.6000 – 10.9000i

MatLab позволяет использовать комплексные числа в качестве аргументов встроенных элементарных функций:

>> sin(2 + 3i)

ans =

9.1545 – 4.1689i

Система MatLab также позволяет вычислять различные математические функции, информацию о встроенных элементарных функциях можно получить соответственно по командам:

>> help elfun и >> help specfun

Элементарные алгебраические функции (табл. 1) имеют в качестве аргумента одно или два действительных (x, y), или одно комплексное (z) число.

 

Таблица 1 − Элементарные алгебраические функции

Функция Описание
abs(z), abs(x), Вычисление модуля комплексного числа z или абсолютного значения действительного числа x
angle(z) Вычисление аргумента z
sqrt(z),sqrt(x) Вычисление квадратного корня чисел z и x
real(z) Вычисление действительной части комплексного числа z
imag(z) Вычисление мнимой части комплексного числа z
round(x) Округление до целого
fix(x) Округление до ближайшего целого в сторону нуля
rem(x, y) Вычисление остатка от деления x на y
exp(z) Вычисление е в степени x.( экспоненциальная функция)
log(z) Вычисление натурального логарифма числа x
log10(z) Вычисление десятичного логарифма числа x

Система MatLab предоставляет возможности для вычисления тригонометрических функций переменной x(см. табл. 2).

Таблица 2 − Тригонометрические функции

Функция Описание
sin(x) Вычисление синуса
cos(x) Вычисление косинуса
tan(x) Вычисление тангенса
asin(x) Вычисление арксинуса
acos(x) Вычисление арккосинуса
atan(x) Вычисление арктангенса
atan2(y, x) Вычисление арктангенса по координатам точки

 

Для вычисления математического выражения следует набрать его в соответствии с правилами MatLab. Например, необходимо вычислить значение выражения

В командной строке это выражение выглядит следующим образом:

 

>> exp(-2.5) * log(11.3) ^ 0.3 - sqrt((sin(2.45 * pi) + ...

cos(3.78 * pi)) / tan(3.3))

 

При записи длинного выражения для переноса части его на другую строчку используется троеточие (после предварительного пробела). По нажатию клавиши Enter ответ выводится в командное окно:

ans = -3.2105

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

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

Поскольку MatLab запоминает все вводимые команды, то их можно повторно занести в командную строку без набора, а с использованием служебных клавиш , .

Все расчеты в MatLab выполняются с двойной точностью, а для представления чисел на экране имеются разные форматы. Нужный формат вывода устанавливается в опциях диалогового окна Preferences, вызываемого через меню Files/Preferences либо при помощи команды format. Например, для установки длинного с плавающей точкой формата выводов результатов вычислений следует в командной строке ввести команду format long e:

>> format long e

>> 1.25/3.11

ans = 4.019292604501608e-001

Получить информацию о форматах можно с помощью команды:

>> help format.

Существуют следующие способы представления чисел (табл. 3).

Таблица 3 − Форматы вывода на экран

Формат Представление
short Число отображается с 4-мя цифрами после десятичной точки или в формате short e
short e Число в экспоненциальной форме с мантиссой из 5-ти цифр и показателем из 3-х цифр
rat Представление в виде рационального дробного числа
long Число с 16 – десятичными цифрами
long e Число в экспоненциальной форме с мантиссой из 16-ти цифр и показателем из 3-х цифр
hex Число в шестнадцатиричной форме

 

Переменные в MatLab не нужно предварительно описывать, указывая их тип. Все данные хранятся в виде массивов: числовые переменные (внутренний тип numeriс), текстовые строки (char), ячейки (сеll) и структуры (struct).

Двумерный массив – это матрица, одномерный – вектор, а скаляр – матрица размера 1x1.

Имя переменной должно начинаться с буквы, за ней могут идти буквы, цифры и символ подчеркивания. Допустимы имена любой длины, но MatLab идентифицирует их по первым 31 символам и различает большие и малые буквы.

В MatLab имеется ряд констант (табл. 4).

 

Таблица 4 – Зарезервированные имена констант

Имя Описание
ans Результат последней операции
i, j Мнимая единица
pi Число p
eps Машинная точность
realmax Максимальное вещественное число
realmin Минимальное вещественное число
inf Бесконечность
NaN Нечисловая переменная
end Наибольшее значение индекса размерности массива

 

Отметим, что имя NaN (Not-a-Number) зарезервировано для результата операций 0/0, 0*inf, inf-inf и т.п.

В табл.5 дано назначение специальных символов.

 

Таблица 5 − Специальные символы

Символ Назначение
% Знак процента означает начало комментария
  Пробел служит для разделения элементов матриц
, Запятая применяется для разделения элементов матриц и оператора в строке ввода
; Точка с запятой отделяет строки матриц, а точка с запятой в конце оператора (команды) отменяет вывод результата на экран
: Двоеточие используется для указания диапазона (интервала изменения величины) и в качестве знака групповой операции над элементами матриц
() Круглые скобки применяются для задания порядка выполнения математических операций, а также для указания аргументов функций и индексов матриц
. Точка отделяет дробную часть числа от целой его части, а также применяется в составе комбинированных знаков (.*, .^, ./, .\)
Три точки и более в конце строки отмечают продолжение выражения на следующей строчке
[] Квадратные скобки используются при задании матриц и векторов
Апостроф указывает на символьные строки, а для включения самого апострофа в символьную строку нужно поставить два апострофа подряд

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

Для освобождения из памяти всех переменных используется команда clear без аргументов.

Для удаления из памяти определенного перечня переменных необходимо указать их в аргументах данной функции. Например:

>>clear a1 a3

>> who

Your variables are:

a2

Узнать о факте занятости переменной можно функцией exist, указав имя переменной в апострофах во входном аргументе:

>> exist('d7')

ans =

Если ответ – (0) – ноль, то имя этой переменной не конфликтует с зарезервированными словами MatLab. Если возвращаемое значение равно единице - такая переменная уже определена в рабочей среде.

В MatLab имеется возможность записывать исполняемые команды и результаты в текстовый файл (вести журнал работы), который потом можно прочитать или распечатать из текстового редактора. Для начала ведения журнала служит команда diary. В качестве аргумента командыdiary следует задать имя файла, в котором будет храниться журнал работы. Набираемые далее команды и результаты их исполнения будут записываться в этот файл, например последовательность команд (рис. 1.4) производит

 

 

Рисунок 1.4 – Ведение журнала с помощью команды diary

 

следующие действия:

 

1. открывает журнал в файле exampl-1.txt;

2. производит вычисления;

3. сохраняет все переменные в MAT файле work-1.mat;

4. сохраняет журнал в файле exampl-1.txt в подкаталоге work корневого каталога MatLab и закрывает MatLab.

 

Если посмотреть содержимое файла exampl-1.txt в каком-нибудь текстовом редакторе, то в файле окажется следующий текст:

 

a1=3; a2=2.5; a3=a1+a2 a3 = 5.5000 save work-1 quit

Лабораторная работа № 1

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.