Széchenyi István Egyetem. Műszaki számítások. Matlab 4. előadás. Elemi függvények és saját függvények. Dr. Szörényi Miklós, Dr.

Hasonló dokumentumok
MATLAB. 5. gyakorlat. Polinomok, deriválás, integrálás

MÁTRIXFÜGGVÉNYEK, SAJÁT FÜGGVÉNYEK, GRAFIKA

MÁTRIXFÜGGVÉNYEK, SAJÁT FÜGGVÉNYEK, GRAFIKA

>> x1 = linspace( ); plot(x1,sin(x1),'linewidth',1,'color',[1 0 0]);

Algoritmusok Tervezése. 1. Előadás MATLAB 1. Dr. Bécsi Tamás

Széchenyi István Egyetem. Műszaki számítások. Matlab 5a. előadás. Numerikus deriválás és integrálás. Dr. Szörényi Miklós, Dr.

A Föld középpontja felé szabadon eső test sebessége növekszik, azaz, a

Baran Ágnes. Gyakorlat Függvények, Matlab alapok

MATLAB OKTATÁS 1. ELŐADÁS ALAPOK. Dr. Bécsi Tamás Hegedüs Ferenc

x a x, ha a > 1 x a x, ha 0 < a < 1

SCILAB programcsomag segítségével

Bevezetés a MATLAB programba

Baran Ágnes. Gyakorlat Halmazok, függvények, Matlab alapok. Baran Ágnes Matematika Mérnököknek Gyakorlat 1 / 34

MATLAB. 6. gyakorlat. Integrálás folytatás, gyakorlás

9 10. előadás. Matlab 4 5. (Függvények, függvényábrázolás) Dr. Szörényi Miklós, Dr. Kallós Gábor. Széchenyi István Egyetem

Numerikus matematika

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

Baran Ágnes. Gyakorlat Komplex számok. Baran Ágnes Matematika Mérnököknek Gyakorlat 1 / 16

2018/2019. Matematika 10.K

1. Feladatlap. Függvények. Mőveletek Matlab nyelvben. Példa inverz osztásra >>d=2\1 d= Információkérési lehetıségek help utasítás

Széchenyi István Egyetem. Informatika II. Számítási módszerek. 5. előadás. Függvények ábrázolása. Dr. Szörényi Miklós, Dr.

Baran Ágnes. Gyakorlat Komplex számok. Baran Ágnes Matematika Mérnököknek Gyakorlat 1 / 33

Matematika A1. 8. feladatsor. Dierenciálás 2. Trigonometrikus függvények deriváltja. A láncszabály. 1. Határozzuk meg a dy/dx függvényt.

Bevezetés a MATLAB használatába

A számok kiíratásának formátuma

Soros felépítésű folytonos PID szabályozó

Baran Ágnes, Burai Pál, Noszály Csaba. Gyakorlat Differenciálegyenletek numerikus megoldása

Tanmenet a évf. fakultációs csoport MATEMATIKA tantárgyának tanításához

6. ELŐADÁS DIFFERENCIÁLSZÁMÍTÁS II. DIFFERENCIÁLÁSI SZABÁLYOK. BSc Matematika I. BGRMA1HNND, BGRMA1HNNC

Kiegészítő előadás. Vizsgabemutató VBA. Dr. Kallós Gábor, Fehérvári Arnold, Pusztai Pál Krankovits Melinda. Széchenyi István Egyetem

Függvények ábrázolása

Matlab alapok. Vektorok. Baran Ágnes

ALGEBRAI KIFEJEZÉSEK, EGYENLETEK

Matematika tanmenet 12. osztály (heti 4 óra)

Kiegészítő előadás. Matlab 7. (Szimbolikus számítások) Dr. Szörényi Miklós, Dr. Kallós Gábor. Széchenyi István Egyetem

n n (n n ), lim ln(2 + 3e x ) x 3 + 2x 2e x e x + 1, sin x 1 cos x, lim e x2 1 + x 2 lim sin x 1 )

MÁTRIXFÜGGVÉNYEK, SAJÁT FÜGGVÉNYEK, GRAFIKA 1.

Függvények vizsgálata

Matematika A1a Analízis

1. előadás. Függvények ábrázolása. Dr. Szörényi Miklós, Dr. Kallós Gábor

A MATLAB PROGRAMOZÁSA

FÜGGVÉNYVIZSGÁLAT, LINEÁRIS EGYENLETRENDSZEREK

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás

MATEMATIKA ÉRETTSÉGI TÍPUSFELADATOK MEGOLDÁSAI KÖZÉPSZINT Abszolútértékes és gyökös kifejezések

