N02R
-
Upload
ana-maria-ciobanu -
Category
Documents
-
view
215 -
download
0
description
Transcript of N02R
-
Fisiere script si fisiere functie. Toate fisirele MATLAB au extensia m.Putem crea fisiere script si fisiere functie. Un fisier script este corpul prin-cipal al unui program(driver-ul). Deasemenea putem crea fisiere functie.MATLAB are propriile functii. Sunt posibile apelari ale functiilor dintr-unfisier script si dintr-un fisier functie. Trebuie sa organizam fiecare functie sisa o declaram ca fisier de tip functie. Este destul de simplu de a face acestlucru. Vom ncepe prin a prezenta urmatorul exemplu. Programul nostrucontine un fisier script numit graf.m si un fisier functie numit cerc.m. Fiecaredintre fisiere trebuie editat dupa cum a fost descris mai sus. Numele implicital functiei este exact numele dat de header-ul functiei.
% Fisierul script graf.m% Deseneaza un cerc prin apel la% functia cerc(x0,y0,R)x0 = input(x pentru centru = ) ;y0 = input(y pentru centru = ) ;R = input(raza = ) ;cerc(x0,y0,R)
Declaratia cerc(x0,y0,R) apeleaza functia cerc care contine parametrii x0, y0,R. Fisierul cerc.m este dat mai jos
function cerc(x0,y0,R)% Fisierul functiei cerc.m% Se folosesc ecuatiile parametrice ale cercului% de centru = (x0,y0) si raza = Rtheta = 0:pi/1000:2*pi ;x = x0 + R*cos(theta) ;y = y0 + R*sin(theta) ;plot(x,y,) ; grid
Prima linie din functia de mai sus se numeste header-ul functiei. Declaratiagrid cere ca o retea sa fie inserata n figura corespunzatoare compilarii pro-gramului dupa cum putem vedea {in Figure 1. In mod obisnuit, un fisierfunctie are numele functiei. Putem acum lansa n executie programul graf.mn fereastra de lucru apelandu-l cu numele lui
>> graf
si programul va cere sa introducem variabilele de intrare si va apela functiacerc. Figura 1 este realizata de catre graf.m cu variabilele de intrare x0 = 3,
1
-
y0 = 0, R = 10.De asemenea, putem apela direct functia cerc, cu parametrii care i dorim.De exemplu
>> cerc(3, 2, 7)va desena un cerc de centru (3, 2) si raza 7.
10 5 0 5 10 1510
8
6
4
2
0
2
4
6
8
10
Figure 1
Revenim la fisierele script pentru a spune cateva lucruri despre variabilele pecare le contine. Variabilele folosite de un fisier script sunt stocate n zonade memorie (zona de lucru) cat timp MATLAB ruleaza. Acest lucru nueste adevarat pentru variabilele dintr-un fisier functie decat daca o asemeneavariabila este declarata ca o variabila globala. Pentru a vedea ce variabilesunt stocate n zona de lucru vom da urmatoarea comanda
>> whos
Daca dorim sa stergem unele variabile din zona de memorie folosim comandaclear.
>> clear lista de variabileVariabilele din lista ar trebui separate prin spatiu. Daca dorim sa stergemtoate variabilele vom face urmatoarea declaratie
2
-
>> clear Revenim acum la fisierele de tip functie si vom da forma generala
pe care trebuie sa o aiba header-ul unei functii
function [parametri-de-iesire] = numele-functiei(parametri-de-intrare)
Parametri de intrare sunt parametri formali. Daca o functie nu are parametride intrare atunci parantezele ( ) vor fi omise. Daca o functie nu are parametride iesire atunci [ ] si = vor fi omise. Daca o functie are doar o variabilade iesire parantezele [ ] pot fi omise. De exemplu, functia corespunzatoareexpresiei f(x) = x2 poate fi scrisa ca
function y = f(x)y = x*x ;
Functia de mai sus returneaza valoarea lui y.
Secventa help: Fiecare functie poate avea o secventa help. Putem gasiinformatii despre o asemenea functie folosind declaratia help astfel>> help numelefunctiei
De asemenea putem crea o sectiune de help(ajutor), folosind urmatorul model:
Header-ul Functiei% prima linie de help% a doua linie de help% ...% ultima linie de help
Folsind declaratiile de help(ajutor) de mai sus
>> help numele functieivor fi afisate toate liniile de help de la prima pana la ultima vor fi afisate.
Alte functii care pot fi create in Matlab sunt functiile inline . De exemplu:f = inline(x*x) ;
3