Простейшие операции с векторами и матрицами.
MATLABявляется системой, которая специально предназначена для осуществления сложных вычислений с векторами, матрицами и полиномами. Под вектором в MATLAB понимается одномерный массив чисел, а под матрицей - двумерный массив.
Исходные значения векторов-строк можно задавать путем поэлементного ввода. Для этого вначале указывают имя вектора, затем ставят знак присваивания (=), далее открывающую квадратную скобку ( [ ), за ней значения вектора, отделяя их между собой пробелами или запятыми. Завершается запись закрывающей квадратной скобкой ( ] ).
Например: V=[1 2 3] или V=[1,2,3]
V = 1 2 3
Длинный вектор можно вводить частями, которые затем объединяют с помощью операции объединения векторов в строку.
V1=[1 2 3]; V2=[4 5 6];
V=[V1 V2]
V = 1 2 3 4 5 6
Язык MATLAB дает пользователям возможность сокращенного ввода вектора, элементы которого являются арифметической прогрессией.
V = nz : h : kz,
где nz – начальное значение прогрессии (первый элемент вектора);
kz – конечное значение прогрессии (последний элемент вектора);
h – разность прогрессии (шаг).
Например: V= -0.1:0.3:1.4
V= -0.1 0.2 0.5 0.8 1.1 1.4
Вектор-столбец задается аналогично вектору строке, но элементы отделяются друг от друга знаком «;».
Ввод элементов матрицы осуществляется по строкам. При этом элементы строки матрицы отделяются друг от друга пробелами или запятыми, а строки отделяются друг от друга знаком «;».
Например: А=[1,2,3; 4,5,6; 7,8,9]
А = 1 2 3
4 5 6
7 8 9
Формирование векторов и матриц.
MATLAB имеет несколько функций, которые позволяют формировать векторы и матрицы определенного вида:
zeros (M, N) – создает матрицу размером M на N с нулевыми элементами;
Zeros (2,3)
ans = 0 0 0
0 0 0
ones (M, N) - создает матрицу размером M на N с единичными элементами;
Ones(2,3)
ans = 1 1 1
1 1 1
eye (M, N) - создает матрицу размером M на N с единицами по главной диагонали и всеми остальными нулями;
Eye(2,3)
ans = 1 0 0
0 1 0
rand (M,N)- создает матрицу размером M на N из случайных чисел, равномерно распределенных в диапазоне от 0 до 1;
Rand(2,3)
ans = 0.9501 0.6068 0.8913
0.2311 0.4860 0.7621
Извлечение и вставка отдельных элементов матриц.
Обращение к любому элементу матрицы осуществляется указанием после имени матрицы номера строки и номера столбца на пересечении которых расположен элемент матрицы.
Например: А = 1 2 3
4 5 6
7 8 9
Х= А (2,3)
Х=6
Если нужно наоборот вставить на это место какое-либо число, то это можно сделать следующим образом:
A(2,3)=pi
A = 1 2 3
4 5 3.14
7 8 9
Пусть требуется создать вектор V1, состоящий из элементов третьего столбца матрицы А.
V1=А(:,3)
V1 = 3
3,14
Пусть требуется создать матрицу В размером 2:2 состоящую из элементов правого верхнего угла матрицы А.
В=А(1:2, 2:3)
B= 2 3
3,14
Пусть требуется внести элементы матрицы В в левый нижний угол матрицы А.
А(2:3, 1:2)=B
A= 1 2 3
2 3 6
5 3,14 9
Растянуть матрицу в один вектор можно с помощью следующей записи:
A= 1 2 3
4 5 6
V=A(:)
V=1 2 3 4 5 6
Действия над векторами.
Выделим 2 группы действий над векторами: векторные действия и действия по поэлементному преобразованию векторов.
Векторные действия:
Сложение векторов:
х=[1 2 3]; y=[4 5 6]; v=x+y (v= 5 7 9 )
2) Вычитание векторов: v=x-y (v= -3 -3 -3)
3) Транспонирование вектора: х’ ans = 1
4) Умножение вектора на число: v = x*2 (v= 2 4 6)
5) Умножение 2 векторов (для векторов одинаковой длины, один строка, а другой столбец) :
х=[1 2 3]; y=[4 5 6]; v=x’*y
v = 4 5 6
8 10 12
12 15 18
v=x*y’ v = 32
Действия по поэлементному преобразования векторов.
Все эти операции преобразуют элементы вектора как элементы обычного одномерного массива чисел. К таким операциям относятся все из вышеперечисленных элементарных математических функций, зависящих от одного аргумента.
Например х=[-2,-1,0,1,2]
V=sin(x); V =-0.9093 -0.8415 0 0.8415 0.9093
V=tan(x); V=exp(x) и др.
1) Добавление (вычитание) числа к каждому из элементов (+, -);
2) Поэлементное умножение векторов (.*);
3)Поэлементное деление векторов (./, .\)
4)Поэлементное возведение в степень.(.^)
Визуализация вычислений
Для построения графика в линейном масштабе служит функция Plot.
Основными функциями двухмерной графики являются:
plot(x, y)
plot(x, y, s)
plot(x1, y1, s1, x2, y2, s2, …, xn, yn, sn)
где:
¨ х – аргумент функции, задаваемой в виде вектора;
¨ у – функция, представленная в аналитическом виде или в виде вектора или матрицы;
¨ s – вектор стилей графика; константа, определяющая цвет линий графика, тип точек и тип линий;
¨ х1, х2, …, хn – аргументы n функций, изображаемых на одном графике;
¨ у1, у2, …, уn – функции, изображаемые на одном графике.
В таблице 1.1 приведены стили графиков системы MATLAB.
Таблица 1.1. Стили графиков
Тип точки | Цвет линии | Тип линии | |||
. | Точка | Y | Желтый | - | Сплошная |
О | Окружность | M | Фиолетовый | : | Двойной пунктир |
´ | Крест | C | Голубой | -. | Штрих-пунктир |
+ | Плюс | R | Красный | -- | Штриховая |
* | Восьмиконечная снежинка | G | Зеленый | ||
S | Квадрат | B | Синий | ||
D | Ромб | W | Белый | ||
V, ^, <, > | Треугольник вверх, вниз, влево, вправо | K | Черный | ||
P | Пятиконечная звезда | ||||
H | Шестиконечная звезда |