МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
УНИВЕРСИТЕТ
ФАКУЛЬТЕТ АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ
Кафедра Систем Сбора и Обработки Данных
Теория и обработка сигналов
MATLAB В ТОС
Доц. Ю. И. Щетинин
Новосибирск
2009
Введение
Что такое MATLAB?
Система MATLAB (сокращение от MATrix LABoratory – матричная лаборатория) фирмы MathWorks Inc. - интерактивная программа для инженерных и научных расчетов, ориентированная на работу с массивами (векторами и матрицами) данных. Система поддерживает:
§ вычисления с матрицами,
· комплексную арифметику,
· вычисления с полиномами,
· решение нелинейных уравнений,
· решение дифференциальных и разностных уравнений,
· задачи оптимизации,
· задачи цифровой обработки сигналов,
· приложения теории автоматического управления,
· построение графиков в декартовой и полярной системах координат,
· построение трехмерных графиков и линий уровня,
· возможность обращения к программам на языках C, C++, Fortran,
· высокоуровневые функции и другие возможности решения математических задач, не прибегая к рутинному программированию.
MATLAB имеет расширения в виде нескольких десятков дополнительных программных пакетов для вычислений и обработки данных в самых различных областях. Среди этих пакетов - расширений MATLAB можно отметить следующие:
ü Simulink – пакет моделирования динамических систем,
ü Signal Processing Toolbox – пакет для анализа, моделирования и проектирования устройств обработки сигналов,
ü Control System Toolbox – пакет для моделирования, анализа и проектирования систем автоматического управления,
ü Symbolic Math Toolbox – пакет программ для решения задач в символьном (аналитическом) виде,
ü Statistics Toolbox – пакет прикладных программ по статистике и др.
В курсе «Теория и обработка сигналов» используется пакет «Signal Processing Toolbox».
Система Matlab является средой для математических вычислений (преобразований) и в то же время предоставляет пользователю собственный язык программирования. На языке Matlab можно написать необходимые пользователям функции и программы (сценарии) в виде M – файлов с расширением .m.
В Matlab любые (подчас весьма сложные) вычисления можно выполнять в режиме прямых вычислений, то есть без подготовки программы. В этом режиме Matlab используется как мощный калькулятор, который способен производить не только обычные для калькуляторов вычисления, но и операции с векторами и матрицами, комплексными числами, рядами и полиномами. Можно также задавать и выводить графики различных функций — от простой синусоиды до сложной трехмерной фигуры.
После загрузки программы на экран выводится командное окно среды Matlab. Работа в режиме прямых вычислений имеет диалоговый характер. При этом вводятся команды и отображаются результаты их выполнения. Ввод и редактирование команды Matlab заканчивается нажатием клавиши «Enter» («Return»). Если для вводимого выражения не хватает одной строки, то часть выражения можно перенести на новую строку с помощью многоточия «…» - 3 или более точек.
Все команды Matlab должны вводиться в нижнем регистре символов.
Например, команда
» sqrt(43.7)
ans =
6.6106e+000
вычисляет квадратный корень из 43,7 и присваивает результат переменной ans.
Остановить процесс вычислений или вывода на экран в MATLAB при необходимости можно командой CTRL+BREAK.
Клавиши управления перемещением курсора «вверх» (key up) и «вниз» (key down) позволяют вывести предыдущие команды командной строки в соответствующем порядке.
Выход из Matlab осуществляется с помощью команды
>> quit
Символ (команда) ‘ %’ обозначает комментарий MATLAB.
Команда
>> ; % ( точка
с запятой) подавляет вывод результатов на экран. Если % опустить эту команду,
то на экране после выполнения команды % может наблюдаться поток вывода из
большого количества
% данных.
Сеанс работы с Matlab называется сессией (session). Используемые в сессии переменные и функции можно сохранить на диске в файлах типа .mat с помощью команды save, а позже загрузить, используя команду load (загрузить).
Данное пособие предназначено для студентов, изучающих курс «Теория и обработка сигналов». В нем в краткой форме изложены основы работы в Matlab, необходимые при выполнении лабораторного практикума по курсу.
Изучение материала этого пособия предполагает выполнение (повторение) упражнений в среде Matlab.
Простые вычисления
Matlab имеет следующие базовые математические операции:
- Сложение (a+b, 15+23),
- Вычитание (a-b, 17-3),
- Умножение (a*b, 0.18*6.12),
- Деление (a/b, 92.4/15),
- Возведение в степень (a^b, 7.4^4),
- Транспонирование матрицы (M’).
Пакет также поддерживает математические функции общего назначения, такие как извлечение квадратного корня sqrt(x), вычисление синуса sin(x) и др. Их перечень можно получить, введя в командную строку helpelfun.
Matlab вычисляет выражение слева направо в обычном порядке приоритета операции возведения в степень над операциями умножения и деления, и последних, – над операциями сложения и вычитания.
Пример.
>> 7*3^2+15/3-2
ans =
66
Результат вычисления присваивается переменной ans, если он
ранее не присвоен другой переменной, например,
» x=7*3^2+15/3-2
x =
66
Переменные Matlab
Имена переменных должны начинаться с буквы, максимальная длина
имени - 31 символ. Имена не должны совпадать с именами функций и процедур и системных
переменных. Имена чувствительны к регистру.
Операция присваивания
<имя переменной> = <выражение>; %
Здесь команда “;” подавляет эхо-вывод результатов вычисления (присваивания) на экран.
Примеры
Действительные скаляры (числа)
>> x =2
x = 2
Комплексные скаляры
>> x = 5+10j
x =
5.0000 +10.0000i
Вектор – строка (1 x 3)
>> x = [1 2 3]
x =
1 2 3
Вектор - столбец (3 x 1)
>> x = [1; 2 ; 3];
>> x
x =
1
2
3
Предопределенные системные переменные Matlab
>> ans имя переменной по умолчанию для результата вычислений.
>> ; подавляет вывод результатов на экран.
>> eps переменная машинной точности вычислений, имеет порядок 10-16.
>> exit завершение (окончание) работы Matlab.
>> i или j мнимая единица, т.е. .
>> pi число π.
>> Inf обозначение бесконечности.
>> NaN не числовой результат, т.е. 0/0.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.