3.2 Операції з числовими масивами
Матричні операції в середовищі пакета реалізовані мовою С з використанням найефективніших числових алгоритмів, мають високу швидкодію і одночасно досить просто їх можна використовувати в будь-яких програмах. Перелік базових матричних операцій наведено в таблиці 2.3.
Таблиця 2.3 – Деякі базові матричні операції
Операція
|
Визначення операції - А'
ж-
|
А'
|
транспонування матриці
|
А+В
|
додавання (віднімання) матриць
|
А*В
|
множення матриць
|
А/В
|
праве ділення матриць
|
А\В
|
ліве ділення матриць
|
А^р
|
піднесення матриці до степеня
|
а^Р
|
піднесення скаляра до матричного степеня іеня
|
Дії додавання та віднімання матриць виконуються над матрицями однакового розміру. Також є визначеною операція додавання чи віднімання, якщо один з операндів є скаляр.
Наприклад,
х = [1 2 3]; у = х – 2
y =
-1 0 1
Операція множення матриць також визначена у випадку множення матриці на скаляр.
Особливої уваги заслуговують визначені в пакеті операції правого та лівого ділення. Так запис х = А\В відповідає розв’язкові системи алгебричних рівнянь Ах = В, а запис х = А/В - розв’язкові системи алгебричних рівнянь хА=В.
Операція піднесення матриці А до n-го степеня (A^n) виконується перемноженням матриці А n разів. Наприклад,
A = [1 2; 3 4]; B = A^2
B =
10
22
Окремим типом матричних операцій є табличні операції - скалярні операції, визначені на елементах матриці. Табличні операції мають ідентичний запис з матричними операціями, тільки перед знаком операції ставиться символ ".". У випадку додавання (віднімання) матриць матричні та табличні операції є ідентичними. У випадку виконання табличного множення або ділення необхідно, щоб розміри обох матриць були однаковими. Наприклад,
Х = [7 8 9]; У = [2 4 3];
Х./Y
аns =
3.5000 2.0000 3.0000
Таблиця 2.4 - Деякі елементарні матричні функції та операції трансформування і декомпозиції матриць
Функція |
Визначення функції |
еxpm
|
матрична експонента
|
logm |
матричний логарифм |
sqrtm |
матричний корінь |
lu |
декомпозиція трикутна LU |
qr |
декомпозиція ортогональна QR |
norm |
норма вектора і матриці |
rank |
ранг матриці |
det |
визначник матриці |
trace |
сума діагональних елементів матриці |
inv |
знаходження оберненої матриці |
size |
розмір матриці |
reshape
|
зміна розміру матриці |
length
|
довжина вектора |
diag
|
діагональні елементи матриці |
triu |
верхня трикутна частина матриці |
tril |
нижня трикутна частина матриці |
У випадку табличних операцій можливим є порівняння (поелементне) двох матриць. Результат порівняння подається у вигляді матриці, елементами якої є нулі та одиниці, причому одиниця відповідає логічному значенню TRUE, а нуль - FALSE.
У пакеті реалізована велика кількість корисних для користувача елементарних матричних функцій та операцій трансформування і декомпозиції матриць, визначених в алгебрі. Деякі з них наведені в табл. 2.4.
Повний опис усіх матричних функцій системи MatLab вміщується у папках elmat (команди створення елементарних матриць і операцій зніми), matfun (матричні функції лінійної алгебри). Подивитися цю інформацію можна за допомогою команди help.