Határozatlan integrál

Matematika gyógyszerészhallgatók számára. A kollokvium főtételei tanév

M-Fájlok létrehozása MATLAB-ban

Maple: Deriváltak és a függvény nevezetes pontjai

Numerikus matematika

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Elemi függvények. Matematika 1. előadás. ELTE TTK Földtudomány BSc, Környezettan BSc, Környezettan tanár 3. előadás. Csomós Petra

A MATLAB alapjai. Kezdő lépések. Változók. Aktuális mappa Parancs ablak. Előzmények. Részei. Atomerőművek üzemtana

I. feladatsor i i i i 5i i i 0 6 6i. 3 5i i

Elemi függvények. Matematika 1. előadás. ELTE TTK Földtudomány BSc, Környezettan BSc, Környezettan tanár október 4.

Numerikus Matematika

Eredmények, objektumok grafikus megjelenítése 3D felületek rajzoló függvényei

6. Folytonosság. pontbeli folytonosság, intervallumon való folytonosság, folytonos függvények

Legkisebb négyzetek módszere, Spline interpoláció

Feladat Nézzük meg a súgóban (help és doc) a sin parancs használatáról olvasható információt! Próbáljuk ki a kirajzoltató utasítást.

OSZTÁLYOZÓVIZSGA TÉMAKÖRÖK 9. OSZTÁLY

First Prev Next Last Go Back Full Screen Close Quit. Komplex számok (2)

Mit emelj ki a négyjegyűben?

Érettségi előkészítő emelt szint évf. Matematika. 11. évfolyam. Tematikai egység/fejlesztési cél

Atomerőművek üzemtanának fizikai alapjai. MATLAB használata

MATLAB alapismeretek II.

Osztályozó- és javítóvizsga. Matematika tantárgyból

KOVÁCS BÉLA, MATEMATIKA I.

Matematika 10 Másodfokú egyenletek. matematika és fizika szakos középiskolai tanár. > o < szeptember 27.

Differenciálegyenletek megoldása próbafüggvény-módszerrel

VIK A1 Matematika BOSCH, Hatvan, 5. Gyakorlati anyag

Feladatok megoldásokkal a 9. gyakorlathoz (Newton-Leibniz formula, közelítő integrálás, az integrálszámítás alkalmazásai 1.

egyenlőtlenségnek kell teljesülnie.

Abszolútértékes és gyökös kifejezések Megoldások

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Megoldások. alapfüggvény (ábrán: fekete)

Osztályozóvizsga és javítóvizsga témakörei Matematika 9. évfolyam

Táblázatkezelés 2. előadás. Alapok (folyt.)

Feladat Nézzük meg a súgóban (help és doc) a sin parancs használatáról olvasható információt! Próbáljuk ki a kirajzoltató utasítást.

A gyakorlatban az (1)-beli szumma a technológiai korlátok következtében csak véges t értékig mehet, ami ábrázolási pontatlansághoz vezethet.

Polinomok, Lagrange interpoláció

C programozás. 6 óra Függvények, függvényszerű makrók, globális és

17.2. Az egyenes egyenletei síkbeli koordinátarendszerben

Tanmenet a Matematika 10. tankönyvhöz

MATLAB. 3. gyakorlat. Mátrixműveletek, címzések

Nagy András. Feladatok a logaritmus témaköréhez 11. osztály 2010.

Tanulási cél Szorzatfüggvényekre vonatkozó integrálási technikák megismerése és különböző típusokra való alkalmazása. 5), akkor

Baran Ágnes. Gyakorlat Numerikus matematika. Baran Ágnes Matematika Mérnököknek Gyakorlat 1 / 79

JPTE PMMFK Levelező-távoktatás, villamosmérnök szak

Kalkulus S af ar Orsolya F uggv enyek S af ar Orsolya Kalkulus

IGOR Pro bevezető előadás

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

Diszkrét matematika 1. estis képzés

A MATLAB alapjai. Kezdő lépések. Változók. Aktuális mappa Parancs ablak. Előzmények. Részei

Függvények ábrázolása, jellemzése II. Alapfüggvények jellemzői

Matematika osztályozó vizsga témakörei 9. évfolyam II. félév:

Matematika II. 1 sin xdx =, 1 cos xdx =, 1 + x 2 dx =

I. feladatsor. (t) z 1 z 3

MATLAB OKTATÁS 4. ELŐADÁS LINEÁRIS, NEMLINEÁRIS ÉS DIFFERENCIÁL- EGYENLETRENDSZEREK MEGOLDÁSA. Dr. Bécsi Tamás Hegedüs Ferenc

