- •Практическое занятие №1 Знайомство з середовищем MatLab
- •Доданок 2
- •1.1. Робоче середовище MatLab
- •Команди редактора MatLab
- •1.2. Розрахунки в MatLab
- •Арифметичні та матричні операції в MatLab
- •Внутрішні елементарні функції MatLab
- •1.3. Числові формати
- •Числові формати в MatLab
- •1.4. Константи і змінні
- •Константи, що визначені в MatLab
- •1.5.1. Файл-програми
- •1.5.2. Файл-функції
1.2. Розрахунки в MatLab
Обчислення математичних виразів у системі MatLab проводяться за допомогою арифметичних та матричних операцій (табл. 1.2), а також елементарних функцій (табл. 1.3).
Таблиця 1.2
Арифметичні та матричні операції в MatLab
Операція |
Призначення |
1 |
2 |
+, - |
Додавання та віднімання для чисел та матриць (матриці повинні мати однаковий розмір). Також один із доданків може бути числом, а другий матрицею (в цьому разі отримаємо матрицю того ж розміру, що й матриця-доданок, кожний елемент якої – це сума кожного елемента матриці-доданка і числа доданка) |
* |
Добуток чисел та матриць (матриці повинні мати розміри, що дозволяють їх перемножити). Також один із множників може бути числом, а другий матрицею (в цьому разі отримаємо матрицю того ж розміру, що й матриця-множник, кожний елемент якої – це добуток кожного елемента матриці-множника і числа-множника) |
/ |
Ділення
чисел, якщо обидва операнди – матриці,
то
|
^ |
Возведення в ступінь для чисел і квадратних (!) матриць |
\ |
Ліве
матричне ділення. Якщо A
– це квадратна матриця, то
|
.* |
Поелементний
добуток матриць однакового розміру.
Якщо
|
./ |
Поелементне
ділення матриць однакового розміру.
Якщо
|
Закінчення табл. 1.2
1 |
2 |
.\ |
Поелементне
ліве ділення матриць однакового
розміру. Якщо
|
.^ |
Поелементне
приведення матриці до ступенів, що
являються елементами другої матриці.
Якщо
|
' |
Знаходження
спряженної матриці. Якщо
|
.' |
Знаходження
транспонованої матриці. Якщо
,
то
|
Таблиця 1.3
Внутрішні елементарні функції MatLab
1 |
2 |
Тригонометричні функції |
sin(x),
cos(x),
tan(x),
cot(x)
, sec(x),
csc(x)
– синус, косинус, тангенс, котангенс,
секанс ( |
Зворотні тригонометричні функції |
asin(x), acos(x), atan(x), acot(x), asec(x), acsc(x) – арксинус, арккосинус, аркангенс, арккотангенс, арксеканс, арккосеканс змінної x |
Гіперболічні функції |
sinh(x), cosh(x), tanh(x), coth(x), sech(x), csch(x) – гіперболічні синус, косинус, тангенс, котангенс, секанс, косеканс змінної x |
Зворотні гіперболічні функції |
asinh(x), acosh(x), atanh(x), acoth(x), asech(x), acsch(x) – гіперболічні арксинус, арккосинус, аркангенс, арккотангенс, арксеканс, арккосеканс змінної x |
Експоненціальна функція |
exp(x) |
Логарифми |
log(x),
log10(x),
log2(x)
– логарифми натуральний, десятинний
та за основою два відповідно змінної
x
. Якщо потрібно обчислити логарифм за
іншою основою, то можна скористатися
формулою переходу до нової основи: |
Закінчення табл. 1.3
1 |
2 |
|
обчислення
|
Обчислення квадратного кореня |
sqrt(x) |
Функції для роботи з комплексними числами |
- abs(z), angle(z) – модуль та аргумент (в радіанах від - до ) комплексного числа z; - complex(a,b) – конструює комплексне число за його дійсній (a) та мнимій (b) частинах (або можна записати: z=a+i*b);
-
conj(z)
–
повертає комплексно-спряжене число
- imag(z) – повертає мниму частину комплексного числа z; - real(z) – повертає дійсну частину комплексного числа z; |
Округлення і залишок від ділення |
- fix – округлення до найближчого цілого за напрямком до 0; - floor, ceil - округлення до найближчого цілого за напрямком до - або +; - round – округлення до найближчого цілого; - mod(a,b) - залишок від цілочисленного ділення a на b (із знаком); - rem(a,b) - залишок від цілочисленного ділення a на b (без знака); - sign - функція знаку числа (повертає -1 для від’ємних чисел, 1 для невід’ємних та 0 для 0) |
Приклади використання операцій та функцій системи MatLab
>>sin(3*pi)+cos(pi/2)/tan(pi/3)
ans =
4.0275e-016
>>exp(-2.5)*log(11.3)^0.3-sqrt((sin(2.45*pi)+cos(3.78*pi))/tan(3.3))
ans =
-3.2105
>>fix(2.3)
ans =
2
>>fix(-1.9)
ans =
-1
>>floor(3.2)
ans =
3
>>ceil(3.2)
ans =
4
>>round(4.1)
ans =
4
>>round(4.6)
ans =
5
>>mod(5,2)
ans =
1
>>mod(-5,2)
ans =
1
>>rem(5,2)
ans =
1
>>rem(-5,2)
ans =
-1
>>sign(-23.8)
ans =
-1
>>sign(12.098)
ans =
1
>>sign(0)
ans =
0
Набір будь-якої команди чи виразу повинен закінчуватись натискуванням клавіші <Enter>, для того щоб ця команда була виконана. Відповідь виводиться в командне вікно. Слід також указати на одну особливість при наборі команд у командному рядку, а саме про випадок, коли математичний вираз виявляється настільки довгим, що для нього не вистачає одного рядка. Тоді вираз може бути перенесеним у новий рядок за допомогою знака трикрапки "..." (3 чи більше), наприклад:
>>sin(2*pi/3)-log2(16)+(123-sqrt(196))/(2^3-cos(3*pi/7)^(-1/3)) ...
+log(1+exp(-2))
ans =
14.1589
Якщо не має необхідності виводити результат у командне вікно, то відповідну команду слід закінчити символом крапки з комою(;).
>>sin(2*pi/3)-log2(16)+(123-sqrt(196))/(2^3-cos(3*pi/7)^(-1/3)) ...
+log(1+exp(-2));
