Операции над матрицами, операции над элементами матриц



MATLAB поддерживает операции над матрицами, перечисленные в таблице 2. Размер матриц для выполнения указанных операций должен удовлетворять правилам, изучавшимся в курсе линейной алгебры. При несоответствии размеров матриц MATLAB будет выдавать сообщение об ошибке.

Таблица 2. Операции над матрицами

Операция Описание
A + B Сумма двух матриц. 
А – B Разность двух матриц. 
a * B, B * a Произведение числа a и матрицы B.
A * B Произведение двух матриц.
A' Транспонирование матрицы А.
inv(A) Вычисление обратной матрицы.
A/B Матричное деление: A/B = A * inv(B)
trace (A) След матрицы – сумма элементов на главной диагонали.

Кроме того, можно осуществлять поэлементные операции над матрицами, перечисленные в таблице 3. В этих случаях MATLAB рассматривает операнды как массивы чисел и осуществляет операцию над элементами с совпадающими индексами. Для выполнения операций обе матрицы должны иметь один размер, либо один из операндов должен быть скаляром.

Обратите внимание, что запись обычных и поэлементных операций над матрицами отличается наличием дополнительной точки в формуле для операции.

Таблица 3. Поэлементные операции над матрицами

Операция Описание
A .+ B Сумма A(i,j) + B(i,j). Результат совпадает с суммой матриц.
А .- B Сумма A(i,j) - B(i,j). Результат совпадает с суммой матриц.
A .* B Произведение элементов двух матриц A(i,j) * B(i,j).
A ./ B Частное элементов двух матриц A(i,j) / B(i,j).
A .^ B Степень: A(i,j) в степень B(i,j).
sum (A) sum(A,1) Сумма элементов по каждому столбцу матрицы. Для вектора-строки операция вычисляет сумму всех элементов.
sum (A,2) Сумма элементов в каждой строке матрицы.
min (A) min (A,1) Минимальный элемент каждого столбца матрицы. Для вектора-строки операция вычисляет минимум из всех элементов.
min (A,2) Минимальный элемент каждой строки матрицы.
max (A) max (A,1) Максимальный элемент каждого столбца матрицы. Для вектора-строки операция вычисляет максимум из всех элементов.
max (A,2) Максимальный элемент каждой строки матрицы.

Для того, чтобы вычислить сумму всех элементов матрицы можно воспользоваться повторным вызовом функции sum. Аналогично, вычисляется минимум или максимум из всех элементов матрицы.

Пример. Посмотрите, как работает функция sum:

>> A=[1 2 3; 4 5 6]

A =

1 2 3

4 5 6

>> sum(A)

ans =

5 7 9

>> sum(A,2)

ans =

6

15

>> sum(sum(A))

ans =

21

Упражнение 1.3. 1) Задать вектор-строку а ={1,2,3,4,5} с помощью

a) ввода чисел c пробелами;

b) ввода чисел с запятыми;

с) двоеточия «:» с шагом можно задать те же числа от 1 до 6 с шагом 1.

2) Задать вектор-столбец b ={1, 1.9, 2.8, 3.7}

a) с помощью точки запятой «;» ;

b) с помощью двоеточия с шагом и транспонирования.

3)Задать четыре ненулевых матрицы заданного размера со случайными целыми элементами, не превышающими по значению 10. Размеры матриц A (2x3), B (3x3), C (3x3), D (3x1).

4) Для всех матриц из пункта 3 найти их транспонированные матрицы.

5) Для всех возможных пар матриц из пункта 3 найти сумму, разность и произведение (если данные операции возможны). Разность и произведение необходимо вычислить с учетом различного порядка операндов, например B-C и С-В.

 

Построение прямых на плоскости

С самого начала мы будем использовать визуализацию: изображать векторы (прямые) на плоскости и в пространстве. Для этого мы будем использовать функции line (используется как в плоскости, так и в пространстве) и plot (для плоскости, для пространства аналогом будет plot 3). Чтобы узнать, что делают эти функции, введите в окне команд:

>> help line

>> help plot

Итак, функция line позволяет строить на координатной плоскости прямые (отрезки) по точкам, координаты которых являются входными аргументами в функцию. Например, нам надо изобразить прямую с началом в точке  и концом в точке Мы должны записать

>> line([x1; x2],[y1; y2]).

Через запятую определенным образом записываются свойства линии (если мы хотим изменить свойства, имеющиеся по умолчанию)

Color – цвет, по умолчанию он синий. LineWidth – толщина линии в пунктах, один пункт равен 1/72 дюйма. По умолчанию ширина линии равна 0.5 пункта. Marker – тип маркера.

Например,

>> line([-2;2],[0;1],'Marker','*','Color','m','LineWidth',2, 'LineStyle','--').

Можно построить одновременно несколько прямых

line([абсциссы начал через запятую; абсциссы концов через запятую],[ординаты начал; ординаты концов])

Например, три прямые, проходящие через точки (0,0) и (2,1), (0,0) и (-2,-1), (-2,4) и (0,0).

>> line([0,0,-2;2,-2,0],[0,0,4;1,-1,0])

Функция line сама выбирает цвета в заведенной по умолчанию последовательности (синий, зеленый, красный...).

Команда plot(x,y) соответствует построению обычной функции, когда одномерный массив x соответствует значениям аргумента, а одномерный массив y - значениям функции.

Команда plot(x, y, s) позволяет выделить график функции, указав способ отображения линии, способ отображения точек, цвет линий и точек с помощью строковой переменной s, которая может включать до трех символов представленной ниже таблицы. Команда plot(x1, y1, s1, x2, y2, s2, ...) позволяет объединить на одном графике несколько функций y1(x1), y2(x2), ..., определив для каждой из них свой способ отображения.

Таблица 4. Обозначения цветов и типов линий и маркеров

Цвет линии и маркера

[код цвета в палитре RGB ]

Тип маркера

Тип линии
b синий (blue) [001] . Точка - сплошная
g зеленый (green) [010] o Круг : пунктирная
r красный (red) [100] x -. штрих-пунктирная
c голубой (cyan) [011] + Плюс -- штриховая
m фиолетовый (magenta) [101] * Звезда  
y желтый (yellow) [110] s квадрат (square)  
k черный (black) [000] d ромб (diamond)  
w белый (white) [111] p пятиконечная звезда (pentagram)  
      h шестиконечная звезда (hexagram)  
      ^,<,>,v треугольники  

Упражнение 1.4. С помощью команды line построить а) последовательно и б) одновременно две прямые, имеющие различные цвета, толщину и тип маркера. Координаты начала и конца прямых задать самостоятельно.

Сначала введите команды

>> hold on,grid on

Первая команда будет удерживать все построения на одном рисунке, вторая накладывает сетку на рисунок. Теперь выполняйте построения.

Упражнение 1.5. С помощью команды plot выполнить упражнение 1.4.

Чтобы использовать данную команду, необходимо задать массивы переменных х и у, например,

>> x=-1:.1:1;y=2*x;

>> plot(x,y,'r--'),grid

После команды line или plot появится графическое окно Figure. Чтобы скопировать рисунок в документ, нажмите Edit à Copy Figure и вставьте рисунок в текст.


Дата добавления: 2019-09-13; просмотров: 276; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!