Introducere în MATLAB
MATLAB® este un sistem interactiv destinat calculelor numerice. Prima versiune MATLAB a fost scrisă în anii ’70 de Cleve Moler. MATLAB uşurează sarcina utilizatorului de a rezolva problemele numerice. Aceasta permite concentrarea asupra părţii creatoare a rezolvării problemei şi încurajează experimentele. MATLAB utilizează algoritmi cunoscuţi şi testaţi, în care utilizatorul poate avea încredere. Operaţiile puternice se pot realiza uşor cu un număr mic de comenzi (de multe ori una sau două).
Vă puteţi programa propriul set de funcţii pentru aplicaţia dumneavoastră. De asemenea, sunt disponibile facilităţi grafice excelente, iar imaginile pot fi inserate în documente LATEX sau Word.
Facilități de bază
- Limbaj de nivel înalt pentru calcule tehnico-științifice
- Mediu de tip desktop concput pentru explorare interactivă, proiectare și rezolvare de probleme
- Sistem grafic pentru vizualizarea datelor și crearea de grafice adaptate nevoilor utilizatorului
- Aplicații pentru potrivirea-netezirea curbelor (curve fitting), clasificarea datelor, analiza semnalelor, controlul adaptiv al sistemelor, ș.a.
- Toolbox-uri pentru un domeniu larg de aplicații științifice și tehnice
- Instrumemente pentru construirea de aplicații cu interfețe grafice utilizator
- Interfețe cu C/C++, Java®, .NET, Python, SQL, Hadoop și Microsoft® Excel®
- opțiuni gratuite de partajare și difuzare a programelor MATLAB cu alți utilizatori.
Lansarea MATLAB şi sistemul de help
Sub sistemul de operare Windows, MATLAB se lansează dând un click dublu pe icon-ul corespunzător sau selectând programul din meniul de start. Prompterul din fereastra de comandă este indicat prin >>. MATLAB poate fi utilizat în mai multe moduri: ca un calculator avansat (când comenzile sunt introduse în linia de comandă de la tastatură), ca un limbaj de programare de nivel înalt şi sub formă de rutine apelate dintr-un limbaj de programare, de exemplu C.
La prima lansare a MATLAB desktop-ul apare în format implicit
Desktop-ul include următoarele panouri (ferestre):
- Fereastra de comandă (Command Window) -- în ea se introduc comenzile la prompterul (>>).
- Directorul curent --- permite accesul la fișierele dumneavoastră
- Spațiul de lucru (Workspace) - permite să inspectați datele create de dumneavoastră și să inspectați fișiere
Toate funcțiile MATLAB au documentație suport care conține exemple și descrie funcțiile, intrările, ieșirile și modul de apel. Există mai multe moduri de acces la informațiile de help
- deschiderea într-o ferestră separată cu comanda, de exemplu doc mean;
- afișare de indicații pentru funcție (porțiunea de sintaxă din documentația funcției) în fereastra de comandă după ce utilizatorul a tastat numele funcției și paranteza deschisă
- vizualizarea unei versiuni prescurtate în mod text prin comanda help, de exemplu help mean;
- accesul la întregul sistem de help și la documentație prin butonul de help
.
O altă facilitate utilă este utilizarea unei comenzi de forma lookfor cuvant-cheie, care caută în fişierele help un cuvânt cheie. Propunem cititorului să testeze lookfor factorization.
Pentru începători şi cei care predau MATLAB demonstraţiile sunt foarte utile. Un set cuprinzător se poate lansa prin comanda
>> demo
Atenţie, ea şterge toate variabilele!
Modul calculator
Operaţiile aritmetice de bază sunt +, -, *, / şi ridicarea la putere ˆ. Ordinea implicită a operaţiilor se poate schimba cu ajutorul parantezelor.
MATLAB recunoaşte mai multe tipuri de numere:
- întregi, cum are fi 1362 sau -217897;
- reale, de exemplu 1.234, -10.76;
- complexe, cum ar fi 2-3i, unde i este unitatea imaginară
- Infdesemnează infinitul
- NaN, Not a Number, care se obţine ca rezultat al unei operaţii ilegale sau al unei nedeterminări din analiza matematică (0/0, ∞-∞, ∞/∞, etc.)
Toate calculele se realizează în virgulă flotantă, dublă precizie. Formatul în care MATLAB afişează numerele este controlat de comanda format. Tastaţi help format pentru o listă completă. Tabela următoare dă câteva exemple.
Comanda format compactelimină liniile goale de la ieşire şi permite să se afişeze mai multă informaţie.
Numele de variabile în MATLAB sunt formate din secvenţe de litere şi cifre, prima fiind o literă. Exemple: x, y, z525, TotalGeneral. Se face distincţie între literele mari şi cele mici. Există şi nume speciale, a căror folosire trebuie evitată, cum ar fi:
- eps –
, este epsilon-ul maşinii care reprezintă cel mai mare număr cu proprietatea că 1+eps nu poate fi distins de 1; - pi
- Dacă se fac calcule cu numere complexe folosirea variabilelor i şi j este contraindicată, deoarece ele desemnează unitatea imaginară.
Variabila specială ans păstrează valoarea ultimei expresii evaluate. Ea poate fi utilizată în expresii, la fel ca orice altă variabilă.
Funcţiile matematice uzuale apar în tabela de mai jos.
Dacă dorim să suprimăm afişarea ultimei expresii evaluate, vom pune caracterul ,,;” la sfârşitul expresiei. Pe o linie de comandă se pot introduce mai multe expresii. Ele pot fi separate prin virgulă, caz în care valoarea expresiei terminată cu virgulă va fi afişată, sau cu ,,;”, caz în care valoarea expresiei nu va fi afişată.
x=-13; y = 5*x, z = x^2+y, z2 = x^2-y;
Dacă dorim să salvăm variabile, o putem face cu comanda
>>save nume-fisier lista-variabile
unde variabilele din lista-variabilesunt separate prin blanc. Se pot folosi în numele de variabile construcţii de tip wildcard, desemnate prin *. Rezultatul salvării se păstrează în fişierul nume-fisier de tip .mat, în format binar, specific MATLAB.
Variabilele salvate pot fi încărcate prin
>>load nume-fisier
Se pot face salvări şi încărcări şi în format ASCII, în dublă precizie sau prin adăugare la un fişier existent. Pentru detalii a se vedea help save şi help load.
Lista variabilelor utilizate în sesiunea curentă se poate vizualiza cu whos:
whos
Name Size Bytes Class Attributes
ans 1x1 8 double
x 1x1 8 double
y 1x1 8 double
z 1x1 8 double
z2 1x1 8 double
Comanda
>>diary nume-fisier
salvează toate comenzile şi rezultatele afişate pe ecran (cu excepţia celor ale comenzilor grafice) în fişierul nume-fisier. Acest proces de ,,jurnalizare” se termină prin
>>diary off