Documente Academic
Documente Profesional
Documente Cultură
inginereti
Tema 10
MATLAB.
Elemente de programare
PROGRAME M-FILE
In limbajul MATLAB se poate lucra nu numai prin linii de comanda
individuale, dar si cu programe scrise in fisiere.
Fisierele care contin instructiuni MATLAB se numesc fisiere M sau M-files,
intrucat au extensia .m.
Un fisier M poate fi de doua tipuri, script sau functie. Ambele tipuri de fisiere
sunt scrise in format ASCII.
Sintactic, singura diferenta dintre cele doua tipuri de fisiere este aceea ca
fisierele de tip functie au o prima linie care declara numele functiei.
Aceste tipuri de fisiere M permit crearea unor noi functii care le pot completa
pe cele existente. Astfel MATLAB poate fi extins, permitand abordarea
anumitor aplicatii specifice din stiinta si inginerie.
Pentru creare lor se poate utiliza orice editor de texte. Se recomanda editorul
MATLAB care are niste facilitati proprii pentru programele MATLAB.
FISIERE SCRIPT
Fisierele script sunt fisiere externe de tip text care contin
secvente de comenzi MATLAB.
Prin apelarea numelui fisierului, se executa secventele de
comenzi MATLAB continute in fisier.
Dupa executia completa a unui fisier script variabilele cu care
acesta a operat raman in workspace.
Aceste fisiere nu permit integrarea in programe mari, realizate pe
principiul modularizarii. Fisierele script pot fi folosite la
rezolvarea unor probleme care necesita un numar relativ mare de
instructiuni a caror lansare la linia de comanda ar deveni greoaie.
FISIERE SCRIPT
Aplicatie:
Sa se realizeze un fisier cu urmatorul continut si apoi sa se
execute:
% Program de rezolvare a unui sistem de ecuatii de tipul A*x=b
n=1500;
A = rand(n,n);
b = rand(n,1);
tic, x1 = inv(A)*b; toc
tic, x2 = A\b; toc
FISIERE FUNCTIE
In cazul in care prima linie a unui fisier M contine cuvantul cheie function
fisierul respectiv intra in categoria fisierelor de tip functie.
Un fisier de tip functie difera de un fisier de tip script prin faptul ca accepta
argumente de intrare.
Forma generala a primei linii a unui fisier functie este:
function [par_iesire1, par_iesire2 ... ] = nume_functie(par_intrare1,
par_intrare2 ... )
unde :
function reprezinta un cuvant cheie obligatoriu care declara ca fisierul este de
tip functie
nume_functie reprezinta numele functiei, adica numele sub care este salvat
fisierul, insa fara extensie. Numele functiei nu poate fi identic cu cel al unui
fisier M pre-existent.
par_iesire1, par_iesire2 reprezinta parametri de iesire care trebuiesc separati
prin virgula si cuprinsi intre paranteze drepte. Daca functia are un singur
parametru de iesire parantezele drepte nu mai au sens.
par_intrare1, par_intrare2 reprezinta parametri de intrare care trebuiesc
separati prin virgula si cuprinsi intre paranteze rotunde. Daca functia nu are
parametri de intrare parantezele rotunde nu mai au sens.
Exemplu
var = 9
switch var
case 1
disp('1')
case {2,3,4}
disp('2 sau 3 sau 4')
case 5
disp('5')
otherwise
disp('altceva')
end