Система MatLAB є однією з найбільш поширених у світі систем для виконання наукових та інженерних розрахунків. Назва MatLAB утворена як скорочення від слів MATrix LABoratory (матрична лабораторія). Тому у назві Matlab відсутня літера "h", на відміну від назви MathCAD, перша частина якої утворена від слова Mathematics.
До основних переваг системи MatLAB можна віднести наступне:
- математичний апарат у MatLAB наближений до звичного математичного апарату інженера; правила виконання обчислень орієнтовані на роботу з матрицями та комплексними числами;
- MatLAB є відкритою системою, тому можна використовувати у власних програмах вбудовані функції та створювати нові функції та сценарії і надалі користуватися ними.
Робота у середовищі MatLAB може відбуватися у двох режимах:
1) в інтерактивному режимі калькулятора, коли формули вводяться в командному вікні, туди ж виводяться результати обчислення, при цьому користувач може присвоювати змінним значення, керувати пам’яттю, викликати та використовувати вбудовані функції, будувати графіки;
2) шляхом виконання програми, написаної користувачем на мові MatLAB.
Робоча область MatLAB – це область пам‘яті, у якій розташовані змінні, з якими працює система MatLAB. Значення змінних доступні для перегляду та зміни "вручну" користувачем у спеціальному вікні середовища, яке носить назву Workspace.
Важливою частиною системи MatLAB є власна мова програмування високого рівня, орієнтована на виконання технічних обчислень, та засоби підтримки цієї мови – насамперед інтерпретатор, який дозволяє виконувати команди цією мовою, введені у командному вікні або отримані з файлів-скриптів. Основу мови програмування системи MatLAB складає невелика кількість базових операторів. Вони доповнюються великою кількістю вбудованих та додаткових спеціальних функцій.
MatLAB також має деякі можливості, властиві операційним системам. Система MatLAB використовує поняття поточного каталогу під час сеансу роботи, та список шляхів доступу до файлів. Його засоби забезпечують діалог з користувачем у режимі командного рядка або через графічні інтерфейси, перегляд робочої області та шляхів доступу до файлів MatLAB, вбудований редактор m-файлів, можливість обміну (експорту та імпорту) даними з іншими апаратними та програмними системами, тощо.
До системи MatLAB разом з вбудованими функціями входять пакети прикладних програм (toolbox), в яких зібрані функції, присвячені розв’язанню спеціалізованих інженерних задач, наприклад:
- Signal Processing Toolbox (Обробка сигналів) – набір програм для детермінованого, статистичного та спектрального аналізу, апроксимації передаточних функцій, побудови фільтрів зі скінченними або безкінечними імпульсними характеристиками, фільтрації, параметричного моделювання сигналів, обробки звуку, модуляції, генерування стандартних сигналів, розрахунку когерентності та кореляції;
- Image Processing Toolbox (Обробка зображень) – програми для візуалізації зображень різних форматів, обробки та аналізу зображень, фільтрації, роботи з кольорами;
- Statistics Toolbox (Статистика) – набір програм для оцінки параметрів законів розподілу, функцій густин імовірностей, генерації випадкових чисел, побудови лінійних та нелінійних моделей випадкових сигналів, кластерного аналізу та аналізу незалежних компонент, перевірки гіпотез;
- Mapping Toolbox (Робота з картами) – програми для обробки картографічних даних;
- Symbolic Math Toolbox (Символьна математика) – програми для символьних обчислень та спрощень символьних виразів;
- Fuzzy Logic Toolbox (Нечітка логіка) – програми для реалізації апарату нечіткої логіки;
- Neural Network Toolbox (Нейронні мережі) – програми для створення нових нейронних мереж, їх навчання за різними алгоритмами та для оцінки їх роботи;
- Wavelet Toolbox (Вейвлет) – програми для проведення вейвлет-розкладу сигналів у базисах вейвлетів, створення вейвлет-фільтрів, стиснення і знешумлення сигналів за допомогою вейвлетів;
- Control System Toolbox (Системи управління) – набір програм для моделювання лінійних інваріантних в часі систем, аналізу моделей у часовій та частотній областях;
- Optimization Toolbox (Оптимізація) – одновимірна та багатовимірна мінімізація функцій, пошук нулів та екстремумів, розв'язання задач лінійного та квадратичного програмування;
- Matrix functions - numerical linear algebra (Матричні функції – чисельна лінійна алгебра) – набір програм для дослідження матриць (обчислення слідів, норм, рангу, визначників), розв'язання алгебраїчних рівнянь, обернення матриць, факторизації, обчислення власних векторів та власних значень, матричних функцій;
- Data Acquisition Toolbox (реєстрація даних) – програми для отримання даних з зовнішніх пристроїв.
Порядок виконання роботи
1. Запустіть систему MatLAB. Розгляньте елементи інтерфейсу користувача системи. Ознайомтеся з командним вікном MatLAB та робочою областю (вікно Workspace).
2. Ознайомтеся з правилами введення змінних, представлення даних у MatLAB. Ознайомтеся з операціями над числами, векторами, матрицями.
3. Ознайомтеся з правилами виклику функцій MatLAB. Випробуйте на прикладах роботу елементарних функцій (тригонометричних функцій, функції логарифму, ступеневої функції, тощо).
4. Ознайомтеся з роботою команди HELP та з системою допомоги MatLAB. Розгляньте інформацію, яку можна отримати з системи допомоги щодо використання окремих функцій системи MatLAB.
5. Ознайомтеся з роботою функції plot для побудови графіків у MatLAB. Побудуйте графік заданої функції. (Для цього придумайте самі яку-небудь функцію, яка вам сподобається). Позначте осі та заголовок графіка. (Використайте функції xlabel, ylabel, title). Нанесіть на графік координатну сітку. (Використайте функцію grid).
6. Ознайомтеся із роботою функцій генерації випадкових чисел із заданими густинами розподілу імовірності (rand, randn, randi). В чому полягає різниця між трьома названими функціями?
7. Ознайомтеся з роботою функції hold; використовуючи її, побудуйте два графіки в одному вікні.
8. Ознайомтеся з роботою функцій save та load, збережіть дані розрахунку в файл. Спробуйте прочитати їх із файлу в іншому сценарії і побудувати за ними графік.
9. Ознайомтеся з роботою функції subplot. Спробуйте побудувати з її допомогою графіки синусоїд частот 1, 2, 5, 10, 20 Гц та випадкових амплітуд.
10. Ознайомтеся з операторами if, for, while, input. Придумайте та реалізуйте власні приклади використання цих операторів.
11. Складіть звіт про виконану роботу. Відобразіть у ньому результати виконання кожного з завдань.
12. Складіть 5 власних контрольних питань за темами роботи і додайте їх до звіту.
*** Примітка до останнього завдання:
Згідно вимог Міністерства освіти, кожне питання має містити дієслово, яке підказує запитаному, що саме він має зробити. Наприклад: назвіть, поясніть, порівняйте, охарактеризуйте, тощо. Ця вимога є дуже правильною, тому дотримуйтесь її, коли складаєте власні питання. Якщо в запитанні немає такого дієслова, то найчастіше має місце один з двох випадків: або на це питання можна дати примітивну відповідь, яка складається з 2-3 слів, або на нього взагалі неможливо відповісти, бо воно нечітко поставлене.
В обох цих випадках таке питання не побуджує людину до самостійного мислення, розвиток якого якраз і є найціннішою частиною освіти.