Az osztályozó, javító és különbözeti vizsgák (tanulmányok alatti vizsgák) témakörei matematika tantárgyból

Átírás:

Matlab 4. előadás Elemi függvények és saját függvények Dr. Szörényi Miklós, Dr. Kallós Gábor 2017 2018

Tartalom Bevezetés, motiváció Elemi függvények Trigonometrikus és exponenciális csoport Maximális/minimális érték Diszkrét matematikai csoport Polinomfüggvények Optimalizációs feladatok Saját függvények definiálása és hívása M-fájlos definíció Editor Hibák és warning-ok Parancssori definíció 2

Bevezetés, motiváció Célunk a továbbiakban különböző függvények definiálása Pl. fizikai jelenségek modellezésére / mérési adatok közelítésére vizsgálata Pl. nevezetes pontok keresése és kirajzolása Igényes ábrán: tengelyek, feliratok, elkülönülő vonalak, jelmagyarázat stb. Ehhez most áttekintjük az elemi matematikai függvények csoportját, majd megismerkedünk a function m-fájlokkal 3

Elemi függvények Elfun csoport A Mathematics kategórián belül Alcsoportok Trigonometrikus Exponenciális Komplex Már néztük Kerekítő Már néztük Diszkrét matematikai Polinomfüggvények 4

Elemi függvények Trigonometrikus függvények Radiános és fokos megadás (d-s változat, már tudjuk) Példa >> x = 0:0.1:1.6; >> y = sin(x) % szinusz vektor >> yd = sind(x) Függvényrajz (a plot utasítást részletezően később nézzük meg) Példa >> x = linspace(-2*pi, 2*pi, 1001); plot(x,sin(x)) Hf.: Készítsünk igényes, szép rajzot a tangens függvényről pi/2-től +pi/2-ig! 5

Elemi függvények Trigonometrikus függvények (folyt.) Feladat (M. D.): Hozzunk létre egy t idővektort, amely eps és pi között 100 elemet tartalmaz! Ezen a vektoron értékeljük ki a fv = sin(t)/(4,7t + 3) + 0,1cos(t^2) kifejezést, majd határozzuk meg, hogy hol maximális fv értéke! Megoldás >> t = linspace(eps,pi,100); % idővektor >> fv = sin(t)./(4.7*t+3) + 0.1*cos(t.^2); % trig. kif., kell a pontozott műv. >> plot(t, fv) % próbarajz >> [max_ertek max_index] = max(fv) max_ertek = 0.1911 % max. érték és index megkeresése % szintaktika: [M, I] = max(kif) % lásd súgó >> max_t = t(max_index) % indexhez tartozó t érték Ugyanezen ötlettel megoldhatunk optimalizációs feladatokat 6

Optimalizációs feladatok Feladat (M. D.): Egy henger felszíne 50 egység. Mekkorának válasszuk az alapkör sugarát és a magasságot, hogy a térfogata max. legyen? Tudjuk, hogy A = 2πr(r + h) és V = r 2 πh Ötlet és megoldás Matlabbal A = 2πr(r + h) h = 50/(2πr)-r V = r 2 πh V = r 2 π(50/(2πr)-r) Megnézzük V értékeit a lehetséges r-ekre, és maximumot keresünk >> r = linspace(0,3,50); % elég 3-ig menni (próbálkozás) >> v = r.*r*pi.*(50./(2*pi*r)-r); % kell a pontozott műv. >> plot(r, v) >> [max_ertek max_index] = max(v) % max. keresés max_ertek = 27.1354 >> max_r = r(max_index) max_r = 1.6531 >> h_max = 50/(2*pi*max_r) - max_r >> v_max = max_r*max_r*pi*(50/(2*pi*max_r)-max_r) % ellenőrz. 7

Elemi függvények Exponenciális függvények Fontosabbak: exp, log, log10, log2 Feladat: szép logaritmus Megoldás >> x = linspace(eps, 20, 100); >> y = log(x); >> plot(x, y) % még nem szép rajz >> axis([0 20-5 4]) % tengely skálázás % lásd később is >> hold on >> plot([0 20], [0 0], 'k--') % fekete szaggatott vonal % lásd később is A komplex és kerekítő fv-eket nem nézzük meg most külön 8

Elemi függvények Diszkrét matematikai (számelméleti) függvények Fontosabbak: gcd, lcm, factor, isprime, primes Példák >> primes(31) >> isprime(1001) >> factor(1001) >> 7*11*13 % ell. Euklideszi algoritmus megvalósítása* 9

