Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab1.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
514.05 Кб
Скачать

Арифметичні оператори і функції

Арифметичні оператори є найпоширенішими і відомими. На відміну від більшості мов програмування в системі MATLAB практично всі оператори є матричними, тобто призначені для виконання операцій над матрицями. В табл.1 приводиться список арифметичних операторів і синтаксис їх застосування.

Таблиця 1. Арифметичні оператори і функції MATLAB

Функція

Назва Оператор

Синтаксис

Plus

Плюс +

М1+М2

Uplus

Унарний плюс +

Minus

Мінус

М1-М2

Uminus

Унарний мінус

Mtimes

Матричне множення *

М1*М2

Times

По елементне множення масивів .*

А1.*А2

Mpower

Піднесення матриці до степені

М1^х

Power

По елементне піднесення масиву до степені

А1.^х

Mldivide

Зворотне (справа наліво) ділення матриць \

M1\M2

Mrdivide

Ділення матриць зліва направо /

М1/М2

Ldivide

По елементне ділення масивів справа наліво . \

А1.\А2

Rdivide

По елементне ділення масивів зліва направо . /

А1 . /А2

Алгебраїчні та арифметичні функції

В системі MATLAB визначені функції алгебри й арифметики, деякі із яких наведені нижче:

  •  abs(X) — повертає абсолютну величину для кожного числового елемента вектора X. Якщо X містить комплексні числа, abs(X) обчислює модуль кожного числа.

  • ехр(Х) — повертає експоненту для кожного елемента X. Для комплексного числа z = х + i*y функція exp(z) обчислює комплексну експоненту: exp(z)=exp(x)*(cos(y)+i*sin(y)).

  • log (X) — повертає натуральний логарифм елементів масиву X. Для комплексного або негативного z, де z = х + y*i, обчислюється комплексний логарифм у вигляді log(z)= log(abs(z))+ i*atan2(у,x). Функція логарифма обчислюється для кожного елемента масиву. Область визначення функції включає комплексні і негативні числа, що може привести до непередбачених результатів при некоректному використанні.

  • log10(X) — повертає логарифм з основою 10 для кожного елемента X. Область функції включає комплексні числа, що може привести до непередбачених результатів при некоректному використанні.

  • mod(x,y) — повертає х mod у;

  • sqrt(A) — повертає квадратний корінь кожного елемента масиву X. Для негативних і комплексних елементів X функція sqrt(X) обчислює комплексний результат.

Спеціальні символи matlab

1) : (двокрапка) використовується для:

А) створення векторів:

j:k – якщо j<k, то це вектор [j,j+l,...,k]; але якщо j>k, то це пустий вектор.

j:i:k – якщо (j<k та i>0) або (j>k та i<0), то це вектор [j,j+i,j+2i,...,k];

але якщо (j<k та i<0) або (j>k та i>0), то це пустий вектор.

де i, j, k – скалярні величини.

Б) вибору рядків, стовбців та елементів з векторів, матриць та багатомірних масивів:

А(i,:) – це i-й рядок з А;

А(:,j) – це j-й стовбець з А;

А(:,:) – еквівалент двохмірного масиву. Для матриць це аналогічно А;

A(j:k) – це A(j),A(j+l),...,A(k) (використовується тільки для векторів або

одномірних масивів);

А(:,:,k) – це k-та сторінка трьохмірного масиву А;

A(i,j,k,:) – вектор, виділений з чотирьохмірного масиву А. Вектор включає

елементи А(i,j,k,l), A(i,j,k,2), A(i,j,k,3) і т. д.;

А(:) - записує всі елементи масиву А у вигляді стовпця.

Примітка:

Якщо вектор V має m компонент, а вектор W має n компонент, то A(V,W) буде матрицею розміром m×n, сформованою з елементів матриці А, індекси якої – елементи векторів V и W.

2) [] (квадратні дужки) використовуються для:

А) формування векторів та матриць:

[6.9 9.64 sqrt(-l)] – це вектор, що вміщує три елементи, розділені пробілами;

[6.9 9.64 i] – такий самий вектор;

[1+j 2-j 3] та [1 +j 2 -j 3] – різні вектори: перший має 3 елементи, а другий 5;

