- •Введение
- •Командное окно
- •Редактирование командной строки.
- •Длинные командные строки.
- •Вывод на печать командного окна.
- •Запуск внешних программ.
- •!Notepad
- •Команда format.
- •Выражения
- •Переменные.
- •Inf бесконечность
- •Операторы.
- •Функции.
- •Текстовые комментарии и символьные константы.
- •Операции с рабочей областью
- •Операции с файлами
- •Дневник командного окна
- •Операции с векторами и матрицами
- •Оператор «двоеточие».
- •Векторные индексы.
- •Удаление строк и столбцов.
- •Объединение матриц.
- •Транспонирование матриц.
- •Создание матриц с заданными свойствами.
- •Создание вектора равноотстоящих точек.
- •Создание вектора равноотстоящих точек в логарифмическом масштабе.
- •Разреженные матрицы.
- •Графика
- •Команда plot.
- •Графические объекты.
- •Окна изображений.
- •Добавление кривых на существующий график.
- •Управление осями.
- •Разбиение графического окна.
- •Подписи к осям и заголовки.
- •Графики в полярной системе координат.
- •Контурные графики и графики полей градиентов.
- •Создание массивов данных для трехмерной графики.
- •Построение графиков трехмерных поверхностей.
- •Программирование в системе matlab.
- •Основные типы данных.
- •Арифметические операторы и массивы.
- •Операторы отношения.
- •Логические операторы и функции.
- •Приоритет выполнения операторов.
- •Структура файлов сценариев.
- •Структура m-файлов функций.
- •Использование подфункций.
- •Операторная функция.
- •Передача данных через глобальные переменные.
- •Параметры функционального типа.
- •Функции с переменным числом аргументов.
- •Управление потоками.
- •If expression1
- •Диалоговый ввод.
- •Численные методы и обработка данных
- •Решение систем линейных алгебраических уравнений.
- •Решение систем линейных уравнений итерационными методами.
- •Обратная матрица и определитель.
- •Факторизация Холецкого.
- •Lu факторизация.
- •Qr факторизация.
- •Матричная экспонента.
- •Собственные значения и собственные вектора.
- •Нормальная форма Жордана.
- •Разложение Шура.
- •Сингулярное разложение.
- •Численное интегрирование.
- •Представление полиномов в среде matlab.
- •Умножение и деление многочленов.
- •Вычисление производной от многочлена.
- •Решение систем нелинейных уравнений.
- •Преобразование Фурье.
- •Xlabel('time (seconds)')
- •Решение обыкновенных дифференциальных уравнений.
- •Численное решение дифференциальных уравнений в частных производных.
- •Литература
Дневник командного окна
Просмотреть выполненные ранее команды текущей сессии, а также предшествующих сессий можно с помощью дневника командного окна (Command History). Дневник каждой сессии начинается с даты и времени. Используя полосы прокрутки и клавиши перемещения можно просмотреть весь дневник. По мере необходимости записи из дневника можно удалять. Для этого следует вызвать контекстное меню и выполнить одну из команд:
Delete Selection – удаление выделенной строки;
Delete to Selection – удаление всех строк перед выделенной;
Delete Entire History – полная очистка дневника.
Для очистки дневника можно также выполнить команду Clear Command History из меню Edit. Сделав двойной щелчок на записи дневника можно выполнить соответствующую команду. Например, двойной щелчок на записи edit myfile откроет файл myfile.m в режиме редактора. Строчки из дневника можно копировать и переносить в командное окно с помощью команд Copy и Past контекстного меню. Окно дневника выводится и убирается командой Command History из меню View.
Операции с векторами и матрицами
Матрицы представляют собой самые распространенные объекты системы MATLAB, которая специально предназначена для проведения сложных вычислений с векторами, матрицами и массивами. Особое значение придается матрицам 1x1, которые являются скалярами, и матрицам, имеющим один столбец или одну строку, – векторам.
Рассмотрим способы построения матриц. В следующих примерах вектор–столбец является матрицей размером 3x1, вектор–строка является матрицей размером 1x3, а скаляр матрицей 1x1:
u = [3; 1; 4]
u =
3
1
4
v = [2 0 -1]
v =
2 0 -1
s = 7
s =
7
Задание матрицы требует указания нескольких строк. Каждая строка оканчивается точкой с запятой. Так, ввод
M = [1 2 3; 4 5 6; 7 8 9];
задает квадратную матрицу, которую можно вывести, набрав в командной строке M и нажав клавишу Enter:
M=
1 2 3
4 5 6
7 8 9
В качестве элементов матриц можно использовать арифметические выражения, например:
V = [2+3*5 exp(2) sqrt(2)]
V =
17.0000 7.3891 1.4142
Для указания отдельного элемента матрицы используются индексы. Элемент в строке I и столбце J матрицы A обозначается A(I, J). Если элементу A(2, 3) надо присвоить значение 10, следует ввести команду:
A(2, 3)=10;
Выражение M(I) с одним индексом дает доступ к элементам матрицы развернутым в один столбец. В этом случае массив рассматривается как длинный вектор, сформированный из столбцов исходной матрицы. Так, для рассмотренного ранее примера с матрицей M, M(4)– это другой способ ссылаться на значение 2, хранящееся в M(1, 2).
Если попытаться использовать значение элемента вне матрицы, MATLAB выдаст ошибку:
M(4, 2)
??? Index exceeds matrix dimensions.
Однако, если элементу матрицы с индексами, превышающими ее размерность, присвоить некоторое значение, размерность матрицы увеличится, например:
M(2, 5)= 1
M =
1 2 3 0 0
4 5 6 0 1
7 8 9 0 0
Оператор «двоеточие».
Двоеточие – это один из наиболее важных операторов MATLAB. Он используется в различных выражениях. Для создания вектор–строки с целочисленными компонентами от 1 до 10 достаточно выполнить команду:
M = 1:10
M =
1 2 3 4 5 6 7 8 9 10
Для получения обратного интервала, введем приращение:
M = 100:-7:50
M =
100 93 86 79 72 65 58 51
или
M = 0:pi/4:pi
M =
0 0.7854 1.5708 2.3562 3.1416
Оператор “двоеточие” используется для формирования подвекторов и подматриц из векторов, матриц и многомерных массивов:
M(:, J) – это J-й столбец из M;
M(I, :) – это I-я строка из M;
M(:, :) – это матрица M;
M(J:K) – это M(J), M(J+1),…, M(K);
M(:, J:K) – это M(:, J), M(:, J+1),…, M(:, K);
M(:, :, K) – это K-я страница трехмерного массива M;
M(I, J, K, :) – вектор, выделенный из четырехмерного массива M. Вектор включает элементы M(I, J, K, 1), M(I, J, K, 2), M(I, J, K, 3) и т.д.;
M(:) записывает все элементы массива M в виде столбца.