
- •Методические указания к лабораторной работе №1
- •Цель работы
- •Задание для домашней подготовки
- •Задания к лабораторной работе
- •Задание 2
- •Задание 3
- •Задание 4
- •1.1 Частота, круговая частота, период
- •1.2 Нюансы дискретизации. Теорема Котельникова
- •1.3. Периодическое повторение спектра при дискретизации.
- •1.4 Иллюстрация теоремы Котельникова
- •1.5 Дискретное преобразование Фурье
- •2.1. Главное окно matlab
- •2.2. Простейшие присваивания
- •2.3. Построение графиков
2.1. Главное окно matlab
Рис. 6. Окно MATLAB
По умолчанию окно MATLAB (далее – Матлаб) состоит из трех основных полей, которые занимают большую часть экрана: поле, в котором отображаются используемые в данный момент переменные и их значения (поле 1), поле истории команд (поле 2)и поле командной строки (поле 3).
Работа в Матлабе в основном осуществляется в командной строке: вводим команду, нажимаем enter, видим результат.
Начнем с элементарных операций; по ходу дела будем разбираться более подробно.
2.2. Простейшие присваивания
Присваивание переменной может производиться по-разному.
x=10; (7)
Если ввести команду (7), а затем нажать enter, то переменной x присвоится значение 10, после чего поле командной строки перейдет обратно в режим ожидания ввода команды. Так происходит всегда: набор команды, ввод команды клавишей enter, реакция Матлаба, затем можно вводить следующую команду.
Если в конце команды не ставить точку с запятой, то в командной строке отобразится отчет о выполненной операции.
y=0:0.8:2*pi; (8)
В команде (8) переменная y – это вектор (одномерный массив) чисел. 0 и 2*pi – это пределы изменения значений составляющих вектора, 0.8 – шаг изменения. (pi – обозначение константы).
Кроме того, массив можно задать вручную. Следующая команда даст такой же результат, что и (8) (за исключением имени переменной, конечно).
z=[0 0.8 1.6 2.4 3.2 4 4.8 5.6]; (9)
Массивы могут иметь в качестве элементов другие массивы, тогда получим массив большей размерности:
M=[-5 2 3; 5+6j 5.5 0]; (10)
Обратите внимание, что Матлаб оперирует и с комплексными числами.
Вас могло удивить, что для ввода значений во всех случаях (и для одного числа, и для массивов различной размерности) используется оператор =. Это и есть основной принцип работы Матлаба с данными: каждая числовая переменная – это матрица.
В случае (7) – это матрица 1 на 1, (8) и (9) – матрица 1 на 8, в случае (10) – матрица 2 на 3.
Значения введенных переменных всегда можно проверить в поле 1:
Рис. 7. Поле Workspace
2.3. Построение графиков
plot (y, sin(y)); (11)
В данном примере plot строит график по введенному командой (8) вектору y и по sin(y):
Рис. 8. Результат выполнения команды (11)
Первый вектор-аргумент функции откладывается по горизонтальной оси, а второй – по вертикальной. Обратите внимание, что график не выглядит «гладко», и лишь в местах изломов значение по вертикальной оси соответствует sin(y). Между этими точками производится линейная интерполяция. Если мы хотим откладывать только дискретные значения, без линий, нам потребуется необязательный параметр:
plot (y, sin(y), 'x'); (12)
Рис. 9. Результат выполнения команды (12)
Вместо 'x' можно использовать другие символьные параметры:
Рис. 10. Символьные параметры для построения графиков функцией plot
Построим несколько графиков в одной системе координат:
plot (y, cos(y), 'x', [0:0.1:2*pi], cos ([0:0.1:2*pi]), y, sin(y)); (13)
Рис. 11. Результат выполнения команды (13)
Чтобы упростить процесс набора данных в командной строке, рекомендуется использовать комбинации клавиш из таблицы:
Рис. 12. Горячие клавиши Матлаба
Одной из самых полезных команд является «Перелистывание предыдущих команд вверх или вниз для подстановки в строку ввода».
До сих пор при каждом новой команде plot (… …) старое окно с графиком «затиралось» новым. Можно ввести команду hold on, которая позволит строить в одной системе координат несколько графиков, но уже как бы достраивая новые графики поверх и рядом со старыми.
plot(y, cos(y), 'x');
hold on
plot([0:0.1:2*pi], cos ([0:0.1:2*pi])); (14)
plot(y, sin(y));
hold off
grid on
Набор команд (14) дает такой же результат, что и команда (13).
После команды hold off команда plot работает по-прежнему.
Для удобства отображения можно ввести команду grid on после построения графика. Тогда появится координатная сетка.
Рис. 13. Результат выполнения последовательности команд (14)