Elemi függvények Polinomokat kezelő függvények A polinomok gyakran szerepelnek mat. függvények megadásakor, de sokszor valós fizikai folyamatoknál is (pl. közelítés) Eml.: polinom meghatározása, műveletek (deriválás, integrálás is) Egy polinom a Matlabban egy sorvektorral reprezentálható Példa: P(x) = 3x 4 15x 3 10x + 2 P = [3, -15, 0, -10, 2] A Matlab beépített függvényei a sorvektorokat polinomokként értelmezik, és végrehajtják a megfelelő műveletet (pl. polyval, conv) Példák >> roots(p) % gyökök meghatározása (eml.: gyök) >> y0 = polyval(p,x0) % kiértékelés (egy adott pontban) >> x = -1:0.1:1; polyval(p,x) % kiértékelés (sok pontban) >> r=[0 1 2 3], p1 = poly(r) % pol. létrehozása gyökeiből >> pd1 = polyder(p1) % derivált polinom (együtthatók) >> q = polyint(pd1) % integrálás >> p2 = polyfit([0 1 2 3], [1 1 0 1], 3) % pol. illesztés Megj.: Polinomokra vonatkozó feladatok a Matlabban sokszor pol.függvények nélkül is megoldhatók (pl. fv. ábrázolás, zérushelyek, szélsőért.) 10

Saját függvény létrehozása és hívása A saját függvények definícióit célszerűen m-fájlokban helyezzük el (máshogy is lehet!) Létrehozás: File/New/Function (Home menüszalag) Szintaktika: function kimenő paraméter(ek) = függvénynév(bemenő paraméterek) utasítások; end % függvénynév A Matlab kottát ad a kitöltéshez Szabályok Felesleges sorok törlendők Figyeljünk a paraméterekre! (aktuális, formális, bemenő, kimenő) A függvény neve kötelezően azonos a tartalmazó m-fájl nevével Több visszatérési/kimenő paraméternél szögletes zárójelet kell használni a megadásnál Paraméterek szeparálása: szóköz, ill., 11

Saját függvény létrehozása és hívása M-fájlos definíció, folyt. Kezelőfelület (Editor) Egyszerű, barátságos szerkesztő A Matlab a beírás közben jelzi a hibákat, és segítséget ad a javításhoz Hibák és warning-ok Lásd csúszka is Előbbiek kötelezően javítandók! Utóbbiakat is célszerű! A hiba lehet: szintaktikai és szemantikai Tipikus kellemetlen hiba a pontozott műveletek nem-alkalmazása (amikor szükségesek lennének) Használjunk kommenteket! Az infó a help-nél megjelenik Később (pl. 1 év múlva) számunkra is fontos lehet Az elkészített függvényt célszerű tesztelni! Helyettesítési értékkel, vagy (próba) függvényrajzzal (pl. f1(3), ill. plot) 12

Saját függvény létrehozása és hívása M-fájlos definíció, folyt. Példafüggvény 1: fv(x) = 1/x + 2x 2 function y = fv(x) y=1./x+2*x.^2; % pontozott műveletek, kell a pontosvessző end Hívás: >> x = 0.01:0.01:5; plot(x, fv(x)) Példa 2: hagyományos koordinátákból polárba váltó függvény Több bemenő és több kimenő paraméter! Hívás: >> polarkoord(1, 1) % csak r-et kapjuk meg >> [r, theta] = polarkoord(1, 1) % r-et és theta-t is megkapjuk, most pi/4 13

Függvény létrehozása és hívása A Matlab további lehetőségei Közvetlen függvénydefiníció (parancssorban, ún. anonymus megadás) Létrehozás: @ jellel (function handle), nem tárolódik külön fájlban (egyszerűbb esetekben célszerű használni) Példa 1. >> sqr = @(x) x.^2; % input paraméterek zárójelben >> sqr(6) % hívás Példa 2. >> fw = @(x) x.^2.*sin(x) + 1; % saját fv. >> s = -3:0.1:3; plot(s, fw(s)) % hívás Példa 3. >> fn = @(x,y) (x^2 + y^2 + x*y) % kétváltozós eset >> x = 1; y=10; z = fn(x,y) % kezdőérték, hívás Inline megadás A fv. egy sztringben megadott kifejezés (újabb Matlab verziókban már kerülendő!) >> f = inline('3*sin(2*x^2)'), argnames(f), fplot(f, [0 pi]) % az argnames itt biztonsági ellenőrzésre szolgál % fplot esetén a. elhagyható a megf. műveletek elől 14