
- •Практическое занятие №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.3. Числові формати
Спочатку середовище MatLab налаштовано на відображення числових результатів з чотирма цифрами після десятинної крапки. Однак це не єдина можливість представлення чисел. При роботі з числовими даними існує можливість використовувати різноманітні числові формати. Для встановлення формату існує команда
>> format name
де name - ім’я формату. Значення цього параметру наведені в таблиці 1.4.
Таблиця 1.4
Числові формати в MatLab
Ім’я формату |
Виклик формату |
Приклади представлення (вираз 13.75) |
1 |
2 |
3 |
short – коротке представлення у фіксованому форматі
|
>>format short |
13.7500 |
short e – коротке представлення в експоненціальному форматі
|
>>format short e |
1.3750e+001 |
long – довге представлення у фіксованому форматі |
>>format long |
13.75000000000000 |
long e – довге представлення в експоненціальному форматі |
>>format long e |
1.375000000000000e+001 |
hex – представлення у шістнадцятирічному форматі |
>>format hex |
402b800000000000 |
bank - представлення у грошовому форматі |
>>format bank |
13.75 |
rational - представлення у вигляді звичайного дробу |
>>format rational |
55/4 |
1.4. Константи і змінні
Константа – це заздалегідь визначене числове або символьне значення, що представлено унікальним ім’ям. Числа (наприклад 1, -2, 10.03) є числовими константами без імені. Інші види констант в MatLab прийнято називати системними змінними, з одного боку, вони визначаються системою при запуску, а з іншого – можуть бути перевизначеними. Основні системні змінні системи MatLab надані у табл. 1.5.
Таблиця 1.5
Константи, що визначені в MatLab
i або j |
мнима
одиниця ( |
pi |
число π=3.1415926... |
eps |
похибка операцій над числами з плаваючою точкою(2-52) |
realmin |
найменше число з плаваючою точкою(2-1022) |
realmax |
найбільше число з плаваючою точкою(21023) |
inf |
значення машинної нескінченності |
ans |
змінна, що зберігає результат останньої операції і зазвичай відображає його значення на екрані в командному вікні |
NaN |
вказівка на нечисловий характер даних (Not-a-Number) |
Символьна константа – це ланцюг символів, які розміщуються в апострофах, наприклад: ’This is MatLab’,’Привіт!’, ’2+3*5’. Якщо в апострофах розміщається математичний вираз, то він не обчислюється, і розглядається тільки як послідовність символів. Наприклад, команда ’2+3*5’ не повертає числового значення.
Як і в усіх мовах програмування, в MatLab існує можливість працювати із змінними. При цьому користувач системи не хвилюється, про те які значення може приймати змінна (комплексні, дійсні чи цілі), тобто не має необхідності визначати заздалегідь типи даних, що значно полегшує роботу. Щоб деякій змінній надати значення (наприклад, змінній a значення sin(π/3)) , достатньо лише написати у командному рядку
>>a=sin(pi/3)
a =
0.8660
де
знак рівняння використовується як
оператор
надання. Іноді
буває не дуже зручно після кожної команди
отримувати ще й результат. Тому в MatLab
передбачена можливість закінчувати
команди крапкою з комою для того, щоб
результат не з’являвся в командному
вікні. В якості імені змінної може бути
будь-яка послідовність літер і цифр, що
починається з літер. Великі і маленькі
літери відрізняються (на відміну від
деяких інших мов програмування),
наприклад, A
і a
є двома різними змінними. Як вправу,
обчислимо наступний вираз:
>>num=-sin(2)+sqrt(sinh(2)^2-log(1+exp(1))) % обчислення чисельни-
% ка(змінна num)
num =
2.5318
>>denom=cos(2)-sqrt(cosh(2)^2+log2(5)); % обчислення знаменни-
% ка(змінна denom)
>>res=nom/denom % обчислення дробу
res =
-0.5657
Додамо декілька коментарів стосовно цього прикладу. Знак "%" вказує, що після нього йде коментар, і MatLab ігнорує символи, що розташовані за цим знаком. Стосовно крапки з комою, перша і третя команди не мають цього знака, і, як наслідок, результати виконування цих команд виводяться на екран. Що ж стосовно другого рядка, то команда завершена цим знаком, і результат на екран не виводиться. А ось наступна операція приведе до помилки:
>>Num/denom
??? Undefined function or variable 'Num'.,
бо ми визначили змінну num(з маленької літери), а не Num(з великої літери).
MatLab запам’ятає значення всіх змінних, що визначаються під час сеансу роботи, і зберігає їх у робочу область (Workspace). Якщо подалі, наприклад, потрібно вивести значення змінної num, то слід набрати в командному рядку num і натиснути клавішу <Enter>:
>>num
num =
2.5318
Також
змінні, що вже були визначені, можуть
використовуватись у інших виразах.
Наприклад, потрібно обчислити вираз:
.
Для цього достатньо ввести наступну команду:
>>num^3
ans =
16.2280
Припустимо, що частку обчислювань виконано, а решту треба зробити під час наступного сеансу. У цьому випадку необхідно зберегти змінні, що зберігаються в робочій області (Workspace). Самий простий спосіб це зробити – використати в меню File пункт Save Workspace As (Файл → Сохранить Рабочую Область Как), при цьому з'являється вікно діалогу Save Workspace Variables, в якому слід указати ім'я каталогу і файлу. За настройками MatLab це пропонується зробити в каталог work основного каталогу MatLab (ці настройки можуть бути змінені користувачем, якщо скористатися пунктом меню File → Set Path (Файл → Путь)). Зручно називати файли іменами відповідно до дати роботи, наприклад work30-11-06. Результати роботи буде збережено у файлі work30-11-06.mat. Тепер можна закрити MatLab одним з наступних засобів:
за допомогою пункту меню File → Exit MatLab (Файл → Выход из MatLab);
натиснути клавіші <Ctrl>+<Q>;
набрати команду Exit в командному рядку і натиснути <Enter>;
натиснути кнопку з хрестиком у правому верхньому куті вікна MatLab.
У наступному сеансі роботи для встановлення змінних робочого середовища слід скористатися пунктом меню File → Open(Файл → Открыть) для відкриття файла work30-11-06.mat. Після цього всі змінні, що були визначені під час останнього сеансу, стають доступними. Їх можна застосовувати при наборі нових команд. Процедури збереження та встановлення змінних також можна зробити за допомогою команд середовища MatLab.
Для збереження слід набрати команду
>> save work30-11-06
Для встановлення змінних існує команда
>>load work30-11-06
1.5. m-файли
Нехай
необхідно обчислити значення виразу
при значенні змінної x=3.Це,
наприклад, можна зробити за допомогою
наступних команд
>>x=3;
>>f1=sqrt(1+x^2+exp(-2*x+6));
>>f2=-1/(1+x^2);
>>f=f1-f2
f =
3.4166
Якщо ж тепер обчислити значення виразу, наприклад, при x=4, то необхідно знову набирати ті ж самі команди. Це стає дуже незручним, якщо кількість рядків є дуже великою. Для вирішення цієї проблеми у MatLab існує можливість зберігати послідовності команд у вигляді файл-програм або файл-функцій.