Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék
Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék
Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
1. FEJEZET. ALAPOK 7<br />
1.4. Függvények<br />
A függvényeket paraméterlistával hívjuk meg és visszatérési értékeik vannak. Az előző másodfokú példa<br />
függvényként:<br />
masodfok fv.m<br />
function gyokok = masodfok_fv(a,b,c)<br />
D=b^2-4*a*c;<br />
gyok1=(-b+sqrt(D))/2/a;<br />
gyok2=(-b-sqrt(D))/2/a;<br />
gyokok = [gyok1 gyok2];<br />
Magyarázat<br />
Ezt a fájlt már nem lehet akármilyen néven elmenteni, a fájlnévnek masodfok fv.m-nek kell lennie (azaz<br />
az eljárárs nevének). A függvény bemenete a, b és c, kimenete pedig a gyokok vektor. A függvény hívása<br />
parancssorból:<br />
>> mo=masodfok_fv(1,2,5);<br />
>> mo<br />
mo =<br />
-1.0000 + 2.0000i -1.0000 - 2.0000i<br />
A D diszkrimináns belső változó, a parancssorból nem érhető el:<br />
>> D<br />
??? Undefined function or variable ’D’.<br />
1.5. Lokális és globális változók<br />
Induljunk ki az előző esetből, ahol adott egy függvény és ezen belül definiáltunk változókat. Ha most azt<br />
szeretnénk, hogy valamilyen belső változóhoz másik függvény is hozzáférjen, két lehetőségünk van:<br />
• a függvények argumentumlistájában definiáljuk az értéket (ld. masodfok fv2.m)<br />
• globális változóként definiáljuk a változókat (ld. masodfok fv3.m)<br />
A következő program az argumentumlistában megkapott a, b és c változókat átadja a diszkr(a,b,c)<br />
eljárásnak, amely szintén az argumentumlistában veszi át az értékeket. A b2 és negyac véltozók csak a<br />
diszkr eljáráson belül hozzáférhetők.<br />
masodfok fv2.m<br />
function gyokok=masodfok_fv2(a,b,c)<br />
D=diszkr(a,b,c);<br />
gyok1=(-b+sqrt(D))/2/a;<br />
gyok2=(-b-sqrt(D))/2/a;