Основи роботи в MATLAB
Зміст
Довідка про MatLab
Matlab – одна з найстаріших, ретельно пророблених і провірених часом систем автоматизації математичних розрахунків, побудована на розширеному представленні і застосуванні матричних операцій. Звідси й пішла назва системи – MATrix LABoratory – матрична лабораторія.
Matlab поставляється як комплекс Matlab + Simulink + Toolbox + Blockset, де розділами системи Toolbox і Blockset корпорація MathWorks називає пакети розширення для систем Matlab і Simulink, відповідно.
Однією із основних задач системи Matlab завжди було надання користувачам потужної мови програмування, орієнтованої на технічні і математичні розрахунки і здатної перевершити можливості традиційних мов програмування, котрі багато років використовувались для реалізації чисельних методів. При цьому особлива увага приділялась як підвищенню швидкості обчислень, так і адаптації системи до розв’язку самих різноманітних задач користувачів.
Запуск системи і робота в діалоговому режимі
На початку запуску автоматично виконується команда matlabrc, яка виконує завантажувальний файл matlabrc.m. Цей файл виконує початкове налаштування термінала системи і задає ряд її параметрів. У томі числі, можуть бути вказані шляхи доступу до інших файлів, необхідних для коректної роботи системи.
Сеанс роботи з Matlab прийнято називати сесією (session). Сесія, по суті, являється поточним документом, відображаючим роботу користувача в системі. Вона включає рядки вводу, виводу та повідомлень про помилки. Вхідні в сесію визначення змінних функцій, розміщених в буфері, але не саму сесію, можна записати на диск (файли формату .mat). Фрагменти сесії можна оформити у вигляді щоденника (за допомогою команди diary).
Система створена таким чином, що будь-які обчислення можна виконати в режимі прямих обчислень, тобто без підготовки програми. Такий підхід відбувається по правилу «задав питання, отримав відповідь»:
>> x=1; >> cos(x)^2+sin(x)^2 ans = 1 >> 2*log(ans)^3-... 5/tan(2*sqrt(4)) ans = -4.3185 >> w=2*log(1)^3-5/tan(2*sqrt(4)) w = -4.3185
З цього лістінгу можна зробити висновки:
В деяких випадках зручно записати математичне значення декількома рядками. Це можна зробити використовуючи знак переносу «…» (багатокрапка).
Основні об’єкти Matlab
Центральним поняттям всіх математичних систем являється математичний вираз. Він задає те, що має бути обчислене в числовому (рідше в символьному) вигляді. Приклади простих математичних виразів:
2-4 3.256*exp(8) 2+sin(x)/(4*cos(y))
Математичні вирази будуються на основі чисел, констант, змінних, операторів, функцій та різних спец знаків.
Числа
Число – найпростіший об’єкт мови Matlab, який представляє кількісні дані. Числа можна вважати константами, імена яких співпадають з їх значеннями. Вони можуть бути цілими, дробовими, з фіксованою і плаваючою крапкою. Можливе представлення з вказанням мантиси та порядку числа. В мантисі ціла частина відділяється від дробової комою, а не крапкою. Для відокремлення порядку числа від мантиси використовується символ е.
Числа можуть бути комплексними : z = Re(x) + Im(x) * i. Уявна частина має множник i або j, що означає корінь квадратний з -1:
>> i ans = 0 + 1.0000i >> j ans = 0 + 1.0000i >> k=3+7i k = 3.0000 + 7.0000i >> real(k) ans = 3 >> imag(k) ans = 7
За замовчуванням Matlab повертає числа в короткому записі в форматі з фіксованою комою (5 знаків). Тому при роботі з числовими даними можна задавати різні формати представлення чисел. Але обчислення завжди проводяться в форматі чисел з подвійною точністю. Для установки формату представлення чисел використовується команда
>> format name
де name – ім.’я формату. Для числових даних name може бути наступним:
Short (default) - Короткий запис в форматі з фіксованою комою (5 знаків)
Long - Довгий запис в форматі з фіксованою комою (15 знаків)
Short e - Короткий запис в форматі з плаваючою комою (5 знаків +3 знаки порядку)
Long e - Довгий запис в форматі з плаваючою комою (15 +3 знаки)
Hex - Запис в вигляді шістнадцяткового числа
Bank - Запис до сотих частин (грошові одиниці)
+ - Записується тільки знак числа
Rational - Запис у вигляді раціонального дробу
Число всередині системи зберігається з усіма введеними цифрами. Виводяться на екран числа у формі встановленого формату. Введене значення і результати обчислень зберігаються з похибкою, що становить приблизно (точне значення в 15-ти десяткових розрядах). Діапазон дійсних чисел знаходиться в межах від Неможливо розібрати вираз (невідома помилка): 10 ^-308)
до Неможливо розібрати вираз (невідома помилка): 10 ^308)
.
Константи
Константа – наперед визначене числове або символьне значення, представлене унікальним іменем. Числа (наприклад 1, -256 і 0.024) являються безіменними числовими константами. Інші види констант в Matlab прийнято називати системними змінними. Вони задаються системою при завантаженні, але можуть переозначатись. Основні системні змінні:
i, j – уявна одиниця;
Pi – число π (пі);
Eps – похибка операцій над числами з плаваючою комою (2-52);
Realmin – найменше число з плаваючою комою (2-1022);
Realmax - найбільше число з плаваючою комою (21023);
Inf – значення машинної нескінченності;
Ans – результат останньої операції;
NaN – вказує на нечисловий характер даних (Not-a-Number);
>> 2*pi ans = 6.28 >> eps %формат bank ans = 0.00 >> format short e >> eps ans = 2.2204e-016 >> 1/0 Warning: Divide by zero. ans = Inf >> 0/0 Warning: Divide by zero. ans = NaN
Символьна константа – це ланцюжок символів, записаних між апострофами, наприклад:
>> '3+cos(z)/log(5)' ans = 3+cos(z)/log(5) >> '25.05.2009 о 14:00 - здача курсової роботи' ans = 25.05.2009 о 14:00 - здача курсової роботи
Текстові коментарі
Оскільки Matlab використовується для достатньо складних обчислень, важливе значення має їх наглядний опис. Це досягається за допомогою текстових коментарів. Коментарі вводяться за допомогою символа %, наприклад так:
%it is factorial function
Зазвичай перші рядки m-файлів служать для опису їх призначення, яке виводиться на екран після команди
>> help Ім’я_файлу
Змінні
Змінні – це іменовані об’єкти, здатні зберігати деякі дані. В залежності від цих даних змінні можуть бути числовими або символьними, векторними або матричними. Щоб присвоїти змінній деяке значення, треба виконати операцію присвоювання:
Ім’я_змінної = Вираз
Типи змінних наперед не декларуються. Вони приймають тип присвоюваного виразу. Ім’я змінної (її ідентифікатор) може містити яку завгодно кількість символів, але запам’ятовуються і ідентифікуються тільки перші 31.
Ім’я має бути унікальним, повинне починатися з букви, може містити букви, цифри та символ підкреслювання _. Недопустимо включать в імена змінних пробіли і спеціальні знаки, наприклад +,-,/,* і т. п.
В пам’яті комп’ютера змінні займають місце - робочу область. Для очистки робочої області використовується функція clear:
>> clear – знищує означення всіх змінних; >> clear x – знищує означення змінної x; >> clear a, y, z – знищує означення декількох змінних.===Оператори===