Головна |
Для виконання операцій над масивами в Matlab служать арифметичні операції, перелік яких наведено нижче.
Функція (ім'я) | Оператор (символ) | синтаксис | Що треба зробити |
plus | + | А1 + А2 | поелементне складання |
minus | - | А1 - А2 | поелементне віднімання |
times | . * | А1. * А2 | поелементне множення |
rdivide | . / | А1. / А2 | Поелементне розподіл масивів зліва направо |
ldivide | . \ | А1. \ А2 | Поелементне розподіл масивів справа наліво |
power | . ^ | A. ^ X | Поелементне зведення масиву в ступінь |
При записи інструкцій можна застосовувати як символьні оператори арифметичних операцій, так і функції.
Приклад 3-5. Потрібно помножити елементи масиву розмірністю 2 х 2 на число 3.
Рішення завдання виконаємо двома способами - використовуючи оператор. *, Та за допомогою функції times. Рішення наведено нижче:
Інструкція | результати обчислень |
% Інструкція з символьним оператором » А = [1 2 3; 1 2 3]; » В = z. * 2% інструкція, яка використовує функцію » A = [1 2 3; 1 2 3]; » B = times (A, 2) | B = 2 4 62 4 6 |
Для роботи з векторами і матрицями в Matlab існують спеціальні функції.
функція | опис |
Функції операцій над векторами | |
length (U) | Визначає довжину вектора U |
sum (U) | Обчислює суму елементів вектора U |
min (U) | Знаходить мінімальний елемент вектора U, виклик в форматі [m, n] = min (U) дає можливість визначити мінімальний елемент m і його номер n в масиві U |
max (U) | Знаходить максимальний елемент вектора U, виклик в форматі [m, n] = max (U) дає можливість визначити максимальний елемент m і його номер n в масиві U |
dot (u1, u2) | Обчислює скалярний добуток векторів u1 і u2 |
Функції операцій над матрицями | |
eye (n [, m]) | Повертає одиничну матрицю зазначеної розмірності |
size (A) | Визначає розмірність матриці А, результатом є вектор [n; m] |
det (A) | Обчислює визначник квадратної матриці А |
trace (A) | Обчислює суму елементів головної діагоналі |
inv (A) | Повертає матрицю, зворотну А |
linsolve (A, b) | Повертає рішення системи лінійних рівнянь А ? x = b |
Розглянемо використання деяких функцій на прикладах:
Інструкція | результати обчислень |
>>% Визначимо довжину вектора U » U = [2 4 6 1 8 3 9]; » length (U) | ans = |
>>% Обчислимо суму елементів вектора U » sum (U) | ans = |
>>% Знайдемо мінімальний елемент (m) вектора U і визначимо його номер (n) в масиві U » [m, n] = min (U) | m = n = |
>>% Обчислимо скалярний добуток векторів u1 і u2 » u1 = [1 2 1 2]; » u2 = [2 1 2 1]; » dot (u1, u2) | ans = |
>>% Задамо одиничну матрицю А розмірності 3'3 » A = eye (3,3) | A = 1 0 00 1 00 0 1 |
>>% Визначимо розмірність матриці А » A = [1 2 3; 4 5 6]; » size (A) | ans = 2 3 |
>>% Обчислимо визначник матриці А » A = [1 2 3; 2 3 4; 3 4 5]; » det (A) | ans = |
>>% Обчислимо суму елементів головної діагоналі матриці А » A = [1 2 3; 2 3 4; 3 4 5]; » trace (A) | ans = |
>>% Обчислимо матрицю, зворотну А » A = [1 2 3; 0 3 2, 2 1 0]; » B = inv (A) »% перевірка » A * B | B = 0.1667 -0.2500 0.4167-0.3333 0.5000 0.16670.5000 -0.2500 -0.2500 ans = 1 0 00 1 00 0 1 |
Приклад 3-6. Потрібно вирішити систему лінійних рівнянь
Інструкція | результати обчислень |
>>% Рішення » А = [2 1 -1; 3 -2 1; 2 3 -2]; » b = [0; 2; 1]; » x = linsolve (a, b) »% Перевірка » a * x | x = 1.00003.00005.0000 ans = 0.00002.00001.0000 |
Завдання 3-1. Вирішіть системи лінійних рівнянь
Масиви в MATLAB | Побудова двовимірних графіків
Користувальницький інтерфейс | Створення, редагування та налагодження М-файлів | найпростіші обчислення | Функції, визначені користувачем | Основи програмування в MATLAB | Налагодження М-програм в MATLAB | Чисельне рішення математичних задач в MATLAB | чисельне інтегрування | Символьні обчислення в MATLAB | обчислення похідної |