[11 12 13; 21 22 23] – матриця розміром 2×3 (крапка з комою розділяє перший

та другий рядки).

Б) іншого:

А=[] – зберігає порожню матрицю в А;

А(m,:)=[] – вилучає (видаляє) рядок m з матриці А;

А(:,n)=[] – вилучає (видаляє) стовбець n з матриці А.

3) . (десяткова крапка) використовується для відділення дробової частини чисел від цілої.

314/100 3.14 .314е1 – одне і те ж саме число.

4) ; (крапка з комою) – використовується:

А) всередині круглих дужок для розділення строк матриць

Б) в кінці операторів для заборони виводу на екран результату обрахунків.

5) , (кома) використовується для

А) розділення індексів елементів матриці та аргументів функції

Б) розділення операторів мови інженерних розрахунків MATLAB. (При розділенні операторів в рядку кому (,) можна замінити на крапку з комою (;) з метою заборони виводу на екран результату обчислень).

6) % (знак відсотку) використовується для вказування логічного кінця рядка. Текст, що знаходиться після %, сприймається як коментарій та ігнорується (нажаль за виключенням російськомовних коментарів, які нерідко призводять до помилкових команд).

7) ... (продовження) – три або більше крапок в кінці рядка вказують на продовження рядка.

8) = (знак рівності) використовується для присвоєння значень в арифметичних виразах;

9) ' (одиничні лапки, апостроф)

А) текст в одиничних лапках представляється в якості вектора символів з компонентами, які являються ASCII-кодами цих символів (апостроф всередині рядка задається двома апострофами).

» a='Hello, I''m your friend'

а =

Hello, I'm your friend

Б) транспонування матриць з комплексним спряженням: А' – транспонована матриця А. Для комплексних матриць транспонування доповнюється комплексним спряженням.

(.’ – це транспонування матриць. А.' – транспонована матриця А. Для комплексних матриць операція спряження не виконується.

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

>> A' або

ans =

1 4

2 5

3 6

>> A.'

ans =

1 4

2 5

3 6

>> В=[1 2 3; 4+i 5 6];

>> В'

ans =

1.0000 4.0000 - 1.0000i

2.0000 5.0000

3.0000 6.0000

>> В.'

ans =

1.0000 4.0000 + 1.0000i

2.0000 5.0000

3.0000 6.0000

10) [А,В] (або [А В](А пробіл В)) – це горизонтальна конкатенація (об’єднання) матриць А і В. А і В повинні мати однакову кількість рядків. Це можна зробити для будь-якої кількості матриць в межах одних кутових дужок [А,В,С].

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

>> B=[7 8 9; 10 11 12];

>> [A,B] або

ans =

1 2 3 7 8 9

4 5 6 10 11 12

>> [A B]

ans =

1 2 3 7 8 9

4 5 6 10 11 12

11) [А;B] – це вертикальна конкатенація (об’єднання) матриць А і В. А і В повинні мати однакову кількість стовбців. Це можна зробити для будь-якої кількості матриць в межах одних кутових дужок [А;В;С].

>> [A;B]

ans =

1 2 3

4 5 6

7 8 9

10 11 12

10) , 11) Горизонтальна и вертикальна конкатенації можуть використовуватися одночасно: [А;В,С] та [А,В;С].

12) () – присвоєння підмасиву. Приклади:

А(І)=В – присвоює значення елементів масиву В елементам масиву А, які визначаються вектором індексів I. Масив В повинен мати таку ж розмірність, як і масив I, або може бути скаляром:

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

>> B = [7 8];

>> I = [2 5];

>> A(I)=B

A =

1 2 8

7 5 6

Примітка: А(І) рахуються таким чином:

А(1) А(3) А(5)

А(2) А(4) А(6)

А(I,J)=B – присвоює значення елементів масиву В елементам прямокутної підматриці А, які визначаються векторами індексів I та J. Масив В повинен мати LENGTH(I) рядків та LENGTH(J) стовбців.

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

I = [2 5];

>> J = [1 3 6];

>> G = [10 11 12; 13 14 15];

>> A(I,J)=В

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]