Простейшие операции с векторами и матрицами.

 

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 Шестиконечная звезда