Professional Documents
Culture Documents
BOJAN KOVAI
MATEMATIKI ALATI U ELEKTROTEHNICI
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Nakladnik
Tehniko veleuilite u Zagrebu
Elektrotehniki odjel
Autor
mr.sc. Bojan Kovai
Recenzenti
prof.dr.sc. Juraj iftar
doc.dr.sc. Zoran Tomljanovi
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Bojan Kovai
MATEMATIKI ALATI U
ELEKTROTEHNICI
udbenik
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Sadraj
PREDGOVOR .......................................................................................................................... 6
1. UVOD U MATLAB ............................................................................................................ 8
1.1.to je MATLAB? ............................................................................................................. 8
1.2. Aritmetika digitalnoga elektronikoga raunala ............................................................. 8
1.2.1. Znanstveni oblik realnoga broja ................................................................................... 8
1.2.2 Zaokruivanje realnih brojeva i ''rezanje'' suvika decimala.................................. 10
1.2.3. IEEE standard ........................................................................................................ 11
1.3. Zapis osnovnih matematikih i logikih operatora u MATLAB-u ............................... 13
1.4. Posebne varijable u MATLAB-u .................................................................................. 15
1.5. Osnovne matematike funkcije ugraene u MATLAB ................................................. 16
1.6. Zadatci za vjebu ........................................................................................................... 18
2. OSNOVE MATRINOGA RAUNA U MATLAB-U ................................................ 19
2.1. Zadavanje (generiranje) matrica u MATLAB-u ........................................................... 19
2.2. Algebarske operacije s matricama................................................................................. 20
2.3. Matrine funkcije ugraene u MATLAB ...................................................................... 25
2.4. Uporaba znakova , ; i : u MATLAB-u .......................................................................... 30
2.5. Jo neke primjene matrinoga rauna ........................................................................... 33
2.6. Zadatci za vjebu ........................................................................................................... 42
3. GRAFIKA U MATLAB-U ............................................................................................. 45
3.1. Jednostavni linijski grafikoni ........................................................................................ 45
3.2. Crtanje grafova funkcija na segmentu ........................................................................... 48
3.3. Zadatci za vjebu ........................................................................................................... 61
4. OSNOVE PROGRAMIRANJA U MATLAB-U ........................................................... 63
4.1. Kako stvoriti jednu obinu m-datoteku ......................................................................... 63
4.2. Funkcijske mdatoteke .................................................................................................. 65
4.3. Uvjetne naredbe (naredbe kontrole tijeka) .................................................................... 67
4.3.1. Naredba for ............................................................................................................ 67
4.3.2. Naredba while ........................................................................................................ 70
4.3.3. Naredba ifelse ..................................................................................................... 72
4.4. Zadatci za vjebu ........................................................................................................... 78
5. DIFERENCIJALNI I INTEGRALNI RAUN U MATLAB-U .................................. 83
5.1. Deriviranje u MATLABu ............................................................................................ 83
5.1.1. Kompozicija funkcija. Inverz funkcije. Derivacija kompozicije funkcije. Derivacija
inverza funkcije ................................................................................................................ 98
5.2. Raunanje graninih vrijednosti .................................................................................. 104
5.3. Integriranje u MATLAB-u .......................................................................................... 108
5.4. Dodatak: Preinaeno rjeavanje (ne)algebarskih jednadbi ........................................ 114
5.5. Zadatci za vjebu ......................................................................................................... 116
6. REDOVI BROJEVA. REDOVI FUNKCIJA. ............................................................. 124
6.1. Redovi brojeva. ........................................................................................................... 124
6.2. Kriteriji konvergencije redova brojeva........................................................................ 128
mr.sc. Bojan Kovai, vii predava
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
6.3. Redovi funkcija. Redovi potencija. ............................................................................. 132
6.4. Razvoj realne funkcije u Taylorov red ........................................................................ 135
6.5. Razvoj periodine realne funkcije u Fourierov red ..................................................... 145
6.6. Zadatci za vjebu ......................................................................................................... 153
7. RJEAVANJE OBINIH DIFERENCIJALNIH JEDNADBI .............................. 157
7.1. Rjeavanje obinih diferencijalnih jednadbi ............................................................. 157
7.2. Rjeavanje Cauchyjevih zadaa .................................................................................. 159
7.3. Odreivanje Laplaceovih transformata i njihovih inverza .......................................... 162
7.4. Zadatci za vjebu ......................................................................................................... 165
8. OSNOVE DESKRIPTIVNE STATISTIKE ................................................................ 167
8.1. Kvalitativna statistika obiljeja ................................................................................. 167
8.2. Kvantitativna diskretna statistika obiljeja ................................................................ 175
8.3. Kvantitativna kontinuirana statistika obiljeja .......................................................... 185
8.4. Zadatci za vjebu ......................................................................................................... 195
9. PRILAGODBA TEORIJSKIH STATISTIKIH RAZDIOBA EMPIRIJSKIM
PODATCIMA ....................................................................................................................... 201
9.1. Razdiobe diskretnih sluajnih varijabli ....................................................................... 201
9.1.1. Binomna razdioba ............................................................................................... 201
9.1.2. Poissonova razdioba ............................................................................................ 211
9.2. Neprekidne (kontinuirane) sluajne varijable ............................................................. 216
9.2.1. Normalna ili Gaussova razdioba ......................................................................... 216
9.3. Zadatci za vjebu ......................................................................................................... 221
10. OSNOVE NUMERIKE MATEMATIKE ............................................................... 224
10.1. Numeriko rjeavanje (ne)algebarskih jednadbi s jednom nepoznanicom ............. 224
10.2. Zadatci za vjebu ....................................................................................................... 239
10.3. Numerika interpolacija ............................................................................................ 241
10.4. Zadatci za vjebu ....................................................................................................... 251
10.5. Numerika integracija ............................................................................................... 254
10.6. Zadatci za vjebu ....................................................................................................... 265
11. LITERATURA ............................................................................................................... 266
KAZALO POJMOVA ......................................................................................................... 267
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
PREDGOVOR
Suvremena nastava visokokolske matematike u moderno je vrijeme nezamisliva bez aktivne
uporabe raunala. Pritom se sve vie naputa klasian i zastarjeli pristup prema kojemu je
raunalo samo pomono sredstvo (poput depnoga raunara) u provjeri ispravnosti rjeenja
nekoga matematikoga problema. Slobodno se moe rei da se danas i matematika ui ''na
raunalima'' jer kvalitetni programski paketi poput Mathematice, MATLAB-a i drugi
omoguavaju ne samo rjeavanje postavljenih zadataka, nego i analizu rjeenja, pa ak i
stvaranje i rjeavanje posve novih zadataka.
Udbenik pred vama namijenjen je svim studentima, ali i ostalim korisnicima koji se u
svojemu radu susreu s potrebom rjeavanja odreenih matematikih problema u MATLABu. Prva etiri poglavlja sadre osnove rada s MATLAB-om i osnove programiranja u njemu.
U poglavljima 5. 7. obraena je primjena MATLAB-a u diferencijalnom i integralnom
raunu. U poglavljima 8. 10. izlae se primjena MATLAB-a na rjeavanje problema
vjerojatnosti i statistike, odnosno numerike matematike. Na kraju svakoga poglavlja nalaze
se zadaci za vjebu namijenjeni samostalnomu radu. Preporua se da svaki itatelj sam rijei
to vie tih zadataka. Njihova teina je najvie jednaka teini izloenih i potpuno rijeenih
primjera, pa student koji je uspjeno svladao izloeno gradivo ne bi trebao imati nikakvih
potekoa rijeiti ih.
Napominjem da je udbenik pisan uz pretpostavku rada u MATLAB-u verzije 7.0. Vjerujem
da e se itatelji lako snai primjenjujui ga i na neku drugu (raniju ili noviju) verziju toga
programa.
Za nesmetano i kvalitetno praenje tijeka izlaganja nuno je poznavanje osnovnih pojmova
matematike analize i linearne algebre, a poeljno je (ali nije nuno) poznavanje i osnovnih
naela programiranja. Radi izbjegavanja poveanja opsenosti osnovnoga teksta, u ovom
udbeniku se detaljno ne razmatraju matematiki pojmovi nuni za praenje teksta, ve se
spominju samo okvirno. Meutim, u tom smislu ovaj udbenik potpuno slijedi nastavne
planove predmeta Matematika 1, Matematika 2, Vjerojatnost i statistika i Numerika
matematika koji se predaju na prvoj i drugoj godini strunoga studija elektrotehnike
Tehnikoga veleuilita u Zagrebu. Stoga se svo matematiko gradivo potrebno za praenje
tijeka izlaganja moe pronai u skriptama [6] i [9], odnosno udbenicima [7], [8] i [10]
navedenima u popisu koritene literature. Za produbljivanje znanja toga gradiva
preporuujemo udbenike [1] i [2].
Izvorni rukopis udbenika vrlo su pomno i savjesno proitali recenzenti prof.dr.sc. Juraj iftar
s PMF-Matematikoga odsjeka Sveuilita u Zagrebu i doc.dr.sc. Zoran Tomljanovi s Odjela
za matematiku Sveuilita u Osijeku, te iznijeli brojne konstruktivne primjedbe, kritike i
prijedloge u svrhu poboljanja kvalitete teksta. Nastavnici Tehnikoga veleuilita u Zagrebu
Luka Marohni, Renata Opai i Tihana Strmeki koristili su internu verziju udbenika u
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
nastavnoj praksi, te iznijeli svoje vrlo korisne primjedbe i prijedloge na temelju vlastitih
iskustava iz nastavne prakse. Bivi demonstrator iz matematikih predmeta na strunom
studiju raunarstva Veleuilita u Splitu1 Draen Blanua (danas vii savjetnik za razvoj
raunalnih programa u tvrtki NTH Group) sa zavidnim je poletom i entuzijazmom sudjelovao
u nastanku prve verzije ovoga udbenika (kao autoriziranih predavanja), te svojim
primjedbama, prijedlozima i konkretnim zadatcima utjecao na koncept i sadraj spomenute
verzije. Studenti-sluai predmeta Matematiki alati u elektrotehnici na Tehnikom
veleuilitu u Zagrebu u ak.god. 2011/2012., te Andrijana Petrovi i Martina Vuievi,
demonstratorice iz matematikih predmeta na strunom studiju elektrotehnike istoga
veleuilita, svojim su pitanjima i komentarima izravno doprinijeli da pojedini dijelovi teksta
budu jasniji i razumljiviji.
Dekanica Tehnikoga veleuilita u Zagrebu prof.dr.sc. Slavica osovi-Baji i proelnik
Elektrotehnikoga odjela Tehnikoga veleuilita u Zagrebu prof.dr.sc. Kreimir Metrovi
svojim su poticajima izravno utjecali na finaliziranje pisanja udbenika i njegovu pojavu u
javnosti.
Vrlo ugodna mi je dunost iskreno zahvaliti svim spomenutim ljudima na pomoi i suradnji.
Svjestan sam da je, unato pozornosti prigodom viestrukih korektura teksta, izvjestan broj
pogrjeaka ipak preivio. Krivicu za te pogrjeke potpuno preuzimam na sebe. Unaprijed
iskreno zahvaljujem svima koji uoe propust bilo koje vrste, te iznesu dodatne konstruktivne
kritike i prijedloge za poboljanje kvalitete izloenoga teksta.
U Vukovaru, studenoga 2005. i Zagrebu, srpnja 2012.
Autor
Vei dio udbenika koriten je i u nastavi iz kolegija Primijenjena i numerika matematika na strunim
studijima elektrotehnike i raunarstva Veleuilita u Splitu (studiji u Vukovaru).
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1. UVOD U MATLAB
1.1.to je MATLAB?
MATLAB (naziv je skraenica engleskoga naziva MATrix LABoratory) istodobno je i
programski paket namijenjen numerikomu raunanju i modeliranju, ali i vii programski
jezik namijenjen raznim znanstvenim i tehnikim primjenama.
Vana napomena: Zapisi y1y2ym i z1z2zn nisu skraeni zapisi umnoaka y1 y2 ym,
odnosno z1 z2 zn, nego oznaavaju nizove znamenki.
2
Konaan decimalni zapis zapravo znai da se dotini zapis sastoji od konano mnogo (dekadskih) znamenaka.
Moe se pokazati da je ova pretpostavka ekvivalentna pretpostavci da postoje cijeli brojevi b, k i l takvi da
b
vrijedi a = k l , pri emu je navedeni razlomak potpuno skraen.
2 5
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Oblik iz Pouka 1. naziva se znanstveni oblik realnoga broja. On se sastoji od dva dijela.
Broj x.y1y2ym naziva se mantisa, a broj z1z2zn eksponent. Uoimo odmah da je mantisa
uvijek realan broj ija je apsolutna vrijednost (modul) barem jednak 1 (jer joj je prva
znamenka barem jednaka 1), dok je eksponent uvijek cijeli broj. Veliina zapisa mantise i
eksponenta unutar raunala ovisi o realizaciji zapisa unutar raunala.
Iole bolji depni raunar posjeduje zaslon na kojemu je (barem) est mjesta predvieno za
zapis znamenaka mantise, a (tono) dva mjesta predviena su za zapis znamenaka
eksponenta. Stoga se na takvom depnom raunaru moe zapisati i prikazati ukupno 180
milijuna brojeva iz segmenta [9.99999 1099, 9.99999 1099]. Pritom je najmanji prikazivi
pozitivan broj 1.00000 1099.
Postavlja se pitanje: kako bilo koji realan broj a zapisati u znanstvenomu obliku? Jedan od
moguih algoritama jest sljedei:
Korak 1. Utvrditi je li prva znamenka x broja a barem jednaka 1. Ako jest, ii na Korak 2.
Ako nije, ii na Korak 6.
Korak 2. Utvrditi je li iza prve znamenke decimalna toka. Ako jest, ii na Korak 3. Ako nije,
ii na Korak 4.
Korak 3. Mantisa realnoga broja a jednaka je samome broju, a eksponent je jednak 0. Kraj
postupka.
Korak 4. Postaviti poetnu vrijednost eksponenta na 0. Ii na Korak 5.
Korak 5. Prebrojati koliko se ukupno znamenaka nalazi ispred decimalne toke. (Oznaimo
taj broj sa b.) Tada je matrisa broj dobiven postavljanjem decimalne toke neposredno iza
prve znamenke, a eksponent je jednak b 1. Kraj postupka.
Korak 6. Prebrojati koliko se ukupno nula nalazi ispred prve znamenke broja a razliite od
nule. (Oznaimo taj broj sa b.) Tada je matrisa broj dobiven postavljanjem decimalne toke
neposredno iza prve znamenke razliite od nule, a eksponent je jednak (b). Kraj postupka.
Primjer 1. Zapiimo u znanstvenomu obliku realne brojeve 3.14159, 100 000 i 0.00025 pri
emu emo uzeti da mantisa ima ukupno tono 6 znamenaka (jednu ispred i pet iza decimalne
toke), te odredimo mantisu i eksponent za svaki od dobivenih zapisa.
Gore navedeni algoritam provodimo za svaki broj zasebno:
3.14159 prva znamenka je jednaka 3, pa prelazimo na Korak 2. iza prve znamenke jest
decimalna toka pa prelazimo na Korak 3. mantisa je jednaka 3.14159, a eksponent 0
3.14159 = 3.14159 100. Kraj postupka.
100 000 prva znamenka je jednaka 1, pa prelazimo na Korak 2. iza prve znamenke nije
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
decimalna toka pa prelazimo na Korak 4. ispred decimalne toke ima ukupno 6 znamenki
pa je b = 6. Mantisa je jednaka 1.00000, a eksponent 6 1 = 5. Stoga je
100 000 = 1.00000 105. Kraj postupka.
0.00025 prva znamenka je 0, nije barem jednaka 1 pa prelazimo na Korak 6. prva
znamenka razliita od nule jednaka je 2, a ispred nje se nalaze ukupno 4 nule, te je b = 4.
Mantisa je jednaka 2.50000, a eksponent 4. Stoga je 0.00025 = 2.50000 104.
Zbog obveze pisanja eksponenta u superscriptu, pri implementaciji u MATLAB-u nametnula
se potreba za modifikacijom znanstvenoga prikaza kako bi i eksponent bio ispisan ''obinim''
tekstom. U tu je svrhu uporabljena sljedea doskoica:
Pretpostavimo da je a = x. y1 y 2 ... y m 10 z1 z2 ... zn znanstveni oblik realnoga broja a. Tada je
MATLAB-ov znanstveni oblik toga broja
a = x. y1 y 2 ... y m e z1 z 2 ...z n .
Dakle, iza mantise ''dopiemo slovo'' e (koje nema nikakve veze s oznakom baze prirodnoga
logaritma e = 2.7182818!), a eksponent ''spustimo'' iz superscripta u ''obini'' tekst. Pritom
treba napomenuti da zapis eksponenta prema osnovnom dogovoru (default-u) sadri tono tri
znamenke (ako eksponent ima samo dvije znamenke (n = 2), zapisuje se u obliku 0z1z2).
Primjer 2. MATLAB-ovi (znanstveni) oblici realnih brojeva iz Primjera 1. su redom:
3.14159e + 000,
-1.00000e + 005,
2.50000e 004.
O IEEE standardu i oblicima zapisa realnoga broja vidjeti u toki 1.2.3., str. 9.
10
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1.) Prvih 5 znamenki mantise prepisati, a estu ili prepisati (ako je manja od 5) ili uveati za 1
(ako je barem jednaka 5).
2.) Prepisati svih 6 znamenaka mantise zanemarujui sve ostale znamenke u standardnomu
prikazu.
Prvi nain nazivamo zaokruivanje (s tonou na 5 decimala), a drugi ''rezanje'' suvika
decimala. Namee se pitanje koji je od tih dvaju naina bolji. Ovo je jedan od osnovnih
problema numerike matematike. Ovdje emo njegovo rjeenje dati rabei promatrani primjer.
11
na 5 decimala, a sa y broj dobiven
12
11
11
. Mantisa broja
jednaka je 9.166666666. Njezina je
''rezanjem'' suvika decimala broja
12
12
esta znamenka upravo jednaka 6. Stoga je
Oznaimo sa x broj dobiven zaokruivanjem broja
x = 0.916667,
y = 0.916666.
11
11
xi
y kako bismo vidjeli koliko smo
12
12
11
x| = | 0.0000003333| = 3.33333 107,
12
|
11
y| = |0.0000006666| = 6.66666 107.
12
Prva je razlika manja od druge, to znai da smo u prvom sluaju napravili manju pogrjeku.
Stoga moemo zakljuiti da je zaokruivanje bolja metoda od ''rezanja'' suvika decimala.
Zbog toga se sva raunala i iole bolji raunari uvijek slue zaokruivanjem realnih brojeva.
11
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
pri emu vrijedi:
1.) x = 1;
2.) m, n N;
2.) y1, , ym, z1, , zn {0, 1}.
Stoga sva razmatranja koja smo provodili u podtokama 1.2.1. i 1.2.2. vrijede i za brojeve
zapisane u binarnomu sustavu. Budui da je ovaj sustav od iznimne vanosti u raunarstvu,
brojni znanstveni instituti predlagali su razne standarde za organizaciju podataka u
digitalnome raunalu. Jedan od ope prihvaenih je tzv. IEEE standard kojega je predloio
ugledni ameriki znanstveni institut Institute of Electrical and Electronic Engineers, a rabi se
na gotovo svim osobnim raunalima, u programskim paketima kao to su MATLAB,
Mathematica itd. Prema tome standardu, realni se brojevi najee zapisuju u jednom od
sljedea tri oblika (ili, kako to inenjeri raunarstva vole rei, formata):
1.) format jednostruke preciznosti (engl. single precision format);
2.) format dvostruke preciznosti (engl. double precision format);
3.) format etvrtostruke preciznosti (engl. quadriple precision format).
MATLAB koristi format dvostruke preciznosti. U njemu su za zapis realnoga broja
predviena tono 64 bita, i to:
1 bit za zapis predznaka mantise;
11 bitova za zapis predznaka eksponenta i samoga eksponenta;
52 bita za zapis mantise.
Budui da je prema Pouku 2. prva znamenka mantise uvijek jednaka 1, radi utede
memorijskoga prostora ta se znamenka ne pohranjuje. Zbog toga se u formatu dvostruke
preciznosti mogu zapisati brojevi od reda veliine 10307 do reda veliine 10307 iju mantisu
tvori ukupno esnaest znamenaka.
U ovakvom sustavu definiraju se brojevi Inf (skraenica od engl. infinity = beskonano), NaN
(skraenica od engl. Not a Number = ''nije broj'') i eps (''strojni epsilon'') s:
10400 Inf
0
NaN
0
eps = 252 2.2204 1016.
Od tih triju brojeva mi emo najee rabiti konstantu eps. Ona je, zapravo, najmanji
pozitivan broj x takav da u aritmetici raunala vrijedi 1 + x > 1, a moe se interpretirati i kao
ocjena pogrjeke pri zaokruivanju u binarnoj floating point aritmetici dvostruke preciznosti.
U detalje ovdje neemo ulaziti.
12
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
mnoenje
*
(matrino) lijevo dijeljenje
\
dijeljenje
/
potenciranje
^
''je manje od''
<
'' je manje ili jednako'' <=
'' je vee od ''
>
'' je vee ili jednako ''
>=
'' je jednako ''
==
'' je razliito od ''
~=
''i''
&
''ili''
|
''ne''
~
Vana napomena: Jednostruki operator = u MATLAB-u se rabi prigodom inicijaliziranja
vrijednosti neke varijable, dok se dvostruki operator == rabi ako se eli provjeriti istinitost
logike tvrdnje. To emo detaljnije obraditi u Primjeru 4.
Primjer 3. Izraunajmo vrijednost brojevnoga izraza
1
2 1 2
18
+
0.2
3
2
3
2012
1.
U komandnomu prozoru (engl. Command Window) iza znaka >> smjestio se trepui pokaziva. Rabei tipkovnicu utipkavamo redom (bez razmaka!):
(((2/3-1/2)^2*18+1/3)^(-1)-0.2)^2012-1
Obratite pozornost na redoslijed izvedbe raunskih operacija (^ je ''najjaa'', potom slijede * i
/, a ''najslabije'' su + i ). Uoite i da vam tijekom utipkavanja brojeva i operatora MATLAB
daje do znanja koja otvorena i koja zatvorena zagrada tvore par, pa u svakomu trenutku
moete vidjeti jesu li sve zagrade zatvorene ili nisu. Takoer, negativne brojeve (zbog
predznaka) obvezatno piite unutar okruglih zagrada radi preglednosti izraza.
Nakon to smo utipkali gornji niz brojeva i operatora, pritisnemo tono jednu od dviju tipki
Enter na svojoj tipkovnici. Pojavljuje se rezultat:
mr.sc. Bojan Kovai, vii predava
13
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
8.895106873296754e-013
i to je traena vrijednost zadanoga brojevnoga izraza. Ako bismo istu vrijednost eljeli dobiti
''klasinim'' putem (pomou olovke i praznoga lista papira), utvrdili bismo da je ona jednaka
0. to se dogodilo i zbog ega nam MATLAB nije ispisao vrijednost 0?
Do pogrjeke je dolo uslijed zaokruivanja. Naime, ve smo istaknuli da MATLAB ne zna
baratati s razlomcima pa ih pretvara u decimalne brojeve (rabei aritmetiku dvostruke
preciznosti) i rauna s njima. Pri toj pretvorbi nuno dolazi do greaka u ovome sluaju one
su reda veliine 1016. Provedete li i u MATLAB-u raunanje ''korak po korak'', vidjet ete da
se rezultati podudaraju s onima ''runo'' izraunatima sve do potenciranja s 2012. 2012 je
relativno velika potencija pa ''malu'' pogrjeku pretvara u znatno veu. Drugim rijeima, naa
pogrjeka ne bi bila tako izraena da je umjesto 2012 upisan neki bitno manji eksponent (npr.
2).
Zapamtimo sljedee vano:
PRAVILO: Kada zavrimo unos naredbe u tekuemu redu komandnoga prozora, za
njezino izvrenje i prelazak u novi red pritisnemo jednu od tipki Enter na svojoj
tipkovnici.
Primjer 4. Utipkajmo u novomu retku komandnoga prozora
x = 5
MATLAB e ispisati:
x =
5
Ovime smo istodobno i deklarirali varijablu x i definirali da je vrijednost te varijable jednaka
5. Utipkajmo sada u novomu retku komandnoga prozora (opet bez razmaka):
x==100
MATLAB e ispisati:
ans =
0
Otkuda ovaj rezultat? U drugome smo sluaju zahtijevali provjeru istinitosti jednakosti
x = 100.
Budui da smo ranije definirali da je vrijednost varijable x jednaka 5, jednakost x = 100 oito
nije tona, pa je njezina istinitost jednaka 0 (false). Otuda slijedi navedeni rezultat.
14
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
15
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
funkciju exp (vidjeti toku 1.5.) pomou koje raunamo bilo koju potenciju broja e, pa nam
definiranje broja e kao realne konstante nije nuno.
Znaenje funkcije
sinus
kosinus
tangens
kotangens
arkus sinus
arkus kosinus
arkus tangens
arkus kotangens
hiperbolni sinus
hiperbolni kosinus
hiperbolni tangens
hiperbolni kotangens
area sinus hiperbolni
area kosinus hiperbolni
area tangens hiperbolni
area kotangens hiperbolni
potencija broja 2
kvadratni korijen
potencija broja e (ex)
prirodni logaritam (ln x)
logaritam s bazom 2 (log2 x)
dekadski logaritam (log x)
apsolutna vrijednost (modul) kompleksnoga broja
realni dio kompleksnoga broja
imaginarni dio kompleksnoga broja
kompleksno konjugiranje
zaokruivanje broja na najblii cijeli broj
zaokruivanje broja x na najmanji cijeli broj jednak ili vei
od x
zaokruivanje broja x na najvei cijeli broj jednak ili manji
od x
Poziv funkcije
sin(argument)
cos(argument)
tan(argument)
cot(argument)
asin(argument)
acos(argument)
atan(argument)
acot(argument)
sinh(argument)
cosh(argument)
tanh(argument)
coth(argument)
asinh(argument)
acosh(argument)
atanh(argument)
acoth(argument)
pow2(argument)
sqrt(argument)
exp(argument)
log(argument)
log2(argument)
log10(argument)
abs(argument)
real(argument)
imag(argument)
conj(argument)
round(argument)
ceil(argument)
floor(argument)
Vane napomene: 1.) Za raunanje treega, etvrtoga, , n toga korijena iz realnoga broja
ne postoji ''gotova'' matematika funkcija ugraena u MATLAB. Zbog toga se ti korijeni
raunaju kao potencije pomou megapoznate formule pretvorbe korijena u potenciju:
16
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
n
1
an.
a=
2.) Ne zaboravite da funkcija exp rauna iskljuivo potenciju broja e = 2.7181828, a ne bilo
koju opu potenciju. Za raunanje potencije oblika ax koristi se zapis a^x.
Primjer 8. Izraunajmo vrijednosti funkcija ceil, floor i round za x = 0.5, pa usporedimo
dobivene rezultate.
U novom retku komandnoga prozora utipkajmo:
[ceil(-0.5) floor(-0.5) round(-0.5)]
pa e MATLAB ispisati:
ans =
0
-1
-1
Dakle, u prvom je sluaju broj zaokruen na najmanji cijeli broj jednak ili vei od 0.5, a to je
0. U drugom i treem sluaju rezultati su isti: cijeli broj najblii broju 0.5 jednak je
najmanjem cijelom broju jednakom ili manjem od 0.5, a to je 1.
Primjer 9. Izraunajmo vrijednost sljedeega brojevnoga izraza:
2011
2013
2011
2013
arcsin sin
+ cos
tg
ctg
+ arccos
2
4
4
2
1
4
3
1
2
+ + 0.5.
4
Rabei tablice iz toaka 1.4 i 1.6 utipkavamo sljedei niz brojeva i operatora (u jednom retku,
bez razmaka):
((asin(sin(2011*pi/2)+cos(2013*pi/2)-tan(2011*pi/4)*cot(2013*pi/4))+acos(2187^(1/7)2*log(exp(3/4))-log10(sqrt(10)))-atan(abs(conj(1/2-sqrt(3)/2*i))real(i^2012)+imag(i^2013))*4/pi)^2+3)^(-1/2)+round(-pi/4)+0.5
Dobijemo:
ans =
2.264854970235319e-014.
Izraunamo li pravu vrijednost ovoga izraza, dobit emo da je ona jednaka 0. Pogrjeka (reda
k
, k
veliine 1014) se pojavila zbog priblinih izrauna iracionalnih brojeva oblika
n
{2011, 2013}, n {2, 4}, no, praktino se ona moe zanemariti.
17
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
b) 0.002012;
c) 2.002012;
d) 0.20112012.
b) 2.012e + 004;
c) 2.012e 002;
d) 2.012e 003.
3
2
a) sin
cos(2 ) + tg
;
4
3
7
b) ctg
;
3
1
c) arcsin 0.2 arccos + arctg 2 ;
4
e) e
ln
f) log[ln(0.5-0.1234)];
g) |1 i| + Re(20.5 +
3 i ) Im 5 2 i ;
3
d) sh 1.25 + ch
3 5i
Re
1+ i
2+i
h)
.
1 + 2 i
3 + 5i
Im
1 i
2
1
Arsh
+ Arth
;
2
a) 2
2+ 3 ;
1+ 2 tg
b) 3
ln arcsin
5
c)
.
1
3
i
5 5
b) y = arcsin(2012);
c) z = 1.5 ?
18
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
3
A =
2
sin 6
Arch(1.5)
1
2
3
2
cos 2
tg 5
ln 3
log 5
e 2
ctg(21)
1
arctg(3)
1+ e
Arth(log 2) ln
3e
arcsin 0.4
4
3
.
1
2
Arsh(2)
3
0.25
0.50000000000000
0.12310160900874
-0.13533528323661
-0.65466511548606
0.31065185251892
0.86602540378444
-1.57175884780882
-1.41421356237310
0.80061117222304
-2.58010978698585
-0.25000000000000
0.41151684606749
0.34196299352375
-1.44363547517881
0.98056091781096
Napomena: Ako zavretak retka naznaavamo pritiskom tipke Enter, onda sve gore navedene
funkcije, operatori i znamenke ne moraju biti zapisani u istom retku komandnoga prozora.
Vano upozorenje: Matricu nije mogue zadati navodei lanove po stupcima!
mr.sc. Bojan Kovai, vii predava
19
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
20
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
X=B/A
i dobijemo:
X =
-1
3 4
6
''Obinim'' bismo raunom dobili:
X = A1 B.
No, u MATLAB-u moemo postupiti bre. Redefinirajmo matricu B u novomu retku
komandnoga prozora utipkavajui
B=[5;6]
nakon ega pritisnimo Enter. Rjeenje polaznoga sustava dobiva se ''lijevim dijeljenjem''
matrica A i B. Utipkajmo:
X=A\B
i dobit emo:
X =
-4.00000000000000
4.50000000000000
4 4
Dakle, rjeenje polazne matrine jednadbe jest matrica X = = 9 .
4.5 2
Vana napomena: ''Lijevo dijeljenje'' matrica mogue je ako i samo ako matrice A i B imaju
jednak broj redaka!
Transponiranje matrica obavlja se bez ikakvih tekoa kako pokazuje sljedei primjer.
21
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
X'
pa dobivamo:
ans =
-4.00000000000000
4.50000000000000
Uoimo ovdje znaenje varijable ans. Matrici X ' nismo dali ime, ve smo samo ''rekli''
MATLAB-u to elimo napraviti s matricom X. Budui da operacijom transponiranja
dobivamo jedan novi objekt, MATLAB mu je dogovorno dodijelio ime ans.
Mnoenje i ''dijeljenje'' matrica lan po lan su operacije koje se u linearnoj algebri obino ne
spominju prigodom obrade standardnoga matrinoga rauna. U tomu se raunu lan po lan
izvode iskljuivo operacije zbrajanja i oduzimanja. No, ove su operacije daleko jednostavnije
od klasinih operacija mnoenja i ''dijeljenja'' matrica, a u to e nas uvjeriti i sljedea
definicija.
Definicija 1. Neka su A = [aij] i B = [bij] matrice istoga tipa (m, n). Definiramo matrice
C = [cij], D = [dij] i E = [eij] s:
cij := aij bij ;
d ij :=
eij :=
aij
bij
bij
aij
;
,
B = [10 12]
22
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Potom ponovno pritisnimo Enter. U sljedeemu retku utipkajmo
C=A.*B,D=A./B,E=A.\B
pa e MATLAB ispisati:
C =
50
72
D =
0.50000000000000
0.50000000000000
E =
2
72 = 6 12
0.5 = 5 : 10
0.5 = 6 : 12
2 = 10 : 5
2 = 12 : 6.
Potenciranje matrica lan po lan poseban je sluaj mnoenja matrica lan po lan, a nastupa
kada vrijedi jednakost A = B.
F =
25
36
Napomenimo da gore definirane operacije mnoenja i dijeljenja lan po lan imaju smisla ako
bilo koju matricu zamijenimo nekim realnim brojem. Tada dobivamo ''klasino'' mnoenje
(odnosno, ''dijeljenje'') matrice nekim skalarom.
F =
70
84
G =
1.00000000000000
1.20000000000000
23
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
H =
1.00000000000000
1.20000000000000
Uoimo odmah da se rezultati ''lijevoga'' i ''desnoga dijeljenja'' lan po lan u ovom sluaju
podudaraju jer su oba matrina ''dijeljenja'' lan po lan zamijenjena ''klasinim'' dijeljenjem.
Sve osnovne matematike funkcije navedene u toki 1.5. imaju smisla i ako je njihov
argument matrica bilo kojega tipa jer ''djeluju'' na svaki lan matrice zasebno. Evo primjera.
2009
A=
3
2011
2
2013
2015
.
6
sin(A)
MATLAB e ispisati:
ans =
-0.86602540378453
-1.00000000000000
3
Tona vrijednost izraza sin(A) jest
2
Primjer 9. Izraunajmo e
0.00000000000015
-0.49999999999999
1
1 0 .
2
za matricu A definiranu s
A = [0 1 4] .
A=[0 1 4];
exp(sqrt(A))
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1.00000000000000
Tona vrijednost izraza e
2.71828182845905
jest 1 e e 2 .
24
7.38905609893065
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Sintaksa
Argument(i) funkcije
zeros(m, n)
eye
eye(n)
diag
diag(A)
rank
size
rank(A)
size(A, n)
sum
sum(A)
prod
prod(A)
det
det(A)
inv
inv(A)
Namjena funkcije
Generira nulmatricu s m
redaka i n stupaca.
prirodan broj
Generira
jedininu
matricu reda n.
jednoretana
ili
jednostupana Generira
dijagonalnu
matrica
matricu iji su elementi
redom elementi matrice
A.
bilo koja matrica
Rauna rang matrice A.
prvi argument je bilo koja matrica, a size(A,1) ispisuje broj
drugi tono jedan element skupa {1, redaka, a size(A,2) broj
2}
stupaca matrice A.
bilo koja matrica
Rauna zbroj lanova u
stupcima matrice A.
bilo koja matrica
Rauna
umnoak
lanova u
stupcima
matrice A.
bilo koja kvadratna matrica
Rauna
determinantu
matrice A.
bilo koja regularna matrica
Odreuje inverz matrice
A.
A = 1
2
2
1
1
1 1 2
3
3 1
1 2 2 , B = , C = 4 2 1 , D =
.
2
5
4
1 3 9
3
25
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Potom prijeimo na sljedei primjer.
Primjer 10. Generirajmo nulmatricu tipa (4, 5) i jedininu matricu reda 6. Oznaimo te dvije
matrice redom s E i F. U novi redak komandnoga prozora upiimo:
E=zeros(4,5), F=eye(6)
MATLAB e ispisati:
E =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
1
0
F =
0
0
0
0
0
1
Primjer 11. Generirajmo dijagonalne matrice G i H iji su elementi redom elementi matrice
A, odnosno matrice B. U novi redak komandnoga prozora upiimo:
G=diag(A),H=diag(B)
i MATLAB e ispisati:
G =
-1.00000000000000
0
0
0
H =
-1.00000000000000
0
0
0
0
0.70710678118655
0
0
0
0
1.00000000000000
0
0
0
0
2.82842712474619
0
0.33333333333333
0
0
0
0
2.00000000000000
0
0
0
0
-1.33333333333333
Primjer 12. Odredimo rangove matrica A, B, C i D. (Kaemo da neka matrica A ima rang
jednak r ako maksimalan linearno nezavisan podskup skupa njezinih redaka (ili stupaca) ima
tono r elemenata.) Oznaimo traene rangove redom s a, b, c i d. U novi redak komandnoga
prozora upiimo:
a=rank(A), b=rank(B), c=rank(C), d=rank(D)
pa e MATLAB ispisati:
mr.sc. Bojan Kovai, vii predava
26
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a =
1
b =
1
c =
2
d =
2
Koje smo od dobivenih rezultata mogli unaprijed oekivati?
Primjer 13. Oznaimo sa e broj redaka matrice C, a sa f broj stupaca matrice D. (Oito je e =
= 3 i f = 2.) Generirajmo te veliine u MATLAB-u. U novi redak komandnoga prozora
upiimo:
e=size(C,1), f=size(D,2)
i dobit emo oekivane rezultate:
e =
3
f =
2
Funkcija size nam u prvi trenutak moe izgledati posve beskorisno, no pravu njezinu korist
vidjet emo u 4. poglavlju kada se budemo susreli s tzv. funkcijskim m-datotekama.
Primjer 14. Odredimo zbroj i umnoak elemenata u svakomu pojedinomu stupcu matrice C.
Oznaimo traeni zbroj sa z, a umnoak sa u. U novi redak komandnoga prozora upiimo:
z=sum(C),u=prod(C)
MATLAB e ispisati:
z =
6
-6
12
-6
18
u =
Tako je, npr., zbroj svih elemenata prvoga stupca matrice C jednak 6, a umnoak svih
elemenata drugoga stupca te matrice jednak 6.
Pogledajmo kako ''rade'' te dvije funkcije kad su im argumenti jednoretane ili jednostupane
matrice. U tu emo svrhu odrediti njihove pripadne vrijednosti za matrice A i B. Pritisnimo
tipku pa e se u tekuemu retku komandnoga prozora pojaviti posljednje upisana naredba:
z=sum(C),u=prod(C)
27
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pomicanjem pokazivaa i zamjenom slova C slovom A preuredimo tu naredbu u:
z=sum(A),u=prod(A)
Dobit emo:
z =
3.53553390593274
u =
-2.00000000000000
Uoavamo da je vrijednost varijable z jednaka zbroju svih elemenata matrice A, a vrijednost
varijable u jednaka je njihovu umnoku.
Ponovno pritisnimo tipku i preuredimo posljednje upisanu naredbu ovako:
z=sum(B),u=prod(B)
Dobit emo:
z =
0
u =
0.88888888888889
Uoavamo da je vrijednost varijable z jednaka zbroju svih elemenata matrice B, a vrijednost
varijable u jednaka je njihovu umnoku.
Moemo zakljuiti: Ako je A jednoretana ili jednostrupana matrica, onda su vrijednosti
funkcija sum(A) i prod(A) zbroj, odnosno umnoak svih elemenata matrice A. No, vrijedi i
openito:
Primjer 15. Jedan od standardnih zadataka o matricama obino glasi: Ispitajte ima li
matrica inverz i, ako ima, odredite ga. Taj smo zadatak rjeavali tako to smo najprije
raunali determinantu zadane matrice, pa ako je ona bila razliita od nule, zakljuili smo da
zadana matrica ima inverz i njega smo potom odreivali tehniki sloenim postupkom. Ono
to smo tada radili 15-ak minuta MATLAB e sad napraviti za priblino 0.00015 sekundi.
Dakle, ispitajmo imaju li matrice C i D svoje inverze i, ako imaju, odredimo ih. Rabit emo
funkcije det i inv. Za matricu C oznaimo c := det(C) i K := C1. U novomu retku
komandnoga prozora izraunajmo vrijednosti tih veliina. Utipkajmo:
28
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
c=det(C),K=inv(C)
Dobit emo sljedei ispis:
c =
0
Warning: Matrix is singular to working precision.
K =
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Inf
Time MATLAB dozvoljava mogunost da je determinanta matrice ipak razliita od nule (npr.
reda veliine 10-500), ali napominje da s obzirom na postavljeni format dvostruke preciznosti
on to ne moe utvrditi. Kako bi varijabli K ipak bila dodijeljena odreena vrijednost,
uporabljena je unaprijed deklarirana varijabla Inf (vidjeti toku 1.2.).
Isti postupak sada provedimo za matricu D. Oznaimo najprije d := det(D) i L := D1.
Pritisnimo tipku i preuredimo posljednje upisanu naredbu ovako:
d=det(D),L=inv(D)
Dobit emo:
d =
-1
L =
2.00000000000000
5.00000000000000
-1.00000000000000
-3.00000000000000
Funkcija det ipak nije dovoljno pouzdana za provjeru singularnosti neke realne matrice . Naime, za singularne
matrice ta funkcija esto vraa neku malu vrijednost razliitu od nule, pa je u takvim sluajevima teko
razlikovati radi li se o singularnoj matrici ili regularnoj matrici .
29
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
>> a=5;b=7;
>> _
U prvi mah mislimo da je MATLAB ''zatajio'' jer nita nije ispisao. A nita nije ispisao jer
smo mu stavljajui znakove ; rekli da ne elimo ispis niti vrijednosti varijable a niti
vrijednosti varijable b. On je ''posluno'' tim varijablama dodijelio vrijednosti koje smo mu
zadali, pa ''eka'' nae daljnje naputke to da radi s njima.
Utipkajmo sad (u retku gdje se nalazi trepui pokaziva):
>> a=5,b=7;c=6,d=8;
MATLAB e ispisati:
a =
5
c =
6
Protumaimo to se ovdje dogodilo. Stavljajui znak zareza ''rekli'' smo MATLAB-u: ''Unos
naredbe je zavren. elimo njezino izvrenje i ispis rezultata.'' Stavljajui znak toka-zarez
''rekli'' smo MATLAB-u: ''Unos naredbe je zavren. elimo njezino izvrenje, ali ne i ispis
rezultata.'' Nakon to smo pritisnuli Enter, MATLAB je ''proitao'' posljednje upisani redak na
sljedei nain: ''Varijabli a trebam dodijeliti vrijednost 5 i ispisati rezultat. Varijabli b trebam
dodijeliti vrijednost 7 bez ispisa rezultata. Varijabli c trebam dodijeliti vrijednost 6 i ispisati
rezultat. Varijabli d trebam dodijeliti vrijednost 8 bez ispisa rezultata.'' Zbog toga se kao
rezultat ovoga niza naredbi pojavio ispis vrijednosti varijabli a i c.
30
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Ovome smo posvetili posebnu pozornost jer je esta poetnika pogrjeka u MATLAB-u
izostavljanje toke-zareza u pisanju m-datoteka (koje emo upoznati u 4. poglavlju) zbog
kojega se javlja ''glomazan'' ispis posve nepotrebnih podataka. Vano je zapamtiti da svaki
ispis rezultata neke naredbe moemo sprijeiti stavljajui toku-zarez na kraj te naredbe.
Jo jedan koristan znak je i dvotoka. Ona je posebno korisna pri generiranju razliitih
matrica. Tako naredba
ime_varijable = matrica(n,:)
gdje su matrica unaprijed zadana realna matrica i n N prirodan broj, pohranjuje n ti redak
matrice matrica u varijablu ime_varijable. Analogno, naredba
ime_varijable = matrica(:, n)
gdje su matrica unaprijed zadana realna matrica i n N prirodan broj, pohranjuje n ti
stupac matrice matrica u varijablu ime_varijable. Pogledajmo to na primjeru.
log 5
A=
sin 12
1+ i
Re i
e 2
ctg 2
1 i
Im
2i
ln 3
1
arcsin
3
3 1
i
2 2
A=[-1
2
0;log10(5)
exp(-2)
log(3);sin(pi/12)
1/tan(2)
asin(1/3);real((1+i)/i) imag((1-i)/(2*i)) abs(conj(-sqrt(3)/21/2*i))]
pa dobijemo:
31
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
A =
-1.00000000000000
0.69897000433602
0.25881904510252
1.00000000000000
2.00000000000000
0.13533528323661
-0.45765755436029
-0.50000000000000
0
1.09861228866811
0.33983690945412
1.00000000000000
Preostaje upisati:
TRECIREDAK=A(3,:),DRUGISTUPAC=A(:,2)
Dobivamo:
TRECIREDAK =
0.25881904510252
-0.45765755436029
0.33983690945412
DRUGISTUPAC =
2.00000000000000
0.13533528323661
-0.45765755436029
-0.50000000000000
Ako imamo jednoretanu matricu iji elementi tvore aritmetiki niz (vrlo est sluaj kod
petlji!), moemo je generirati rabei naredbu ija je sintaksa:
ime_matrice=prvi_lan_niza:razlika_niza:posljednji_lan_niza
gdje su nazivi varijabli sugestivno odabrani kako bi se znalo o emu je rije. Takav nain
generiranja matrice naziva se generiranje prema razmaku meu (susjednim) elementima. Ako
je razlika niza jednaka 1, ona se ne mora pisati. Pokaimo to na primjeru.
2
5
3
5
4
5
. Uoimo da
lanovi te matrice tvore aritmetiki niz iji je prvi lan 0, posljednji , a razlika . Matrica je
5
jednoretana pa moemo primijeniti gornju naredbu. U novi redak komandnoga prozora
utipkamo:
A=0:pi/5:pi
pa dobivamo:
A =
Columns 1 through 4
0
0.62831853071796
Columns 5 through 6
2.51327412287183
3.14159265358979
1.25663706143592
32
1.88495559215388
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Ovakav se nain ispisa u MATLAB-u pojavljuje kad zatraimo da MATLAB sm generira
neku matricu s vie od 4 stupca. Budui da sve elemente svih stupaca jednoga retka ne moe
ispisati u istomu retku (zbog ogranienosti komandnoga prozora), MATLAB ispisuje
elemente po stupcima svrstavajui stupce u grupe s (najvie) 4 elementa.
A=linspace(0,pi,6)
i dobivamo isti rezultat kao i u Primjeru 3. Ovakav nain generiranja matrice naziva se
generiranje prema broju elemenata.
Ekvivalentno, skup S je linearno zavisan ako je determinanta matrice koju tvore njegovi
elementi jednaka nuli.
Napomenimo da u Pouku 1. nije bitan poredak elemenata skupa S prigodom formiranja
pripadne matrice. Naime, mi jedino elimo utvrditi je li determinanta te matrice jednaka nuli
ili razliita od nule. Budui da zamjena dvaju redaka (stupaca) determinante mijenja jedino
njezin predznak, zakljuujemo da promjena poretka vektora ne utjee na zakljuak o linearnoj
(ne)zavisnosti polaznoga skupa vektora.
Posebno, za n = 3 linearnu nezavisnost trolanoga skupa radijvektora moemo opisati i na jo
neke naine.
33
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pouak 2. Neka je S = {(a11, a12, a13), (a21, a22, a23), (a31, a32, a33)} skup radijvektora. Tada je
skup S linearno nezavisan ako i samo ako je mjeoviti umnoak elemenata skupa S u bilo
kojem poretku tih elemenata razliit od nule.
Pouak 2. je, dakako, izravna posljedica injenice da je mjeoviti umnoak triju radijvektora
jednak upravo determinanti matrice koju tvore ti radijvektori. Geometrijska interpretacija
mjeovitoga umnoka radijvektora jest
Pouak 3. Neka je S = {(a11, a12, a13), (a21, a22, a23), (a31, a32, a33)} V3(O) skup radijvektora.
a) Obujam paralelepipeda kojega razapinju svi elementi skupa S jednak je apsolutnoj
vrijednosti mjeovitoga umnoka tih elemenata.
b) Obujam tetraedra kojega razapinju svi elementi skupa S je est puta manji od obujma
paralelepipeda iz a) podzadatka.
Naglasimo da mjeoviti umnoak triju radijvektora openito moe biti bilo koji realan broj,
pa, zbog injenice da obujam geometrijskoga tijela ne moe biti strogo negativan realan broj,
moramo izraunati apsolutnu vrijednost toga umnoka.
Pouak 4. Neka je zadan sustav n linearnih jednadbi s n nepoznanica:
a11 x1
a12 x2
a21 x1
an1 x1
+ a22 x2
+ a n 2 x2
+ ... +
a1n xn = b1
+ ... + a2 n xn = b2
+ ... + ann xn = bn
Neka su
a11 a12 ... a1n
x1
b1
a
b
a22 ... a2 n
x
, X = 2, b = 2
A = 21
an1 an 2 ... ann
xn
bn
redom matrica sustava, matrica nepoznanica i matrica slobodnih lanova zadanoga sustava.
Za svaki k = 1, 2, , n oznaimo s Ak matricu dobivenu zamjenom ktoga stupca matrice A
matricom slobodnih lanova sustava. Tada:
sustav ima jedinstveno rjeenje (tj. sustav je Cramerov) ako je det(A) 0 i u tome je
sluaju njegovo rjeenje dano formulom X = A1 b;
sustav nema rjeenja ako je det(A) = 0 i ako postoji barem jedan k {1, , n} takav da
je det(Ak) 0;
sustav ima beskonano mnogo razliitih rjeenja ako je det(A) = det(A1) = = det(An)
= 0.
34
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pogledajmo primjenu ovih pouaka na nekoliko primjera.
Primjer 1. Ispitajmo je li skup radijvektora S = {(2, 3, 4), (3, 4, 2), (1, 0, 22)} linearno
nezavisan. Detaljno obrazloimo sve svoje tvrdnje.
Strategija rjeavanja slijedi iz gornje napomene. Formirat emo matricu A iji e retci biti
vektori koji tvore skup S, pa emo izraunati determinantu te matrice. Bude li ta determinanta
jednaka nuli, skup S bit e linearno zavisan, a u suprotnom, skup S bit e linearno nezavisan.
Vrijedi istaknuti da pri formiranju matrice A redoslijed vektora koji tvore skup S moe biti
proizvoljan. Naime, mi jedino elimo usporediti vrijednost determinante matrice A s nulom,
pa zamjena dvaju redaka determinante (prigodom koje se mijenja jedino predznak
determinante) nema utjecaja na konaan zakljuak.
Radi preglednosti, najprije poistimo MATLAB-ov komandni prozor. U novi redak toga
prozora utipkajmo:
clc
i pritisnimo Enter. to se dogodilo? Sav sadraj koji je bio ispisan u komandnom prozoru je
nepovratno nestao! Bez brige, nije se dogodio smak svijeta: oien je samo komandni
prozor, ali vrijednosti varijabli iz ranijih primjera ostale su netaknute (tj. pohranjene u
odgovarajuim memorijskim elijama), pa ih, prema potrebi, moemo i nadalje koristiti.
U nova dva retka komandnoga prozora utipkajmo:
ans =
0
Dakle, determinanta pripadne matrice jednaka je nuli, pa je skup S linearno zavisan. Za
vjebu, izrazite trei element toga skupa kao linearnu kombinaciju preostalih dvaju elemenata.
Primjer 2.
e, 3 , 3 e
)}
1
utipkamo:
ln
35
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
6.57866424431862
Dakle, determinanta matrice koju tvore elementi zadanoga skupa je razliita od nule, pa je
zadani skup linearno nezavisan.
M =
-12
Vp =
12
Vt =
2
Dakle, mjeoviti umnoak elemenata skupa S u zadanom poretku jednak je 12. Obujam
paralelepipeda kojega razapinju svi elementi skupa S iznosi 12 kub. jed. Obujam tetraedra
kojega razapinju svi elementi skupa S iznosi 2 kub. jed.
ans =
0
Dakle, mjeoviti umnoak zadanih radijvektora jednak je nuli, pa su oni komplanarni. Za
vjebu, izrazite trei radijvektor kao linearnu kombinaciju prvih dvaju radijvektora.
Bilo koje linearne sustave u MATLAB-u izravno moemo rjeavati koristei funkciju solve
mr.sc. Bojan Kovai, vii predava
36
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
i operacije s tzv. simbolikim objektima koje emo upoznati u 5. poglavlju. Ovdje emo
prikazati tehniki malo sloeniji nain rjeavanja linearnih sustava reda n, i to pomou
Cramerova pravila. Preciznije, na primjerima emo rijeiti
2 3 4
3
A = 3 4 2 , b = 3 .
4 2 3
8
Poistimo MATLAB-ov komandni prozor, pa u novom retku toga prozora utipkajmo:
det(A)
pritisnemo Enter, pa e MATLAB ispisati:
ans =
53
Dakle, determinanta matrice sustava je razliita od nule, pa je sustav Cramerov i ima
jedinstveno rjeenje. Da bismo dobili to rjeenje pomou Cramerova pravila, u nova dva retka
komandnoga prozora utipkamo:
A1=[b A(:,2) A(:,3)];A2=[A(:,1) b A(:,3)]; A3=[A(:,1) A(:,2) b];
X=1/det(A)*[det(A1) det(A2) det(A3)]
Uoimo kako smo efektivno dobili matrice A1, A2 i A3. U svakoj od njih smo tono jedan
stupac matrice A zamijenili matricom slobodnih lanova, a ostala dva stupca matrice A smo
37
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
prepisali. Dakle, matricu moemo zadati i koristei retke/stupce ve zadanih matrica.
Matricu nepoznanica X dobili smo izravno primjenjujui Cramerovo pravilo.
Pritisnemo Enter, pa e MATLAB ispisati:
X =
-1
X=A\b
(ili, ekvivalentno, X=inv(A)*b) ponovno kao rezultat (ali zapisan u drugaijem obliku
zapisa realnoga broja) daje
X =
-1.00000000000000
1.00000000000000
2.00000000000000
Zakljuimo: polazni sustav ima jedinstveno rjeenje (x, y, z) = (1, 1, 2).
A = 21 26 31 , b = 36 .
213 37 77
117
Poistimo MATLAB-ov komandni prozor, pa u dva nova retka toga prozora utipkamo:
38
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
0
Odatle slijedi da polazni sustav ili nema niti jedno rjeenje ili ima beskonano mnogo
rjeenja. Utipkamo li kao u Primjeru 5.
A1=[b A(:,2) A(:,3)];A2=[A(:,1) b A(:,3)]; A3=[A(:,1) A(:,2) b];
X=1/det(A)*[det(A1) det(A2) det(A3)]
X=A\b
u novom retku komandnoga prostora i potom pritisnemo Enter, MATLAB e ispisati:
39
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
U ovom nas je sluaju MATLAB upozorio da je matrica priblino singularna (ili tzv. loe
skalirana, to se odnosi na problem tzv. skaliranja matrice o kojemu ovdje neemo govoriti),
da rezultat moe biti netoan i da je rezultat procijenjen s parametrom 5.9 1018 (radi
ilustracije, procjenitelj je dobar to je njegova vrijednost blia jedinici, a loiji to je njegova
vrijednost blia konstanti eps). Stoga je rije o loe procijenjenom rjeenju sustava. Ako ste
se poveselili da u ovakvim sluajevima MATLAB ispisuje jedno od spomenutih beskonano
mnogo postojeih realnih rjeenja polaznoga sustava, to ste prerano uinili. Naime, nije teko
provjeriti da (x, y, z) = (0.17958412098299, 0.04725897920605, 1) nije rjeenje polaznoga
sustava. Dakle, niti ova metoda ne omoguuje ispis barem jednoga od beskonano mnogo
postojeih realnih rjeenja polaznoga sustava.
A = 5 13 7 , b = 8 .
1 107 89
25
Poistimo MATLAB-ov komandni prozor, pa u dva nova retka toga prozora utipkamo:
ans =
0
Odatle slijedi da polazni sustav ili nema niti jedno rjeenje ili ima beskonano mnogo
rjeenja. Utipkamo li kao u Primjeru 5.
A1=[b A(:,2) A(:,3)];A2=[A(:,1) b A(:,3)]; A3=[A(:,1) A(:,2) b];
X=1/det(A)*[det(A1) det(A2) det(A3)]
40
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
X=A\b
u novom retku komandnoga prostora i potom pritisnemo Enter, MATLAB e ispisati:
Iz dobivene vrijednosti procjeniteljske varijable zapravo moemo zakljuiti da su sve znamenke svake
komponente dobivenoga rjeenja netone. Npr. za vrijednost RCOND = 0.01 mogli bismo zakljuiti da su
netone samo posljednje dvije znamenke svake komponente dobivenoga rjeenja itd.
41
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
0 .5
2
1 .2
3
3
.
e) E = 3 7 log 0.5
41.23
2 3 3 ln 2
1 .9
3
42
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
6. a) Za matricu B iz 1.b) zadatka odredite matricu Y = ln
B+ 3
. Za svaki lan matrice Y
2
{(
)(
2 3, 3 + 2, 5 ,
)(
5 3, 5 + 3, 2 ,
)}
5 2, 5 + 2, 3 ;
12. Klasificirajte sljedee sustave linearnih jednadbi u zavisnosti o ukupnom broju njihovih
rjeenja i obrazloite svoje odgovore:
a) 7 x 11 y + 13 z = 6, 11 x 13 y + 7 z = 4, 13 x + 7 y 11 z = 24;
b) 24 x 31 y + 15 z = 131, 15 x + 24 y 31 z = 126, (31) x 15 y + 24 z = 71;
c) (5) x + 4 y 3 z = 2, (2) x 3 y + 4 z = 5, x 33 y + 37 z = 40;
d) (10) x 11 y + 12 z = 13, (13) x + 12 y 11 z = 10, 8 x 149 y + 150 z = 32;
e) 35 x + 71 y + 97 z = 1, (71) x + 97 y + 35 z = 2, 28 x + 1744 y + 1700 z = 29.
43
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
13. Iskljuivo pomou Cramerova pravila rijeite sljedee sustave linearnih jednadbi:
a)
3 x + 2 y = 12,
2 x + 3 y = 13;
x + y + z = 4,
b)
x + 2 y + 3 z = 5,
5 x + 3 y + 5 z = 14;
3 x + 2 y + z = 1,
c)
7 x + 6 y + 5 z = 2,
5 x + 4 y + 3 z = 2;
5 x 2 y + 3 z = 11,
d) 3 x + 7 y z = 9,
2 x + 5 y + 2 z = 2;
2 x 5 y + 4 z + 3 w = 4,
e)
3 x 4 y + 7 z + 5 w = 11,
.
4 x 9 y + 8 z + 5 w = 8,
3 x + 2 y 5 z + 3 w = 3.
a=3/2;b=4/5
a=3+5,b=4-5;
a=5/6;c=a+1/6,b=a-1/3
a=sqrt(9/4);b=log(a-1/2);c=log10(b+9);
15. Bez uporabe MATLAB-a odredite vrijednosti varijabli a i b nakon izvrenja sljedeega
niza naredbi:
a=3/2;b=1/4;a=a+b,b=b-a
16. Bez uporabe MATLAB-a odredite vrijednosti varijabli x, y i z nakon izvrenja svakoga od
sljedeega niza naredbi:
a) x=1/2;y=1/2;z=1;x=x-y+z,y=x-y-z,z=x+y+z;
b) x=1/6;y=1/3;z=1/2;x=x+y+z,y=y+z-x,z=z+x-y;
c) x=i;y=pi;z=exp(1);x=x*y*z,y=x/y,z=z/(x*y).
44
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
3. GRAFIKA U MATLAB-U
MATLAB nam omoguuje crtanje razliitih vrsta grafikona (linijskih, retanih, stupanih itd.)
U ovom emo poglavlju upoznati ''klasine'', odnosno linijske grafikone, dok emo retane i
stupane upoznati u 5. poglavlju prigodom obraivanja grafikih prikaza statistikih veliina.
Korak 1. Svakom elementu aij pridrui se ureeni par (i, aij). Tako se dobije ukupno m n
razliitih toaka.
Korak 2. Toke dobivene u Koraku 1. ucrtaju se u pravokutni koordinatni sustav u ravnini.
Korak 3. Stavi se j := 1. Nacrta se ukupno m spojnica toaka (i, aij) i (i + 1, ai + 1, j),
za svaki i = 1, 2, , m 1. Nakon povlaenja zadnje (m 1 ve) spojnice stavi se j := j + 1.
Korak 4. Ako je j n, ponovi se Korak 3. (za novi j). Ako je j > n, postupak je gotov.
Na osnovi ovoga algoritma pokree se i izvrava funkcija plot. Pogledajmo njezinu primjenu
na primjerima.
A=[-1 2 0 1]
Pritisnemo Enter, pa u novomu retku komandnoga prozora utipkamo:
plot(A)
Dobivamo sljedei grafikon otvoren u novomu prozoru (vidjeti Sliku 1.):
45
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1.5
0.5
-0.5
-1
1
1.5
2.5
3.5
Slika 1.
Uoimo kako je dobivena ova izlomljena crta. Najprije su ucrtane toke (1,1), (2,2), (3,0) i
(4,1). Potom su crtom spojene toke (1,1) i (2,2), (2,2) i (3,0), te (3,0) i (4,1). Novootvoreni
prozor zatvaramo tako da najprije pomicanjem mia po podlozi premjestimo pokaziva u
gornji desni kut na ikonicu s oznakom , a potom jednim klikom lijeve tipke mia na tu
ikonicu zatvorimo prozor i vratimo se u ''stari'' komandni prozor. (Onima koji vie vole
tipkovnicu preporuamo istodobno pritiskanje tipki Ctrl i W.)
Ako ne elimo crtom spojiti susjedne toke, to moramo ''rei'' MATLAB-u. Utipkajmo u novi
redak komandnoga prozora
plot(A,'*')
pa emo u novootvorenom prozoru dobiti sljedeu sliku (vidjeti Sliku 2.):
46
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1.5
0.5
-0.5
-1
1
1.5
2.5
3.5
Slika 2.
plot(B)
Dobijemo sljedei skup linijskih grafikona (vidjeti Sliku 3.):
47
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
-2
-4
-6
-8
-10
1
1.2
1.4
1.6
1.8
2.2
2.4
2.6
2.8
Slika 3.
Objasnimo kako je dobivena npr. crvena izlomljena crta. Ona je nastala spajanjem toaka
(1,3) i (2, 6), te (2, 6) i (3, 9). Te su toke dobivene pomou elemenata 3. stupca matrice B.
Npr.: element 3 stoji na presjeku toga stupca i 1. retka, to znai da je i = 1 (varijabla i
oznaava redak u kojemu se nalazi element aij), pa se (u Koraku 1. algoritma funkcije plot)
dobije toka (1, 3). Potpuno analogno se dobiju i ostale dvije toke promatrane crte.
Navedeno se pravilo odnosi iskljuivo za funkciju plot jer postoje i druge funkcije MATLAB-a (npr.
ezplot) pogodne za crtanje grafova funkcija vie varijabli kojima domena nije segment. S druge strane,
koristei varijablu NaN realnu funkciju moemo crtati npr. i na uniji intervala (vidjeti Primjer 2.).
48
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
To se posebno odnosi na realne funkcije realne varijable kojima je podruje definicije cijeli
skup R. Nije mogue nacrtati graf takve funkcije na cijelom skupu R jer taj skup nema niti
najmanji niti najvei element. Uostalom, kada ''runo'' crtate grafove funkcija u svojim
biljenicama, nesvjesno se opredijelite za odreeni dio ravnine (u pravilu onaj koji sadri
ishodite pravokutnoga koordinatnoga sustava u ravnini) pa crtate traeni graf uzimajui
vrijednosti nezavisne varijable iz toga podruja. Isto to radi i MATLAB, samo mu moramo
''rei'' koje podruje ravnine elimo uzeti.
U crtanju funkcija glavnu ''ulogu'' imaju matrice. I kada ''runo'' crtamo grafove, mi najprije
odredimo parove toaka kroz koje prolazi traeni graf i zapiemo ih tablino. Da MATLAB-u
ne bismo morali neprekidno ''govoriti'' to treba uzeti za x kako bi izraunao f (x), koristimo
jednoretane matrice iji elementi tvore aritmetiki niz. (Generiranje takvih matrica nauili
smo u prethodnom poglavlju (vidjeti toku 2.4.).) Prvi lan toga niza je donja granica
segmenta, a posljednji gornja granica segmenta. Kako bi slika bila to bolja, za razliku niza
pogodno je uzeti ''mali'' decimalan broj (npr. 0.01, 0.005 i sl.). Ne istaknemo li drugaije,
dogovorno pretpostavljamo da je spomenuta razlika jednaka 0.01.
Crtanje grafa funkcije na segmentu radi se algoritamski u tri koraka:
Korak 1. Rabei generiranje prema razmaku meu susjednim elementima generira se matrica
iji je prvi lan donja granica segmenta, razlika (dogovorno) jednaka 0.01, a posljednji lan
gornja granica segmenta.
Korak 2. Generira se matrica vrijednosti zadane funkcije u svakome elementu matrice
dobivene u Koraku 1.
Korak 3. Svakom elementu dobivenomu u Koraku 1. pridrui se vrijednost funkcije dobivena
u Koraku 2., te se dobiveni ureeni par ucrta u pravokutni koordinatni sustav u ravnini.
Pokaimo primjenu ovoga algoritma na primjerima.
f ( x) =
2 x
.
x2 + 1
Slijedimo korake gore opisanoga algoritma. Prvi je korak generiranje ''matrice x-eva''. Budui
da MATLAB dozvoljava da ime matrice bude i malo tiskano slovo, tu emo matricu oznaiti
sa x. Njezin je prvi lan 6, razlika 0.01, a posljednji lan 6. Dakle, u novi redak komandnoga
prozora utipkavamo:
x=-6:0.01:6;
Uoimo ovdje kljunu ulogu znaka toka-zarez. Da ga nismo stavili na kraj retka, MATLAB
bi ispisao svih 1200 elemenata matrice x i dobili bismo nepotrebnu guvu u MATLAB-ovu
49
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
komandnomu prozoru. Zbog toga ga uvijek valja staviti na kraj retka.
U novomu retku komandnoga prozora formiramo matricu vrijednosti zadane funkcije,
odnosno ''matricu y-a''. Nju dobivamo raunski mnoenjem, dijeljenjem i potenciranjem
lanova matrice x lan po lan. (Ovo dobro zapamtite jer se pri crtanju grafova esto grijei
zamijenjujui operacije ''lan po lan'' s ''klasinim'' aritmetikim operacijama. Zato: oprez!)
Utipkavamo:
y=2*x./(x.^2+1);
(Podsjetimo se: Mnoenje, odnosno zbrajanje matrice sa skalarom lan po lan podudara se s
''obinim'' mnoenjem, odnosno zbrajanjem sa skalarom.) I opet smo na kraju retka stavili
toku-zarez kako ne bismo dobili ispis svih elemenata matrice y.
plot(x,y)
pa dobivamo sljedei graf (vidjeti Sliku 4.):
1
0.8
0.6
0.4
0.2
-0 . 2
-0 . 4
-0 . 6
-0 . 8
-1
-6
-4
-2
Slika 4.
Primjer 2. U Primjeru 1. zadatak nam je bio nacrtati grafiki prikaz neprekidne funkcije. No,
to e se dogoditi ako funkcija ima prekid (1. ili 2. vrste) na segmentu iznad kojega je crtamo?
Npr. uzmimo realnu funkciju f : [6, 6] R definiranu propisom:
f ( x) =
2 x
.
x2 1
50
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Iole bolji znalci matematike odmah e uoiti da e tu biti dva problema: Kako odrediti
vrijednosti funkcije za x = 1 i x = 1 kad u tim tokama funkcija uope nije definirana? ''Spas''
je u varijabli NaN: ako postoji x za koji ne postoji pripadni f(x), MATLAB e tome x-u kao
f(x) dodijeliti ''vrijednost'' NaN, a dobivenu ''toku'' nee ucrtati u koordinatni sustav.
Nakon to u svaki redak zasebno utipkamo
x=-6:0.01:6;
y=2*x./(x.^2-1);
MATLAB e nas upozoriti da smo u jednom ili vie sluajeva dijelili s nulom (ali nee ''rei''
u koliko smo sluajeva napravili taj, s matematikoga stajalita, ''smrtni grijeh''):
plot(x,y)
u novootvorenome emo prozoru dobiti sljedei graf (vidjeti Sliku 5.):
150
100
50
-5 0
-1 0 0
-1 5 0
-6
-4
-2
Slika 5.
51
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
U prethodnim smo primjerima na jednoj slici prikazivali graf samo jedne funkcije. No,
prigodom grafikoga rjeavanja nelinearnih jednadbi iznimno je vano na istoj slici prikazati
grafove dviju ili vie funkcija (kako bi se priblino mogla oitati sjecita tih grafova)
definiranih na istom segmentu. (Takve emo probleme razmatrati i rjeavati u 10. poglavlju.)
Tu se ponovno javlja funkcija plot, ali ovoga puta s malo drugaijom sintaksom. U praksi se
vrlo esto zaboravi da se grafovi funkcija mogu crtati na istoj slici pomou funkcije plot ako i
samo ako su sve realne funkcije definirane na istom segmentu pa imajte to na umu prigodom
rabljenja ove funkcije.
Ovu, malo sloeniju primjenu funkcije plot pokazat emo na konkretnom primjeru.
y1=2*x+1;
y2=1-x;
y3=log(x);
plot(x,y1,x,y2,x,y3)
(Uoite da su argumenti funkcije plot ovdje odvojeni zarezima.) U novootvorenom emo
prozoru dobiti sljedeu sliku (vidjeti Sliku 6.):
50
40
30
20
10
-10
-20
0
10
Slika 6.
52
12
14
16
18
20
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Plava je krivulja graf funkcije f(x), crvena graf funkcije h(x), a zelena graf funkcije g(x).
Uoimo da inae ''brza'' logaritamska funkcija ovdje prividno ''sporo'' raste jer jedinina
duina na osi Oy ima vrlo malenu duljinu. Takva je duljina odabrana kako bi se mogle
prikazati relativno velike vrijednosti funkcije f(x) u tokama blizu gornjega kraja segmenta.
Primjer 4. Grafiki rijeimo nejednadbu sin(2 x) > cos x na intervalu [0, 2 ]. Na istoj
emo slici nacrtati grafove funkcija f(x) = sin(2 x) i g(x) = cos x, pa emo oitati iznad kojih
je dijelova zadanoga intervala graf funkcije f(x) iznad grafa funkcije g(x). Utipkavamo
redom:
x=0:0.01:2*pi;
y1=sin(2*x);
y2=cos(x);
plot(x,y1,x,y2)
pa dobijemo sljedeu sliku (vidjeti Sliku 7.):
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
0
Slika 7.
53
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Plava krivulja je graf funkcije f(x), a zelena graf funkcije g(x). Intervale na kojima je plava
krivulja iznad zelene moemo oitati samo priblino. Dva su takva intervala: 0.6, 1,6 i
2.6 , 4.6.
Rijeimo li zadanu nejednadbu ''klasino'', dobit emo:
5
3
, , ,
6 2
6
2
odnosno priblino
x 0.5235987755983, 1.5707963267949 2.61799387799149, 4.71238898038469.
Naravno da u praksi nema potrebe ''pogaati'' granice intervala, nego se postupa npr. ovako:
Sa slike vidimo da prvi od intervala - rjeenja nejednadbe ima donju granicu u segmentu
[0,1]. Stoga nacrtamo grafove promatranih funkcija u tom segmentu. Utipkamo:
x=0:0.01:1;
y1=sin(2*x);
y2=cos(x);
plot(x,y1,x,y2)
i dobit emo sljedeu sliku (vidjeti Sliku 8.):
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
0.1
0.2
0.3
0.4
0.5
Slika 8.
54
0.6
0.7
0.8
0.9
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
S ove je slike oito da je traena donja granica u intervalu [0.5, 0.6]. Nacrtajmo grafove
promatranih funkcija i u tom segmentu. Utipkamo:
x=0.5:0.01:0.6;
y1=sin(2*x);
y2=cos(x);
plot(x,y1,x,y2)
i dobit emo sljedeu sliku (vidjeti Sliku 9.):
0.94
0.92
0.9
0.88
0.86
0.84
0.82
0.5
0.51
0.52
0.53
0.54
0.55
0.56
0.57
0.58
0.59
0.6
Slika 9.
Sad traenu donju granicu moemo odrediti jo preciznije: ona se nalazi u segmentu
[0.52, 0.53]. Ovisno o tome koliku tonost odreivanja donje granice elimo, ponavljamo
opisani postupak uzimajui svaki put sve ''krae'' intervale. Potpuno analogno se dobivaju i
ostale tri granice intervala rjeenja nejednadbe.
Grafove realnih funkcija jedne realne varijable moemo crtati i koristei funkciju ezplot
ija je sintaksa ponekad i jednostavnija od sintakse funkcije plot. Pogledajmo nekoliko
primjera.
mr.sc. Bojan Kovai, vii predava
55
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x2 + x 2
Primjer 5. Nacrtajmo graf prave racionalne funkcije f ( x ) =
na segmentu [3, 3].
x3 x
Klasificirajmo sve toke prekida prema uklonjivosti prekida, pa provjerimo svoje rjeenje
koristei dobiveni graf.
Ovaj zadatak rijeit emo pomou funkcije ezplot. U novi redak MATLAB-ova
komandnoga prostora utipkajmo:
ezplot('(x^2+x-2)/(x^3-x)',[-3,3])
Objasnimo sintaksu funkcije ezplot. Unutar okruglih zagrada pod jednostrukim
navodnicima piemo propis funkcije (pri emu mnoenje i potenciranje piemo uobiajenim
znakovima), potom stavljamo zarez, pa iza zareza u uglatim zagradama navodimo segment
iznad kojega crtamo graf funkcije.
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 10.
56
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ezplot('x^2+y^2-2*x+4*y-4')
Ovakva je sintaksa potrebna jer u sluaju implicitno zadanih funkcija MATLAB zahtijeva da
desna strana pripadnoga analitikoga izraza bude jednaka nuli. Pritisnemo Enter, pa emo
dobiti sljedeu sliku:
Slika 11.
Iako sa slike nije ba razvidno, dobivena krivulja je krunica. Analitiki se lako pokazuje da
je rije o krunici sa sreditem u toki S = (1, 2) i polumjerom r = 3. (Uinite to!) Kako ipak
postii da bude razvidnije da je rije o krunici? Odgovor je jednostavan: treba podesiti da na
osima budu ista mjerila. Stoga u novom retku radnoga prostora utipkajmo:
57
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 12.
x = 2 ch t ,
Primjer 7. Nacrtajmo krivulju parametarski zadanu s
O kojoj je ravninskoj
y = 3 sh t.
krivulji rije?
Funkcija ezplot moe crtati i krivulje zadane parametarski. Prigodom poziva te funkcije
najprije upisujemo izraz za x, potom izraz za y, a na kraju (neobavezno) segment kojemu
pripada parametar t. Stoga u novi redak komandnoga prostora utipkamo:
ezplot('2*cosh(t)','3*sinh(t)')
Pritisnemo Enter, pa emo, na prilino neugodno iznenaenje, dobiti sljedeu sliku:
Slika 13.
58
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Iz navedene slike mogli bismo zakljuiti da je rije o pravcu, to oito nije tono jer veza
varijabli x i y nije linearna. MATLAB je ovdje prividno pogrijeio iskljuivo zbog velikoga
mjerila na objema koordinatnim osima koje ne daje dovoljno preciznu sliku. Stoga primjenom
funkcije plot i crtanjem krivulje na segmentu [3, 3]
t=-3:0.01:3;
x=2*cosh(t);
y=3*sinh(t);
plot(x,y);axis equal
dobivamo neto jasniju sliku:
Slika 14.
Sad ve moemo naslutiti da se radi o jednoj grani hiperbole. To je tono: rije je o hiperboli
ija je velika (tzv. realna) poluos a = 2, a mala (tzv. imaginarna) poluos b = 3. Nita bolju
sliku ne bismo dobili niti da smo koristili trigonometrijsku parametrizaciju hiperbole
,
x =
cos t
y = 3 tg t.
Zapiemo li njezinu jednadbu u uobiajenom implicitnom obliku
2
x y
=1
2 3
i nacrtamo li tako dobivenu krivulju pomou funkcije ezplot
ezplot('(x/2)^2-(y/3)^2-1')
dobit emo krivulju koju smo i oekivali:
mr.sc. Bojan Kovai, vii predava
59
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 15.
ezplot('2*cos(t)','3*sin(t)')
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 16.
Iz slike vidimo da se radi o elipsi. Duljina velike osi elipse je 2 a = 4, a duljina male osi 2 b
= 6. Takoer, iz slike je oito da je x [2, 2] i y [3, 3]. Provjerite dobivene rezultate i
analitiki.
mr.sc. Bojan Kovai, vii predava
60
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
2
A = [1 1 2], B = 1 ,
3
1
0
1
3
1
C=
i D = 2
3
6 4
3
0
2 ,
0.3
61
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1
;
3
e) y = e x i y = x + 1;
7. Nacrtajte ravninske krivulje implicitno zadane sljedeim jednadbama i, ako nije
navedeno, utvrdite o kojim je krivuljama rije:
a)
b)
c)
d)
e)
f)
x2 + y2 + 8 x 6 y = 0;
x2 + y2 6 x + 10 y = 2;
25 x2 9 y2 = 144;
25 x2 + 9 y2 = 144;
y2 = 8 x;
3
x 2 + 3 y 2 = 1 (tzv. astroida) .
x = 4 cos3 t ,
d)
(tzv. astroida)
3
y = 4 sin t;
1
,
x =
1 + t2
e)
t
y =
;
1 + t2
x = 4 cos t 2 cos(2 t ),
f)
(tzv. kardioida)
y = 4 sin t 2 sin(2 t ).
mr.sc. Bojan Kovai, vii predava
62
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1.) (za one koji vole mieve) a) Pomiui mi po podlozi postavimo pokaziva na natpis File
blizu gornjega lijevoga kuta naega zaslona (odmah ispod natpisa MATLAB).
b) Jednom kliknemo lijevom tipkom mia na taj natpis pa se pojavi padajui izbornik s
opcijama New, Open, Close Command Window itd.
c) Postavimo pokaziva na opciju New. im to uinimo, desno od natpisa New pojavit e se
novi padajui izbornik koji nam nudi odabir etiriju opcija: M-file, Figure, Model i GUI.
d) Nas zanima opcija M-file pa emo pokaziva postaviti na taj natpis i jednom kliknuti
lijevom tipkom mia. Tada e se otvoriti tekst-editor Notepad i u njemu emo pisati svoje
naredbe.
2.) (za one koji ne vole mieve) Postupak opisan u 1.) moemo napraviti i iskljuivo rabei
tipkovnicu. Redom kratko pritisnimo sljedee tipke (svaku posebno):
Alt, N, F, I
(opcija Caps Lock na tipkovnici ne mora biti ukljuena jer MATLAB-u ovdje nije vano jesu
li slova velika ili mala) i otvorit e se ranije spomenuti Notepad.
Uoimo da se trepui pokaziva nalazi u retku ispred kojega pie broj 1. Broj ispred linije
njezin je redni broj u datoteci, to nam vrlo esto olakava snalaenje u njoj. Upiimo u prvi
redak te datoteke:
sin(pi/2)+cos(pi)*tan(3*pi/4)
Pohranimo upisani tekst pod imenom proba.m na sljedei nain:
63
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Korak 1. Istodobno pritisnemo tipke Ctrl i S. (Ili ako vie volimo mieve postavimo
pokaziva na natpis File, jednom kliknemo lijevom tipkom mia, potom postavimo pokaziva
na natpis Save i ponovno jednom kliknemo lijevom tipkom mia. to vam se ini bre?)
Korak 2. U novootvorenome prozoru MATLAB nas najprije obavjetava da e datoteku ma
kako god je nazvali pohraniti u direktorij C:\matlabR12\work. Taj je direktorij dogovorni
direktorij za pohranu svih tipova datoteka. Ako elimo datoteku pohraniti u neki drugi
direktorij, tada pomicanjem mia po podlozi postavimo pokaziva na mali trokuti odmah
pokraj natpisa work. Jednom kliknemo lijevom tipkom mia na taj trokuti i otvorit e nam se
izbornik u kojemu klikovima na lijevu tipku mia sami formiramo stazu (engl. path) do
direktorija u kojega elimo pohraniti svoju datoteku. Ovdje se neemo odluiti na tu
mogunost, nego emo datoteku pohraniti u direktorij C:\matlabR12\work.
Napomena: Ispod natpisa Save in: moemo vidjeti popis svih datoteka dosad pohranjenih u
direktoriju C:\matlabR12\work.
Korak 3. Ispod popisa datoteka nalazi se natpis File name: kraj kojega je bijeli pravokutnik s
plavo obrubljenim slovima Untitled odmah do kojih je trepui pokaziva. Naime, MATLAB
predvia mogunost da postoji nematoviti korisnik programa bez ideje kako nazvati datoteku
koju je upravo stvorio. Da takvomu korisniku cjelokupni dosadanji trud ne bi otiao u
nepovrat, MATLAB nudi mogunost da stvorenu datoteku nazove Untitled (engl.: bez
naslova). No, mi smo se ve ranije odluili da emo takvu datoteku nazvati proba.m pa
pritisnimo strelicu koja se nalazi odmah iznad vee od dviju tipki Enter na naoj
tipkovnici. Kad to uinimo, natpis Untitled e nestati i ostat e samo trepui pokaziva.
5.) Upisujemo ime datoteke:
proba.m
Vana napomena: MATLAB zahtijeva da pohranu imena datoteke zajedno s njezinom
ekstenzijom. Budui da se ovdje radi o m-datoteci, ona ima kratku, ali jasnu ekstenziju: .m
Zbog toga prigodom pohrane moramo upisati ime datoteke u obliku:
ime_datoteke.m
6.) Pritisnemo Enter ili jednom kliknemo lijevom tipkom mia na natpis Save. Datoteka je
pohranjena, to nam potvruje natpis na vrhu zaslona:
C:\matlabR12\work\proba.m
Za izlaz iz upravo pohranjene datoteke moemo istodobno pritisnuti tipke Ctrl i W ili
ponovo jednom kliknuti lijevom tipkom mia na natpis File, postaviti pokaziva na natpis
Close proba.m i jednom kliknuti lijevom tipkom mia na taj natpis. U oba sluaja zatvaramo
pohranjenu m-datoteku i vraamo se u komandni prozor.
mr.sc. Bojan Kovai, vii predava
64
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Uinak upravo provedenih radnji moemo vidjeti ako u novomu retku komandnoga prozora
utipkamo:
proba
i pritisnemo Enter. Dobit emo:
ans =
2
to se dogodilo? MATLAB je pokrenuo datoteku s nazivom proba.m, izvrio sve naredbe
zapisane u njoj kao da su zapisane u njegovu komandnomu prozoru i ispisao krajnji rezultat
tih naredbi. Budui da vrijedi:
sin
3
+ cos tg
= 1 + ( 1) ( 1) = 2 ,
2
4
rezultat jedine upisane naredbe u datoteci proba.m jest 2 i to je rezultat koji je ispisao
MATLAB.
Ovakav je nain zapisivanja i izvravanja naredbi praktian jer se lako mogu popravljati
pogrjeke prije nego li se program izvri (za razliku od naredbi u komandnomu prozoru gdje
se pogrjeke otklanjaju tek nakon izvravanja naredbe). ak i ako pogrijeimo, MATLAB e
nas pristojno obavijestiti u kojemu je retku nae datoteke pronaao pogrjeku, te nas
obavijestiti o kakvoj se greci radi, pa emo je moi ispraviti.
Postoje funkcije u MATLAB-u koje nemaju niti jednu ulaznu i/li izlaznu varijablu. Tipian primjer takve
funkcije je funkcija clc. Ona nema niti jednu ulaznu, odnosno izlaznu varijablu.
65
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
[izlazne varijable]=ime_funkcije(ulazne varijable)
function y = kotangens(x)
a da funkcijsku datoteku nazovemo npr. pajza.m. Ako smo funkciju nazvali kotangens, onda
i pripadnu funkcijsku m-datoteku moramo nazvati kotangens.m jer je u suprotnom pri njezinu
pozivu MATLAB nee izvriti.
Sama funkcija moe imati jednu ili vie ulaznih varijabli. Neovisno o njihovu broju, moraju
se navesti unutar okruglih zagrada. Ako funkcija ima barem dvije ulazne varijable, one se
odvajaju zarezima. Varijable, openito, mogu biti brojevi i matrice. MATLAB razlikuje to je
broj, a to matrica, pa se ne smije dogoditi da varijablu matrinoga tipa prigodom poziva
pozovemo kao varijablu brojanoga tipa.
Pogledajmo na primjeru kako stvoriti jednu ''novu'' funkciju u MATLAB-u.
function z=zbrajanje(x,y)
z=x+y;
Pohranimo dobivenu datoteku pod nazivom zbrajanje.m u direktorij C:\matlabR12\work, pa
je zatvorimo.
Uoimo to smo napravili: zbroj dvaju realnih brojeva je jedinstven realan broj, pa imamo
tono jednu izlaznu varijablu koju smo oznaili sa z. Funkciji smo dali ime zbrajanje jer
zadatak trai da se datoteka zove zbrajanje.m, a znamo da ime funkcije i ime datoteke moraju
biti jednaki. Ulazne varijable oznaene su s x i y, te odvojene zarezima.
Kako pozvati ovakvu funkciju iz komandnoga prozora? Kao i svaku drugu ugraenu funkciju,
tako i funkciju pohranjenu u m-datoteci pozivamo navodei izlazne varijable, ime funkcije i
66
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ulazne varijable. Za razliku od izlazne varijable kojoj e se vrijednost dodijeliti nakon to se
izvre sve naredbe u funkcijskoj m-datoteci, ulazne varijable moraju biti konkretne, odnosno
njima se vrijednosti moraju dodijeliti prije poziva funkcije.
elimo li zbrojiti npr. 123456789 i 987654321, te rezultat zapisati u varijablu zbroj, utipkat
emo:
zbroj=zbrajanje(123456789,987654321)
i dobiti:
zbroj =
1.111111110000000e+009
Ulazne varijable ne moraju nuno biti eksplicitno zadani (realni ili kompleksni) brojevi, nego
mogu biti i vrijednosti nekih brojevnih izraza. U novi red komandnoga prozora utipkajmo:
zbroj=zbrajanje(conj(1-3*i),abs(1+sqrt(3)*i)/i)
i dobit emo:
zbroj =
1.00000000000000 + 1.00000000000000i
Kako bismo uspjeno mogli stvarati nove i sloenije funkcije u MATLAB-u, upoznat emo
jo neke njegove naredbe.
for varijabla=izraz1:izraz2:izraz3
niz naredbi
end
Prvi redak u ovoj sintaksi predstavlja zapis zahtjeva da varijabla poprima sve vrijednosti od
67
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
izraza1 do izraza3 s korakom izraz2. to to zapravo znai? Kad MATLAB izvrava ovu
petlju, pri ''prvom itanju'' on varijabli varijabla dodijeli vrijednost izraz1 i prelazi na
izvravanje cijeloga niza naredbi smjetenoga u petlji. Kraj toga niza oznaava naredba end.
Kad u ''prvom itanju'' MATLAB ''stigne'' do naredbe end, vrati se ponovno na redak u
kojemu pie naredba for i vrijednost varijable varijabla promijeni (uvea ili smanji) za
vrijednost izraz2. Potom usporedi novodobivenu vrijednost varijable varijabla s vrijednou
izraz3. Ako je vrijednost varijable varijabla manja ili jednaka vrijednosti izraz3, MATLAB
ponovno izvrava niz naredbi smjeten (ili, kako se to struno kae, ''ugnijeen'') u petlji
nakon ega se opet vraa na redak u kojemu je naredba for. Ako je vrijednost varijable
varijabla vea od vrijednosti izraz3, petlja je zavrena pa se prelazi na prvu naredbu iza
naredbe end.
Napomenimo da ako je vrijednost varijable izraz2 jednaka 1, ta se varijabla moe izostaviti u
sintaksi petlje. Takoer, ako iz bilo kojih razloga elimo prekinuti izvravanje petlje, rabimo
naredbu break. elimo li, pak, proslijediti upravljanje petljom na sljedei korak (odnosno,
kako se to struno kae, iteraciju) petlje, koristimo naredbu continue.
Pogledajmo primjenu ove petlje na primjerima.
Primjer 1. Napiimo funkciju zbroj ija je jedina ulazna varijabla prirodan broj n, a jedina
izlazna varijabla vrijednost zbroja prvih n prirodnih brojeva.
Oznaimo li izlaznu varijablu sa z, onda u prvomu retku nae funkcijske m-datoteke zbroj.m
(ponovimo: naziv datoteke mora biti jednak nazivu funkcije!) zapisujemo:
function z=zbroj(n)
Na poetku je vrijednost izlazne varijable z jednaka 0, pa to zapisujemo u drugomu retku:
z=0;
Traeni emo zbroj izraunati pomou forpetlje. Za vrijednost varijable izraz1 uzet emo 1,
za vrijednost varijable izraz3 uzet emo ulaznu varijablu n, a budui da moramo obuhvatiti
sve prirodne brojeve od 1 do n, vrijednost varijable izraz2 mora biti jednaka 1, pa je
izostavljamo. Sada piemo naredbu for:
for m=1:n
Varijabla varijabla iz gornje sintakse ovdje je krae oznaena slovom m. Ona e poprimati
vrijednosti svih prirodnih brojeva od 1 do n, pa emo je iskoristiti za raunanje traenoga
zbroja:
z=z+m;
end.
Izvrite ''runo'' ovu petlju i uvjerite se da je krajnja vrijednost izlazne varijable z uistinu jed-
68
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
naka zbroju prvih n prirodnih brojeva.
Pohranimo dobivenu m-datoteku, vratimo se u komandni prozor i provjerimo ispravnost
svojega rada uzimajui n = 100. Pozovimo funkciju zbroj utipkavajui:
z=zbroj(100)
i dobit emo:
z =
5050
Koristei se formulom za raunanje zbroja prvih n lanova aritmetikoga niza, provjerite
''runo'' da je zbroj prvih 100 prirodnih brojeva uistinu jednak 5 050.
Primjer 2. Napiimo funkciju faktorijel iji je jedina ulazna varijabla prirodan broj n, a jedina
izlazna varijabla umnoak prvih n prirodnih brojeva8.
Oznaimo tu izlaznu varijablu s u. Ideja za rjeenje zadatka je slina kao u Primjeru 1., samo
to na poetku varijabli u dodijeljujemo vrijednost 1, a u petlji umjesto z=z+m stavljamo
z=z*m. Stoga u funkcijsku m-datoteku faktorijel.m utipkavamo redom:
function u=faktorijel(n)
u=1;
for m=1:n
u=u*m;
end
Pohranimo upisane naredbe, vratimo se u komandni prozor i izraunajmo 40! utipkavajui:
u=faktorijel(40)
MATLAB e ispisati:
u =
8.159152832478977e+047
Napomena: Za raunanje vrijednosti n! u MATLAB se koristi ugraena funkcija
factorial. Njezina jedina ulazna varijabla je nenegativan cijeli broj n, a jedina izlazna
varijabla vrijednost n!. Za n 171 funkcija kao rezultat vraa konstantu Inf.
Primjer 3. Napiimo funkciju zp ija je jedina ulazna varijabla prirodan broj n, a jedina
izlazna varijabla zbroj prvih n parnih prirodnih brojeva.
Taj se umnoak oznaava s n! i ita en faktorijela. Prirodno podruje definicije funkcije f (n) = n! je skup N0 :=
{0, 1, 2, }. Dogovorno se uzima 0! = 1.
69
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Oznaimo traeni zbroj ponovno sa z. Prvi paran prirodan broj je 2, a kako ih mora biti
ukupno n, posljednji od njih je 2 n. Ideja rjeavanja zadatka je slina kao u prethodnim
primjerima, samo to se naredba for mora malo preraditi. U funkcijsku m-datoteku zp.m
utipkavamo:
function z=zp(n)
z=0;
for m=2:2:(2*n)
z=z+m;
end
Pohranimo upisane naredbe i vratimo se u komandni prozor. elimo li izraunati zbroj prvih
10 parnih prirodnih brojeva, u novomu retku komandnoga prozora upiimo:
z=zp(10)
i dobit emo:
z =
110
Koristei se formulom za raunanje zbroja prvih n lanova aritmetikoga niza, provjerite
''runo'' da je zbroj prvih 10 parnih prirodnih brojeva uistinu jednak 110.
n +1
.
n4
70
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Izraunajmo zbroj svih lanova toga niza koji nisu strogo manji od konstante eps.
Primijetimo da je zadani niz strogo padajui (provjerite to!), pa lanova koji nisu manji od
konstante eps ima konano mnogo. Stoga za rjeavanje zadatka moemo rabiti petlje. Radi
preglednosti, rjeenje zadatka zapisat emo u obliku obine mdatoteke niz1.m. U tu datoteku
utipkamo:
s=0;
n=1;
while (n+1)/(n^4)>=eps
s=s+(n+1)/(n^4);
n=n+1;
end
s
inicijalizacija zbroja s
inicijalizacija indeksa n
uvjet da lan niza mora biti barem jednak eps
zbroj prvih n lanova niza
poveanje indeksa za 1
kraj petlje
ispis traenoga zbroja
niz1
pritisnimo Enter i dobit emo traenu vrijednost zbroja:
s =
2.28438013685600
Primjer 5. Niz (an)nN zadan je svojim opim lanom
an =
(1) n +1
n!
Izraunajmo zbroj svih lanova toga niza koji po apsolutnoj vrijednosti nisu strogo manji od
konstante eps.
U ovome emo zadatku vidjeti kako unutar neke petlje pozivamo zasebno definirane
MATLAB-ove funkcije. U Primjeru 2. stvorili smo funkcijsku mdatoteku faktorijel.m koju
emo iskoristiti pri rjeavanju ovoga zadatka. Napomenimo da je zadatak mogue rijeiti i
koritenjem ranije spomenute gotove MATLAB-ove funkcije factorial.
Radi preglednosti, rjeenje zadatka zapisujemo u obliku obine mdatoteke niz2.m U tu
datoteku utipkamo:
s=0;
n=1;
while abs((-1)^(n+1)/faktorijel(n))>=eps
s=s+(-1)^(n+1)/faktorijel(n);
n=n+1;
mr.sc. Bojan Kovai, vii predava
71
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
end
s
Zato smo u ovom primjeru zahtijevali usporedbu apsolutnih vrijednosti lanova niza s
konstantom eps? Primijetimo da lanovi niza mijenjaju predznak: prvi lan je pozitivan, drugi
negativan, trei opet pozitivan itd. Stoga bismo izostavljanjem uvjeta usporedbe apsolutne
vrijednosti svakoga lana niza s konstantom eps za vrijednost s dobili vrijednost prvoga lana
niza jer bi whilepetlja zavrila ve u drugom koraku.
Uoimo uporabu funkcije faktorijel u treemu retku i nain njezina pozivanja. Jedina njezina
ulazna varijabla je prirodan broj n. Na poetku je n = 1. U petomu retku petlje pie naredba da
se n prigodom svakoga izvravanja petlje uvea za 1, to znai da n poprima vrijednosti 1, 2,
, ba kako i zahtijeva funkcija faktorijel. Dakako, prije poziva funkcije moramo
inicijalizirati sve njezine ulazne varijable, to smo i uinili inicijalizirajui varijablu n u
drugomu redu.
Pohranimo ovu datoteku i vratimo se u komandni prozor. U njegovu novomu retku upiimo
niz2
Pritisnimo Enter i dobit emo traenu vrijednost zbroja:
s =
0.63212055882856
Napomena: Primjere 4. i 5. treba razlikovati od zadataka tipa Izraunajte zbroj reda do na
tonost T. U takvim se zadatcima, naime, zahtijeva da apsolutna vrijednost razlike tone
vrijednosti zbroja konvergentnoga reda i pribline vrijednosti istoga zbroja bude najvie
jednaka T. U toki 6.1. pokazat emo kako u MATLAB-u moemo (tono i priblino)
raunati zbrojeve konvergentnih redova brojeva.
4.3.3. Naredba ifelse
Naredba ifelse (hrv.: ako inae) koristi se za izvravanje odreenoga bloka naredbi ako je
ispunjen odreeni logiki uvjet. Ako taj uvjet nije ispunjen, moe se izvriti neki drugi blok
naredbi. Sintaksa ove naredbe je:
if logiki izraz
naredbe1
else
naredbe2
end
72
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Objasnimo ukratko znaenje ove naredbe. Kad prigodom izvravanja programa MATLAB
''doe'' do naredbe if, ''pogleda'' je li logiki izraz naveden odmah iza naredbe if istinit ili nije.
Ako jest, tono jednom se izvrava skup naredbi naredbe1. U suprotnom, tj. ako logiki izraz
nije istinit, tono jednom se izvrava skup naredbi naredbe2 i nakon toga se prelazi na prvu
naredbu iza naredbe end. Ako je skup naredbi naredbe2 prazan skup, dio
else
naredbe2
moemo izostaviti.
Pogledajmo uporabu ove naredbe na primjerima.
Primjer 6. Kreirajmo funkcijsku mdatoteku zbrojm.m koja sadri jedino funkciju zbrojm
ije su ulazne varijable realne matrice x i y, a izlazna varijabla 1 ako postoji zbroj x + y, a 0
inae.
Podsjetimo da se matrice mogu zbrojiti ako i samo ako su istoga tipa. Stoga najprije moramo
usporediti ukupne brojeve redaka, odnosno stupaca tih matrica, to emo uiniti rabei
naredbu size. To e ujedno biti i na logiki uvjet u naredbi if. Otvorimo novu mdatoteku i
utipkamo:
function z=zbrojm(x,y)
if (size(x,1)==size(y,1)&size(x,2)==size(y,2))
z=1;
else
z=0;
end
Ovdje prvi put susreemo uporabu logikoga operatora and (hrv.: i) iju smo oznaku ve
upoznali u toki 1.3.
Uoimo uporabu naredbe if. Logiki uvjet zapisan u drugomu retku ''preveden'' na ''obian''
jezik glasi: ''Ako je broj redaka matrice x jednak broju redaka matrice y i ako je broj stupaca
matrice x jednak broju stupaca matrice y, onda'' Ako je taj logiki uvjet istinit, prelazi se na
naredbu navedenu odmah u retku ispod. U tome se retku izlaznoj varijabli z dodijeljuje
vrijednost 1 jer tako zahtijeva zadatak. Ako dotini logiki uvjet nije istinit, prelazi se na prvu
naredbu ispod naredbe else. To je z = 0 kojom se izlaznoj varijabli z dodijeljuje vrijednost 0
ponovno zbog zahtjeva zadatka. Tree mogunosti nema pa se time zavrava cijela funkcija.
Pohranimo dobivenu datoteku i vratimo se u komandni prozor. Provjerimo ''ispravnost rada''
nae funkcije na primjeru matrica
73
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1
A = [ 1 2 3], B = [3 1 2] i C = 2 .
3
z1=zbrojm(A,B),z2=zbrojm(B,C)
Kako smo i oekivali, MATLAB e ispisati:
z1 =
1
z2 =
0
U kombinaciji s naredbom if esto se koristi i naredba elseif. Skup naredbi koji se
pojavljuje iza te funkcije izvrava se samo ako je istinit uvjet naveden u sastavu naredbe
elseif, a nije istinit uvjet naveden u sastavu naredbe if. Pogledajmo primjenu ove naredbe
na sljedem primjeru.
74
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
function y=ekstremi2(a,b,c);
if (a^2+b^2==0)
min=c
max=c
elseif (a==0)
'Nema globalnoga ekstrema'
else
ekstrem=(4*a*c-b^2)/(4*a);
if a>0
min=ekstrem
else
max=ekstrem
end;
end
Opiimo ukratko strukturu ove funkcije.
Najprije se provjerava uvjet a = b = 0 koji je ekvivalentan jednakosti a2 + b2 = 0. Ako je taj
uvjet ispunjen, ispisuje se da su minimum i maksimum jednaki c. Time je izvrenje funkcije
zavreno. Ako uvjet a2 + b2 = 0 nije ispunjen, provjerava se vrijedi li uvjet a = 0. Ako je taj
uvjet ispunjen, ispisuje se tekst Nema globalnoga ekstrema i time se zavrava izvrenje
funkcije. Naredba else osigurava razmatranje preostaloga sluaja a 0. Najprije se rauna
globalni ekstrem (prema navedenoj formuli), a onda se postavlja jo jedna ifelse funkcija u
kojoj se odreuje je li izraunani ekstrem minimum ili maksimum.
hold
x=(-5):0.01:5;
y=(-5):0.01:5;
for m=1:1000
for n=1:1000
if 4*x(m)^2+9*y(n)^2<=36
plot(x(m),y(n))
end
end
end
75
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Ovdje smo uporabili i novu naredbu hold koja nam omoguuje zadravanje dobivenoga grafa
na zaslonu.
Opiimo ukratko strukturu ove obine mdatoteke.
U drugomu i treemu retku inicijalizirali smo jednoretane matrice apscisa, odnosno ordinata.
Svaka od njih ima tono 1000 elemenata, to znai da emo napraviti provjeru za ukupno
1 000 000 razliitih elemenata skupa [5,5]2.
U etvrtomu i petomu retku poinju dvije for petlje u kojima su ulazne varijable indeksi
matrice x, odnosno matrice y.
U estomu retku postavljamo logiki uvjet: to je zadana nejednadba, pa provjeravamo
zadovoljavaju li koordinate toke (x[m], y[n]) tu nejednadbu. Ako je logiki uvjet istinit, tj.
ako toke zadovoljavaju nejednadbu, u sedmomu retku traimo od MATLAB-a neka ih ucrta
u pravokutni koordinatni sustav u ravnini. Ako logiki uvjet nije istinit, naredba if je zavrena,
pa MATLAB provjerava je li zavrena i for petlja za varijablu n. Ako nije, ponovno se
izvrava naredba if, ali ovoga puta s novom vrijednou varijable n (za jedan veom nego u
prethodnomu koraku). Ako je for petlja za varijablu n zavrena, MATLAB provjerava je li
zavrena i forpetlja za varijablu m. Ako nije, ponovno se izvrava forpetlja za varijablu n,
ali ovoga puta s novom vrijednou varijable m (za jedan veom nego u prethodnomu
koraku). Ako jest, sve petlje su zavrene, a kako nema drugih naredbi izvan njih, i sam
program je gotov.
Primijetite da se petlja za m izvrava tono 1000 puta, a petlja za n 1000 1000 = 1 000 000
puta (za svaki m po 1000 puta!). Naredba if takoer se izvrava 1 000 000 puta, ali naredba
plot ne jer njezino izvravanje ovisi je li istinit logiki uvjet naveden iza naredbe if.
Pohranimo dobivenu datoteku i vratimo se u komandni prozor, te u njegovu novomu retku
utpikajmo:
nejednadzba1
i dobit emo sljedeu sliku (vidjeti Sliku 1.):
76
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 1.
Analitiki rjeavajui zadanu nejednadbu provjerite da je gornji skup toaka uistinu rjeenje
postavljenoga zadatka.
Kaemo da je relacija R tranzitivna ako (aRb) i (bRc) povlae (aRc). U ovom sluaju to znai da nejednakosti
a b i b c povlae nejednakost a c.
77
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
function y=najmanji(x)
y=x(1,1);
for m=1:size(x,1)
for n=1:size(x,2)
if x(m,n)<=y
y=x(m,n);
end
end
end
Pohranimo upisane naredbe i vratimo se u komandni prozor. Provjerimo ispravnost rada nae
funkcije na primjerima matrica:
1
A = [ 1 2 3] , B = [3 1 2 ] i C = 2 .
3
Oznaimo sa n1, n2 i n3 najmanje elemente tih matrica. Oito je n1 = 1, n2 = n3 = 1.
Pogledajmo to e nam ispisati MATLAB kada u novomu retku komandnoga prozora
utipkamo:
n1 =
-1
n2 =
1
n3 =
1
Napomena: Poetnici u programiranju su u ovakvim sluajevima vrlo esto skloni (potpuno
pogreno!) inicijalizirati vrijednost varijable y na nulu, kao to se to radi prigodom raunanja
razliitih zbrojeva (vidjeti Primjere 4. i 5.). Treba istaknuti da mi unaprijed pretpostavljamo
da je x matrica koja sadri barem jedan element (i to onaj na poziciji (1, 1), tj. na presjeku
prvoga retka i prvoga stupca). Zbog toga funkcija najmanji.m ispravno radi i ako je x matrica
reda 1.
78
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
yk ;
k =1
5
2
k
y k3 ;
k =1
5
yk ;
k =1
d)
k =1
xk
.
yk
2011
y = cos
4
sin
2013
4
cos
3 1 0 5 3
2011
2013
sin
.
4
4
y=nepoznata(9)
Potom provjerite svoje rjeenje rabei MATLAB.
79
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
7. Izraunajte zbroj svih lanova sljedeih nizova koji nisu strogo manji od eps ako je:
1
;
n2
sin n
b) bn = 3
;
n + 2 n2
n + tg n
c) cn =
;
2 n 2 ln n + n + 1
ln( 4 n + 1)
d) d n =
.
e n 1
a) an =
80
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x2 + y2 9;
4 x2 + 4 y2 25;
2 x2 + 3 y2 6;
3 x2 + 4 y2 24;
4 x2 y2 4;
9 x2 4y2 36;
2 x + 3 y < 6;
3 x 2 y + 12 < 0.
81
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
16. Kreirajte funkcijsku m-datoteku kvadrati1.m koja sadri jedino funkciju kvadrati1 ije su
ulazne varijable prirodni brojevi m i n. Funkcija treba ispisati zbroj kvadrata svih
prirodnih brojeva izmeu m i n ako je m < n, odnosno 0 inae.
17. Kreirajte funkcijsku mdatoteku umnozakm.m koja sadri jedino funkciju umnozakm ije
su ulazne varijable matrice x i y. Funkcija treba ispisati 1 ako postoji umnoak x y ( je
standardno matrino mnoenje), odnosno 0 inae.
18. Kreirajte funkcijsku mdatoteku najveci.m koja sadri jedino funkciju najveci ija je
jedina ulazna varijabla realna matrica x. Funkcija treba ispisati najvei element matrice x.
19. Kreirajte funkcijsku mdatoteku zbrojmin.m koja sadri jedino funkciju zbrojmin ija je
ulazna varijabla realna matrica x. Funkcija treba ispisati zbroj najmanjih elemenata u
retcima matrice x.
20. Kreirajte funkcijsku mdatoteku umnozakmax.m koja sadri jedino funkciju
umnozakmax ija je jedina ulazna varijabla realna matrica x. Funkcija treba ispisati
umnoak najveih elemenata u stupcima matrice x.
21. Kreirajte funkcijsku m-datoteku aritmeticki.m koja sadri jedino funkciju aritmeticki ije
su ulazne varijable realni brojevi a i d, te prirodan broj n. Funkcija treba ispisati zbroj
prvih n lanova aritmetikoga niza kojemu je prvi lan a, a razlika d. Provjerite svoje
rjeenje za a = 1, d = 2 i n = 20. (Funkcija ne treba provjeravati je li n prirodan broj.)
22. Kreirajte funkcijsku m-datoteku naritm.m koja sadri jedino funkciju naritm ije su
ulazne varijable realni brojevi a i d, te prirodan broj n. Funkcija treba ispisati n ti lan
aritmetikoga niza kojemu je prvi lan a, a razlika d. Provjerite svoje rjeenje za a = 1, d =
= 7 i n = 10. (Funkcija ne treba provjeravati je li n prirodan broj.)
23. Kreirajte funkcijsku m-datoteku geometrijski.m koja sadri jedino funkciju geometrijski
ije su ulazne varijable realni brojevi a i q, te prirodan broj n. Funkcija treba ispisati zbroj
prvih n lanova geometrijskoga niza kojemu je prvi lan a, a kolinik q. Provjerite svoje
rjeenje za a = 1, q = 2 i n = 10. (Funkcija ne treba provjeravati je li n prirodan broj.
Oprez: Vrijednost broja n moe biti jednaka 1.)
24. Kreirajte funkcijsku m-datoteku ngeom.m koja sadri jedino funkciju ngeom ije su
ulazne varijable realni brojevi a i q, te prirodan broj n. Funkcija treba ispisati nti lan
geometrijskoga niza kojemu je prvi lan a, a kolinik q. Provjerite svoje rjeenje za a = 1,
q = 4 i n = 5. (Funkcija ne treba provjeravati je li n prirodan broj.)
25. Kreirajte funkcijsku m-datoteku geomred.m koja sadri jedino funkciju geomred ije su
ulazne varijable realni brojevi a i q. Funkcija treba ispisati tekst Red je konvergentan i
njegov zbroj je jednak: i potom zbroj geometrijskoga reda ako je geometrijski red
a qn konvergentan, odnosno tekst Red nije konvergentan. inae.
82
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
syms x;
definira x kao varijablu s kojom MATLAB dalje moe neto raditi (raunati vrijednosti te
varijable, ispisati neku funkciju dotine varijable itd.). Ako imamo vie takvih varijabli,
moemo ih konstruirati istovremeno tako da napiemo npr.
syms x y z
Uoite da se objekti ne odvajaju znakom zareza, nego iskljuivo prazninama. Ovdje se
neemo zadravati na potankostima takvih konstrukcija, nego ih spominjemo tek uzgredno
radi rjeavanja primjera koji slijede.
83
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Primjer 1. Odredimo prve tri derivacije polinoma p(x) = x100 x50 + 1, pa izraunajmo
njihovu vrijednost u toki x = 1.
Krenimo redom. Ako smo dosad u naemu komandnom prozoru imali neke tekstove, formule,
funkcije i sl. poistimo ih na uobiajen nain koristei funkciju clc. U prvi redak
praznoga komandnoga prozora utipkajmo:
syms x;
Pritisnimo Enter. MATLAB nije ispisao nita. Negdje smo pogrijeili? Nismo, sve je u redu.
Tako e uvijek biti nakon deklariranja simbolikih objekata. U sljedei redak komandnoga
prozora utipkajmo:
p=x^100-x^50+1;
to je sad ovo? Polinom iz zadatka zove se p(x). Zato smo onda napisali p= ()? Razlog je
opet jednostavan: ime ili naziv funkcije ne moe biti f(x), p(x) i sl., nego samo f, p itd. Hoe li
onda MATLAB znati to je nezavisna, a to zavisna varijabla? Nee, jer MATLAB ne zna niti
hrvatski jezik, niti matematiku, ali zna da se varijabla p dobije provedbom odreenih
simbolikih operacija nad varijablom x. To mu je sasvim dovoljno (a i nama takoer).
Ovime smo zadali polinom p. Traene derivacije toga polinoma odredimo primjenom funkcije
diff. Te derivacije ne smijemo oznaavati s p', p'' i p''' jer znak ' u MATLAB-u ima posve
drugo znaenje (to je ispis odreenoga teksta, kao to moemo vidjeti u Primjeru 7. iz toke
4.3.). Zbog toga emo traene derivacije oznaiti s p1, p2 i p3. Odredit emo ih u jednom
retku, a potom rezultat ispisati u matrinom obliku:
p1=diff(p,1);p2=diff(p,2);p3=diff(p,3);[p1 p2 p3]
pa e MATLAB ispisati:
ans =
[100*x^99-50*x^49, 9900*x^98-2450*x^48, 970200*x^97-117600*x^47]
Dakle, prva derivacija polinoma p je p'(x) = 100 x99 50 x49, druga p''(x) = 9900 x98
2450 x48, a trea p'''(x) = 970200 x97 117600 x47. Ispravnost dobivenih rezultata lako
moemo provjeriti i analitikim deriviranjem.
Preostaje izraunati vrijednosti dobivenih derivacija u toki x = 1. U tu emo svrhu iskoristiti
funkciju subs. Utipkamo:
ans =
50
7450
852600
84
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, p'(1) = 50, p''(1) = 7 450 i p'''(1) = 852 600. Ovime je primjer u potpunosti rijeen.
x2
i izraunajmo njihovu vrijednost
e x +1
u toki x = 1.
Postupamo na nain analogan onom iz rjeenja prethodnoga primjera. Pritom se moramo
podsjetiti da potencije broja e raunamo pomou funkcije exp. Dakle, u sljedea tri retka
komandnoga prozora utipkamo:
f=x^2/exp(x+1);
f1=simple(diff(f,1));f2=simple(diff(f,2));f3=simple(diff(f,3));
pretty([f1 f2 f3])
2
2 - 4 x + x
-----------exp(x + 1)
2]
6 - 6 x + x ]
- ------------]
exp(x + 1) ]
2 x x2
x2 4 x + 2
x2 + 6 x 6
,
f
''(
x
)
=
,
f
'''(
x
)
=
.
e x +1
e x +1
e x +1
ans =
-3
-13
85
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
86
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
y yd = k (x xd),
y = k x + (yd k xd).
f=x^3-7*x^ 2+12*x-1;
tangenta(f,1)
pa e MATLAB ispisati traenu jednadbu:
Dakle, prijevara nam nije uspjela. MATLAB je, naravno, otkrio i upozorio nas da zahtijevamo
raunanje prirodnoga logaritma od nule, te da pri raunanju prve derivacije logaritamske
funkcije u toki x = 0 dijelimo s nulom (to je, naravno, tono jer, kako dobro znamo, vrijedi
1
jednakost (ln x ) ' = .) Stoga je u rezultatu ispisao unaprijed deklarirane konstante Inf i NaN.
x
(vidjeti podtoku 1.2.3, stranica 9.) Ispisani rezultat je praktiki besmislen, ali izvrsno
87
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f=sqrt(1-x^2);
tangenta(f,1)
pa e MATLAB ispisati:
Problem: Je li mogue napisati funkcijsku mdatoteku iji e jedini ulazni podatak biti realna
funkcija f i koji e, kao izlaz, vratiti sve lokalne ekstreme zadane funkcije? Obrazloite svoj
odgovor.
10
Navedeni problem mogue je rijeiti zamjenom uloga varijabli x i y (tj. promatranjem varijable x kao
funkcije varijable y), a potom primjenom spomenutih tehnika diferencijalnoga rauna. Za vjebu, preuredite
datoteku tangenta.m tako da se pomou funkcije tangenta mogu otkriti i tangente usporedne s osi x.
88
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Odgovor: Nije mogue. Naime, kad piemo funkcijsku mdatoteku mi unaprijed moramo
deklarirati ukupan broj ulaznih i izlaznih varijabli. Za ukupan broj ulaznih varijabli to je
jednostavno uiniti: taj je broj jednak 1. Meutim, ukupan broj izlaznih varijabli nije mogue
unaprijed deklarirati. Problem zapinje ve kod polinoma gdje se kao dodatna ulazna
varijabla mora zadati stupanj polinoma n (jer znamo da svaki polinom stupnja n ima najvie
n 1 lokalnih ekstrema), a kod racionalnih i transcendentnih funkcija postaje elementarno
(programerski) nerjeiv11.
Kojim postupkom odreujemo i klasificiramo lokalne ekstreme? U Matematici 1 nauili smo
dva naina: f ' test (ispitivanje odreenih svojstava prve derivacije zadane funkcije na
otvorenom intervalu oko svake stacionarne toke) i f '' test (ispitivanje odreenih svojstava
vrijednosti druge derivacije zadane funkcije izraunane u svakoj stacionarnoj toki). Ukratko
emo opisati implementaciju svakoga od tih dvaju testova. Pritom neemo provjeravati
svojstva poput neprekidne derivabilnosti funkcije na nekom intervalu oko stacionarne toke
itd., ve emo preutno pretpostaviti da su ta svojstva ispunjena.
Podsjetimo da se f ' test algoritamski moe zapisati ovako:
Korak 5. Ako je istodobno ai < 0 i bi > 0, onda za x = xi f ima lokalni minimum f (xi). Ako je
istodobno ai > 0 i bi < 0, onda za x = xi f ima lokalni maksimum f (xi). Inae, za x = xi f nema
lokalni ekstrem.
Pogledajmo kako implementirati ovaj algoritam u MATLAB-u. Ve smo vidjeli kako odrediti
prvu derivaciju neke realne funkcije jedne realne varijable (koristei funkciju diff) i kako
izraunati vrijednosti bilo koje realne funkcije u proizvoljnoj toki njezina prirodna podruja
definicije (koristei funkciju subs). Stoga je jedini preostali problem implementacija Koraka
2., tj. odreivanje nultoaka prve derivacije, odnosno, openito, odreivanje nultoaka bilo
koje realne funkcije jedne realne varijable.
11
12
89
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Opi algoritam za tono odreivanje svih nultoaka realne funkcije jedne realne varijable ne
postoji. U 10. poglavlju pokazat emo kako se MATLAB moe koristiti u rjeavanju nekih
problema numerike matematike, a jedan od tih problema bit e upravo priblino odreivanje
nultoaka realne funkcije. Ovdje emo te nultoke odrediti pomou MATLAB-ove ugraene
funkcije solve. Jedini ulazni argument te funkcije je jednadba oblika f (x) = c, gdje je c bilo
koji realan broj, a izlazni argumenti su (priblino izraunana) realna rjeenja navedene
jednadbe.
Iako, kako smo rekli, ne moemo stvoriti funkcijsku m-datoteku koja e raunati i ispisivati
sve lokalne ekstreme neke funkcije, ipak moemo donekle skratiti postupke navedene u
Koracima 3. - 5. Stvorit emo funkcijsku m-datoteku ekstrem1.m iji e ulazni podatci biti
realna funkcija f, njezina stacionarna toka x i strogo pozitivna realna konstanta e, pa emo
implementirati navedeni algoritam na sljedei nain:
function z=ekstrem1(f,x,e)
f1=diff(f,1);
y=subs(f,x);
a=x-e/2;
b=x+e/2;
c=subs(f1,a);
d=subs(f1,b);
if((c<0)&(d>0))
sprintf('Funkcija ima lokalni minimum %d za x = %d.',y,x)
elseif ((c>0)&(d<0))
sprintf('Funkcija ima lokalni maksimum %d za x = %d.',y,x)
else
sprintf('Funkcija nema lokalni ekstrem za x = %d.',x)
end
Pogledajmo primjenu ove funkcije na primjeru.
Primjer 6. Ispitajmo postoje li, i ako postoje, odredimo sve lokalne ekstreme polinoma p(x) =
= x4 + 1.
Krenimo redom. Radi preglednosti, poistimo komandni prozor koristei funkciju clc. U
nova retka praznoga komandnoga prozora utipkajmo:
p=x^4+1;
p1=diff(p)
pa e MATLAB ispisati:
p1 =
4*x^3
90
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Stacionarne toke polinoma p1(x) odredit emo tako da u novi redak komandnoga prozora
utipkamo:
solve('4*x^3=0')
Pritisnimo Enter, pa e MATLAB (oekivano) ispisati:
ans =
[ 0]
[ 0]
[ 0]
jer je x = 0 oito jedina (i to trostruka) nultoka polinoma p1(x) = 4 x3. Stoga je jedina
stacionarna toka zadanoga polinoma x = 0. Prirodno podruje definicije bilo kojega
polinoma je skup realnih brojeva R, pa ponaanje prve derivacije polinoma p (tj. polinoma p1)
moemo promatrati na bilo kojem otvorenom intervalu u R koji sadri nulu. Neemo
komplicirati ivot: opredijelimo se za interval 1, 1, tj. odaberimo e = 1. U sljedei redak
komandnoga prozora utipkajmo:
ekstrem1(p,0,1)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
Funkcija ima lokalni minimum 1 za x = 0.
Ovaj jednostavan primjer namjerno je odabran jer se lokalni ekstremi zadanoga polinoma ne
mogu odrediti pomou f '' testa, kao to emo ubrzo vidjeti.
Preostaje opisati implementaciju f ''testa u MATLAB-u. Najprije podsjetimo na njegov
algoritam (preutno emo pretpostavljati da je f barem dvaput neprekidno derivabilna realna
funkcija jedne realne varijable jer neemo rjeavati zadatke s funkcijama koje nemaju
navedeno svojstvo):
Studenti esto posve pogreno zakljuuju da iz f ''(xi) = 0 slijedi da xi nije lokalni ekstrem. Kako emo vidjeti,
xi moe biti lokalni ekstrem i ako vrijedi jednakost f ''(xi) = 0.
91
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
dnost x. Pomou f ''testa funkcija e ispisati je li x lokalni ekstrem funkcije f i, ako jest, je li
rije o lokalnom minimumu ili lokalnom maksimumu.
Otvorimo novu m-datoteku, pa u nju utipkajmo sljedei niz naredbi:
function z=ekstrem2(f,x);
a=subs(f,x);
f1=diff(f,2);
if subs(f1,x)>0
sprintf('funkcija ima lokalni minimum %d za x = %d',a,x)
else
if subs(f1,x)<0
sprintf('funkcija ima lokalni maksimum %d za x = %d',a,x)
else
sprintf('Test ne daje odluku!')
end
end
ekstrem2(p,0)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
Test ne daje odluku!
Takav rezultat smo mogli i predvidjeti jer je oito p''(x) = 12 x2 i p''(0) = 0. Stoga u ovakvim
sluajevima zadatak moemo rijeiti iskljuivo primjenom funkcijske m-datoteke ekstrem1.m.
Primjer 7. Ispitajte postoje li i, ako postoje, odredite lokalne ekstreme realne funkcije f (x) =
= 2 x3 3 x2 12 x + 11.
Koristit emo ranije opisani algoritam, ugraenu funkciju solve i obje m-datoteke
ekstrem1.m i ekstrem2.m. Budui da argument funkcije solve mora biti prava jednadba
(npr. x + 2 = 0), a ne samo izraz oblika p(x) = 0, moramo ispisati izraz za prvu derivaciju
zadanoga polinoma, te se dodatno posluiti kopiraj zalijepi (engl.: copy paste) tehnikom
koja se u MATLAB-u primjenjuje kao i u MS Wordu, MS PowerPointu i drugim raunalnim
programima14. Meutim, argument funkcija ekstrem1 i ekstrem2 moe biti simboliki objekt
poput funkcije, pa nije nuno ispisivati sm zadani polinom.
14
Kako moemo izbjei uporabu copy paste tehnike, objasnit emo u toki 5.4.
92
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Krenimo redom. U nova dva retka komandnoga prozora utipkajmo:
p=2*x^3-3*x^2-12*x+11;
p1=diff(p)
pa e MATLAB ispisati:
p1 =
6*x^2-6*x-12
Miem oznaimo tekst 6*x^2-6*x-12, pa istodobno pritisnimo tipke Ctrl i C (ako vie
volite raditi miem, lijevom tipkom mia kliknite na izbornik Edit, pa odaberite opciju Copy).
Vratimo se potom u tekui radni redak, pa utipkajmo:
solve('
Bez pritiskanja tipke Enter nakon to utipkamo znak ', pritisnimo istodobno tipke Ctrl i V
(ako vie volite raditi miem, lijevom tipkom mia kliknite na izbornik Edit, pa odaberite
opciju Paste), pa emo dobiti:
solve('6*x^2-6*x-12
Iza broja 12 u istom retku preostaje nadopisati:
=0')
i tek sad pritisnuti Enter. MATLAB e ispisati:
ans =
[ -1]
[ 2]
Tako smo utvrdili da su stacionarne toke zadanoga polinoma x1 = 1 i x2 = 2. Preostaje
provjeriti jesu li to doista lokalni ekstremi. Polinom p definiran je za svaki realan broj x, pa
najprije trebamo odabrati otvoreni interval koji sadri broj 1, a ne sadri broj 2. Opredijelimo
se za interval 2, 0, tj. ponovno odaberimo e = 1. U novi redak komandnoga prozora
utipkajmo:
ekstrem1(p,-1,1)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
funkcija ima lokalni maksimum 18 za x = -1
Pritisnimo tipku na tipkovnici i preuredimo posljednje utipkani redak ovako:
ekstrem2(p,-1)
mr.sc. Bojan Kovai, vii predava
93
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pritisnimo Enter, pa e MATLAB (ponovno) ispisati:
ans =
funkcija ima lokalni minimum 18 za x = -1.
Preostaje provjeriti ima li polinom p lokalni ekstrem za x = 2. Provjeru pomou funkcije
ekstrem1 napravite sami za vjebu. Ovdje emo napraviti provjeru pomou funkcije ekstrem2.
U novi redak komandnoga prozora utipkajmo:
ekstrem2(p,2)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
funkcija ima lokalni minimum -9 za x = 2
Za vjebu, prikaite grafiki zadani polinom na segmentu [3, 3] i uvjerite se u tonost
dobivenih rezultata.
Primjer 8. Ispitajte postoje li i, ako postoje, odredite sve lokalne ekstreme realne funkcije
ln x
f ( x) = 3 .
x
Postupimo analogno kao u Primjeru 7. U nova dva retka komandnoga prozora utipkajmo:
f=log(x)/x^3;
f1=simple(diff(f))
Pritisnimo Enter, pa e MATLAB ispisati:
f1 =
(1-3*log(x))/x^4
Utipkajmo nadalje:
solve('
prekopirajmo izraz (1-3*log(x))/x^4 i nadopiimo:
=0')
Sljedei redak treba izgledati ovako:
solve('(1-3*log(x))/x^4=0')
Nakon to pritisnemo Enter, MATLAB e ispisati:
ans =
exp(1/3)
94
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, jedina stacionarna toka je x = 3 e . Provjerimo je li to lokalni ekstrem upisujui
ekstrem2(f,exp(1/3))
u sljedei redak komandnoga prozora. Pritisnimo Enter, pa e MATLAB ispisati:
ans =
funkcija ima lokalni maksimum 1.226265e-001 za x = 1.395612e+000
( )
Napomena: Ma koliko god vam se mona inila funkcija solve, zapamtite da ona
(priblino) moe rjeavati iskljuivo jednadbe. Dakle, rjeavanje bilo koje vrste nejednadbi
ne dolazi u obzir. U MATLAB-u ne postoji funkcija za rjeavanje bilo kojega tipa
nejednadbi, pa se prigodom rjeavanja zadataka s nejednadbama moramo snalaziti kako god
znamo i umijemo. Za utjehu valja rei da se rjeavanje nejednadbi esto svodi na
rjeavanje odreenih tipova jednadbi, a u tu nam svrhu vrlo solidno moe posluiti i
spomenuta funkcija solve.
U nastavku emo rijeiti jo jedan problem iz primjene diferencijalnoga rauna, a to je
problem odreivanja prijevojnih toaka (toaka infleksije) neke realne funkcije jedne realne
varijable. Podsjetimo se, kandidati za prijevojne toke funkcije f su sve nultoke druge
derivacije te funkcije. U Matematici 1 promatrali smo predznak druge derivacije na okolini
svakoga pojedinoga kandidata i zakljuivali mijenja li druga derivacija predznak pri prolasku
kroz svoju nultoku. To smo uinili tako da smo uzeli konkretne brojeve iz male
okoline svakoga pojedinoga kandidata i raunali predznake vrijednosti f ''(x) za svaki od tih
brojeva. Analogno emo postupiti i sad, pri emu emo preutno pretpostaviti da je funkcija f
barem dvaput neprekidno derivabilna u toki x.
Najprije emo formirati funkcijsku m-datoteku infleksija.m. Ulazni podatci za funkciju
infleksija bit e: polazna funkcija f, apscisa kandidatkinje za prijevojnu toku x i polovica
irine okoline oko toke x (oznaimo je ponovno s e). Funkcija infleksija e ispisati ima li po mr.sc. Bojan Kovai, vii predava
95
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
lazna realna funkcija f prijevojnu toku te, ako ima, ispisati i njezine koordinate.
Otvorimo novu m-datoteku, pa u odgovarajui prostor utipkajmo redom:
function z=infleksija(f,x,e)
f1=diff(f,2);
y=subs(f,x);
a=x-e/2;
b=x+e/2;
c=subs(f1,a);
d=subs(f1,b);
if c*d<0
sprintf('Funkcija ima prijevojnu tocku (%d, %d)',x,y)
else
sprintf('Funkcija nema prijevojnu tocku.')
end
Primjer 9. Ispitajmo ima li polinom p(x) = x4 + 1 prijevojnu toku, pa, ako ima, odredimo je.
Ovaj je primjer namjerno odabran za ispitivanje valjanosti rada funkcije infleksija. Naime,
lako se vidi da je p''(x) = 12 x2 0, za svaki x R, pa sve vrijednosti koje moe poprimiti
polinom p'' imaju isti predznak. To znai da zadani polinom p nema prijevojnu toku.
Sad kad smo otkrili tajnu, tj. krajnji rezultat, prijeimo na rjeavanje zadatka. Ranije
opisanim postupkom najprije emo doznati kandidate za prijevojnu toku. Utipkajmo:
p=x^4+1;
p2=diff(p,2)
Pritisnimo Enter, pa e MATLAB ispisati:
p2 =
12*x^2
Formalno rijeimo jednadbu p''(x) = 0, tj. p2(x) = 0 iako rjeenja moemo otkriti i napamet:
solve('12*x^2=0')
MATLAB e ispisati:
ans =
[ 0]
[ 0]
mr.sc. Bojan Kovai, vii predava
96
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Preostaje provjeriti ima li polazni polinom p prijevojnu toku u toki s apscisom 0.
Promatrajmo ponaanje polinoma p'', tj. polinoma p2 na segmentu [0.0001, 0.0001], tj.
zadajmo e = 0.0001. Utipkajmo:
infleksija(p,0,0.0001)
pa e MATLAB ekspresno ispisati oekivani rezultat:
ans =
Funkcija nema prijevojnu tocku.
Primjer 10. Ispitajmo ima li realna funkcija f (x) =
ln x
prijevojnu toku. Ako ima, odredimo
x2
koordinate te toke.
U nova dva retka komandnoga prozora utipkamo:
f=log(x)/x^2;
f2=simple(diff(f,2))
pa e MATLAB ispisati:
f2 =
(-5+6*log(x))/x^4
U sljedei redak najprije upiimo
solve('
potom prekopirajmo izraz (-5+6*log(x))/x^4, pa nadopiimo:
=0')
tako da dobijemo:
solve('(-5+6*log(x))/x^4=0')
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
exp(5/6)
Preostalo je jo provjeriti je li toka ija je apscisa x = 6 e5 doista prijevojna toka. U tu
svrhu opet uzmimo e = 0.0001, pa u sljedei redak komandnoga prozora utipkajmo:
infleksija(f,exp(5/6),0.0001)
Pritisnimo Enter, pa e MATLAB ispisati:
mr.sc. Bojan Kovai, vii predava
97
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
Funkcija ima prijevojnu tocku (2.300976e+000, 1.573963e-001)
Ovdje imamo situaciju analognu onoj iz Primjera 8. Priblina vrijednost broja
e5 je broj
( )
5 3 e
je broj 0.1573963 iji je zapis u
6 e2
znanstvenom obliku 1.573963e-001. (Provjerite istinitost navedenih aproksimacija.)
2.300976, a priblina vrijednost broja f
e5 =
Primjer 1, Zadane su realne funkcije f (x) = x2 i g(x) = ex. Odredimo kompozicije funkcija
f gi g f .
Najprije oistimo MATLAB-ov komandni prozor koristei funkciju clc. Odredimo
najprije kompoziciju f g . U nova tri retka MATLAB-ova komandnoga prozora utipkajmo:
syms x f g;
f=x^2;g=exp(x);
simplify(compose(f,g,x))
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
exp(2*x)
Kako smo mogli i oekivati, rezultat je ( f g )( x ) = e 2 x . Odredimo kompoziciju g f .
Pritisnimo tipku i preuredimo posljednje utipkani redak ovako:
simplify(compose(g,f,x))
Ponovno pritisnimo Enter, pa e MATLAB ispisati:
ans =
exp(x^2)
2
98
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Sljedei e nam primjer pokazati to se dogaa kad neka jednadba ima beskonano mnogo
meusobno razliitih realnih rjeenja.
Primjer 2. Zadane su realne funkcije f (x) = sin x i g(x) = |x|. Rijeimo jednadbu:
( g f )( x ) = 1 .
Oznaimo h:= g f . Funkciju h odredimo kao u Primjeru 1. U nova dva retka MATLAB-ova
komandnoga prozora utipkajmo:
f=sin(x);g=abs(x);
h=compose(g,f,x)
Pritisnimo Enter, pa e MATLAB ispisati:
h =
abs(sin(x))
Dakle, h ( x ) = ( g f )( x ) = sin x . Stoga trebamo rijeiti jednadbu:
|sin x| = 1.
Rijeimo li je analitiki, dobivamo:
xk =
+ k , k Z.
MATLAB, meutim, kao rezultat ne moe ispisati ovakav izraz, nego iskljuivo konkretan
realan ili kompleksan broj jer je izlazni argument te funkcije konanodimenzionalna matrica.
Stoga utipkavanjem:
solve('abs(sin(x))=1',x)
kao rezultat ne dobivamo gornji izraz, nego:
ans =
[ 1/2*pi]
[ -1/2*pi]
Dobivena rjeenja nisu sluajno odabrana. Naime, umjesto prave funkcije f (x) = sin x,
prigodom rjeavanja ove jednadbe MATLAB je zapravo promatrao restrikciju funkcije f
na segment , , tj. funkciju F(x) = Sin x. Podsjetimo se da je ovakav segment odabran
2 2
jer je na tom segmentu funkcija F(x) bijekcija i ima inverz F 1(x) = arcsin x. Stoga je
MATLAB zapravo rijeio jednadbu ( g F )( x ) = 1 , tj. jednadbu |Sin x| = 1.
99
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f=exp(x)+1;
simplify(finverse(f))
pa e MATLAB (oekivano) ispisati:
ans =
log(-1+x)
Ovaj izraz valja paljivo interpretirati:
f 1(x) = ln(x 1).
1
f=x^2+1;g=sqrt(x);
h=finverse(compose(f,g,x));
subs(h,1)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
0
1
100
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f=log(x);g=atan(x);
h=finverse(compose(g,f,x))
Pritisnemo Enter, pa e MATLAB ispisati:
h =
exp(tan(x))
Preostaje iskoristiti funkciju solve:
solve('exp(tan(x))=exp(1)',x)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1/4*pi
Dakle, dobili smo x =
Napomena: Primjer 5. smo mogli rijeiti neto krae i lukavije. Naime, oznaimo li
h = g f , onda polaznu jednadbu moemo zapisati u obliku:
h1(x) = e.
Na lijevu i desnu stranu jednadbe djelujemo s funkcijom h, pa dobijemo:
h[h1(x)] = h(e),
Prema definiciji inverza funkcije, lijeva je strana jednaka x, pa gornja jednakost prelazi u:
x = h(e).
Stoga u nova tri retka MATLAB-ova komandnoga prozora utipkajmo:
f=log(x);g=atan(x);
h=compose(g,f,x);
x1=subs(h,exp(1))
x1 =
0.78539816339745
Lako se provjeri da je
101
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f=x^(1/3);g=acot(x);
f1=diff(compose(f,g,x),1);f2=diff(compose(g,f,x),1);
f3=diff(finverse(f),1);f4=diff(finverse(g),1);F=[f1 f2 f3 f4]
Pritisnimo Enter, pa e MATLAB ispisati:
F =
[-1/3/acot(x)^(2/3)/(x^2+1),-1/3/x^(2/3)/(1+x^(2/3)),3*x^2,-1-cot(x)^2]
( f g ) '( x ) =
( g f ) '( x ) =
1
3 3 arcctg 2 x ( x 2 + 1)
1
3 3 x2 1 + 3 x2
1
,
sin 2 x
a MATLAB je ispisao:
( g 1 ) '( x ) = f 4 ( x ) = 1 ctg 2 x .
Meutim, nije teko provjeriti jednakost funkcija
1
i 1 ctg2x. Uinite to za vjebu.
2
sin x
Primjer 7. Zadane su realne funkcije f (x) = cos x i g (x) = ex. Izraunajmo ( f g ) 1 '(0) , pa
rijeimo jednadbu ( g f ) 1 '( x ) = 1 .
Prije rjeavanja ovoga primjera napravite veliko spremanje i oistite MATLAB-ov koman15
Sve potrebne funkcije mogu se deklarirati i u samo jednom retku. Radi preglednosti, odluili smo se za
vieretano deklariranje. Ista napomena vrijedi i za daljnja deklariranja varijabli, funkcija i sl.
102
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
dni prozor pomou funkcije clc. Oznaimo h1 := ( f g ) 1 ' i h2 := ( g f ) 1 ' Potom u
nova etiri retka komandnoga prozora utipkajmo:
f=cos(x);g=exp(x);
h1=diff(finverse(compose(f,g,x)),1);
h2=diff(finverse(compose(g,f,x)),1);
subs(h1,0)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
-0.63661977236758
2
Rijeimo li prvi dio zadatka analitiki, dobit emo tonu vrijednost ( f g ) 1 '(0) = .
0.63661977236758.
h2
pa e MATLAB ispisati:
h2 =
-1/x/(1-log(x)^2)^(1/2)
Preostaje primijeniti kopirajzalijepi tehniku i funkciju solve:
solve('-1/x/(1-log(x)^2)^(1/2)=-1',x)
pa e MATLAB ispisati prilino neoekivan rezultat:
ans =
exp(0)
Ovakav je zapis posljedica primjene funkcije solve i priblinoga rjeavanja nealgebarskih
jednadbi. Utipkamo li u sljedeem retku komandnoga prozora
simplify(ans)
dobit emo znatno ljepi oblik rjeenja zadane jednadbe:
ans =
1
103
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
3n + n 3
.
2n + n 2
Ako to dosad niste uinili, svakako poistite MATLAB-ov komandni prozor koristei
funkciju clc. Potom u nova dva retka oienoga komandnoga prozora upiimo:
syms n;
limit((3^n+n^3)/(2^n+n^2),n,inf)
Uoimo sintaksu funkcije limit u ovom sluaju: najprije se upisuje opi lan niza, potom
ime nezavisne varijable, te naposljetku vrijednost prema kojoj tei ta nezavisna varijabla.
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
inf
Taj rezultat smo mogli i unaprijed oekivati. Naime, za jako velike n N vrijedi
n
3n + n 3 3n 3
asimptotska aproksimacija: an = n
=
. Budui da za bilo koju eksponencijalnu
2 + n 2 2n 2
funkciju ija je baza a > 1 vrijedi lim a x = + , polazni niz nema svoju graninu vrijednost.
x +
4n
3
2n
Doajeni pismenih ispita iz Matematike 1 mogli bi vam potvrditi da su vrlo slini zadatci bili
zadavani na tim pismenim ispitima i da je njihova rijeenost bila pristojno reeno vrlo
skromna. Eh, da im je na pismenom ispitu jo bio dostupan MATLAB, gdje bi im bio kraj!
Ostavimo spomenute doajene neka uivaju u svojim slatkim matarijama, a mi rijeimo
postavljeni zadatak uz pomo MATLAB-a. U novi redak komandnoga prozora utipkajmo:
limit(((1+3/(4*n))^(2*n))^(1/3),n,inf)
Pritisnimo Enter, pa e MATLAB ispisati:
104
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
exp(1/2)
1
2
arcsin n
.
n
. Stoga
limit(asin(n)/n,n,inf)
MATLAB e ispisati:
ans =
0
Neki e moda dobiti neodoljiv poriv otvoriti ampanjac i nazdraviti novom znanstvenotehnikom otkriu bug-a u MATLAB-u, ali, na njihovu alost, nema valjana razloga za
zdravicu. Naime, u ovom sluaju MATLAB promatra arkussinus kao kompleksnu funkciju
jedne kompleksne varijable, Preciznije, za x [1, 1] rezultat funkcije arcsin x je, kao i
obino, neki realan broj iz segmenta , , dok je za sve ostale realne brojeve x
2 2
vrijednost arkussinusa odreena izrazom
arcsin x = i ln x i + 1 x 2
Ovu graninu vrijednost relativno teko bismo izraunali na elementaran nain (pokuajte to
ipak uiniti!) ili uz uporabu L'Hpitalova pravila, ali za MATLAB tekoa nema. Utipkavanje
105
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
limit((exp(atan(x))-exp(asin(x)))/(1-(cos(x))^3),x,0)
kao rezultat daje
ans =
0
Napomena: Isti rezultat dobili bismo i utipkavanjem
limit((exp(atan(x))-exp(asin(x)))/(1-(cos(x))^3))
jer izostavljanjem oznake varijable i vrijednosti prema kojoj tei ta varijabla MATLAB
dogovorno pretpostavlja da dotina varijabla ima oznaku x i da tei prema nuli. Spretniji
meu vama prigodom raunanja graninih vrijednosti mogu primijeniti ovo pravilo, dok se
onima manje spretnijima preporuuje neka zapisuju i oznaku varijable i vrijednost prema
kojoj tei ta varijabla (kao to se, uostalom, mora uiniti u svim drugim sluajevima).
ctg( sin x )
limit((tan(pi/4*sin(x)))^(cot(pi*sin(x))),x,pi/2)
kao rezultat daje
ans =
exp(1/2)
Pokuajte i ovu graninu vrijednost izraunati bez uporabe L'Hpitalova pravila.
ln( x 2 + 2 x + 8)
Primjer 6. Izraunajmo graninu vrijednost lim
x + ln( x 2 + 4 x + 6)
xln x
Analogno kao i kod granine vrijednosti niza, u novi redak komandnoga prozora utipkavamo:
limit(((log(x^2+2*x+8))/log(x^2+4*x+6))^(x*log(x)),x,inf)
pa e MATLAB ispisati:
ans =
exp(-1)
Primjer 7. Izraunajmo graninu vrijednost lim
x 3
106
3
3
x+ x+ x
3
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Granina vrijednost u minus beskonanost rauna se potpuno analogno kao i granina
vrijednost u plus beskonanost, pri emu ispred konstante inf treba staviti znak -. Dakle,
utipkamo:
limit(x^(1/3)/(x+(x+x^(1/3))^(1/3))^(1/3),x,-inf)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
1
Osim tipinih obostranih graninih vrijednosti, pomou funkcije limit mogu se raunati i
razliite jednostrane granine vrijednosti. Evo nekoliko primjera.
1 e x 1 cos x
Primjer 8. Izraunajmo graninu vrijednost lim
.
x 0 +
sin x
U ovom sluaju u novi redak komandnoga prozora utipkavamo:
limit((sqrt(1-exp(-x))-sqrt(1-cos(x)))/sqrt(sin(x)),x,0,'right')
Uoimo da rije right (engl.: desno) mora biti zapisana pod znakom jednostrukih navodnika.
Ovdje, naravno, nismo mogli izostaviti nulu kao u napomeni iza Primjera 4. jer MATLAB-u
treba dati do znanja da se radi o jednostranoj, a ne o obostranoj graninoj vrijednosti.
Pritisnemo tipku Enter, pa e MATLAB ispisati:
ans =
1
arcsin(1 x )
.
x 1
sin( x )
limit(asin(1-x)/sin(pi*x),x,1,'left')
Budui da je rije o graninoj vrijednosti slijeva, posljednji ulazni podatak funkcije limit je
rije left (engl: lijevo). Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1/pi
Primjer 10. Pomou MATLAB-a moemo izravno provjeriti valjanost derivacija
elementarnih funkcija. Podsjetimo se, prema definiciji, derivacija neke realne funkcije jedne
107
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
realne varijable u toki x je granina vrijednost lim
h 0
f ( x + h) f ( x)
. Provjerimo je li doista
h
syms h
limit((sin(x+h)-sin(x))/h,h,0)
Pritisnemo Enter, pa e MATLAB ispisati rezultat koji smo i oekivali:
ans =
cos(x)
int(acot(x))
Uoite da nismo naveli varijablu po kojoj se integrira jer MATLAB dogovorno pretpostavlja
da je ta varijabla x. Pritisnemo Enter, pa e MATLAB ispisati:
ans =
acot(x)*x+1/2*log(1+x^2)
Dakle, vrijedi:
108
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
arcctg x dx = x arcctg x + 2 ln (1 + x ) + C , C R.
2
int((atan(x))^2)
Pritisnemo Enter, pa e MATLAB ispisati:
int(exp(-x^2))
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1/2*pi^(1/2)*erf(x)
U ovome je rjeenju erf tzv. Gaussova funkcija pogrjeke definirana s
erf ( x ) =
e t dt ,
0
pa smo zapravo dobili izraz koji nije jednostavniji od polaznoga, ali ija se priblina
vrijednost za svaki konkretan realan broj x moe izraunati s proizvoljnom tonou.
109
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
e e
ln x
dx .
3
x
Pokuajte ovaj primjer najprije rijeiti analitiki pomou djelomine integracije i NewtonLeibnizove formule. U MATLAB-u jednostavno utipkamo:
int(log(x)/(x^(1/3)),1,exp(3/2))
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
3/2251799813685248*5045933306791233^(2/3)*1125899906842624^(1/3)*log(5045933306791233)75/1125899906842624*5045933306791233^(2/3)*1125899906842624^(1/3)*log(2)9/4503599627370496*5045933306791233^(2/3)*1125899906842624^(1/3)+9/4
Kakav li je ovo uasan rezultat? Ako ste najprije raunali analitiki, rezultat je bio
9
pristojan: tono . Zato se onda i ovdje nije pojavila ta vrijednost? Razlog je sljedei.
4
Kad god je to mogue, MATLAB nastoji tono izraunati vrijednost integrala i u tom obliku
ln x
ispisati rezultat. Odredimo li najprije neku primitivnu funkciju funkcije f ( x ) = 3
x
postupkom analognim onom iz Primjera 1., dobit emo npr.
F ( x) =
3
9
ln x 3 x 2 3 x 2 .
2
4
double(int(log(x)/x^(1/3),1,exp(3/2)))
i dobit emo priblinu (zapravo, tonu) vrijednost polaznoga integrala:
ans =
2.25000000000000
110
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Na temelju iskustva iz prethodnoga primjera unaprijed nas moe obuzeti nelagoda. Tko zna
kakav li e se sad izraz pojaviti kao krajnji rezultat! Ipak, utipkamo li:
int(cos(x)^3,0,pi/2)
i pritisnemo Enter, MATLAB e ispisati:
ans =
2/3
Zbog ega i u ovom sluaju nismo dobili neki grozan rezultat? Rad s eksponencijalnim i
logaritamskim funkcijama u MATLAB-u nije ba potpuno isti kao i rad s trigonometrijskim
funkcijama. Drugim rijeima, nije svejedno raunamo li cos 0 ili e e , a pogotovo ne kad su
u pitanju izrazi sa simbolikim objektima. Za vjebu provjerite valjanost dobivena rezultata
analitikim nainom.
Navedenim primjerima eljeli smo ukazati kakvi se problemi i situacije mogu pojavljivati kod
raunanja odreenih integrala. Preostaje nam utvrditi mogu li se pomou MATLAB-a
raunati i teki nepravi integrali koje smo rjeavali u Matematici 2. Odgovor je, naravno
potvrdan. Evo nekoliko primjera.
+
x2
dx .
Ovaj nepravi integral vjerojatno izaziva ne ba ugodna sjeanja svakome tko je ikad u ivotu
imao nekakva posla s normalnom razdiobom (vidjeti stranicu 214.). MATLAB takvih
sjeanja, niti problema, nasreu, nema. U novi redak komandnoga prozora utipkamo:
int(exp(-x^2),-inf,inf)
pritisnemo Enter, pa e MATLAB ispisati (tonu!) vrijednost zadanoga nepravog integrala:
ans =
pi^(1/2)
+
Doista,
x2
dx = .
x3 1
dx .
x 1
Iskusniji i vjetiji meu nama odmah e uoiti da u segmentu integracije [0, 6] podintegralna
x3 1
racionalna funkcija f ( x ) =
ima uklonjiv pol x = 1, to znai da zadani integral
x 1
mr.sc. Bojan Kovai, vii predava
111
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
konvergira. Pogledajmo to e ispisati MATLAB. U novi redak komandnoga prozora
utipkajmo:
int((x^3-1)/(x-1),0,3)
i utvrdit emo da se MATLAB nije dao prevariti:
ans =
96
Provjerite ispravnost dobivenoga rezultata analitikim odreivanjem nepravoga integrala.
1
x ln x dx .
0
Nekima od vas e se moda ponovno javiti nelagoda kao u Primjeru 4. Idemo najprije utvrditi
zato je zadani integral nepravi. Oznaimo li f (x) = x ln x, onda lako vidimo da je prirodno
podruje definicije funkcije f interval 0, +, to znai da podintegralna funkcija nije
definirana u donjem kraju podruja integracije. Dakle, doista je rije o nepravom integralu.
U novi redak komandnoga prozora utipkajmo:
int(x*log(x),0,1)
pritisnimo Enter, pa e MATLAB ispisati:
ans =
-1/4
Provjerite ispravnost dobivenoga rjeenja analitikim odreivanjem nepravoga integrala.
0
arctg x
(1 + x )
2 2
dx .
int(atan(x)/(1+x^2)^ 2,-inf,0)
init e mu se kao da ste ga pitali koliko je 2 + 2 jer je brzinom munje ispisao:
ans =
1/4-1/16*pi^2
112
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
+
arcctg x
1 + x2
dx .
int(acot(x)/sqrt(x^2+1),0,inf)
pritisnimo Enter, pa e MATLAB ispisati:
K =
113
dx
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
syms x p
int(1/x^p,0,1)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
limit((x-exp(p*log(x)))/(-1+p)/exp(p*log(x)),x = 0,right)
Kao rezultat smo dobili nekakvu jednostranu graninu vrijednost. Moe li je MATLAB barem
priblino izraunati? Kopirajmo dobiveni odgovor u novi redak naega komandnoga prozora i
malo ga preuredimo tako da dobijemo:
limit((x-exp(p*log(x)))/(-1+p)/exp(p*log(x)),x,0,'right')
Pritisnimo Enter. Nita od njega u ovom zadatku: opet je ispisao stari izraz. To je i
razumljivo jer zadani integral konvergira za p < 1, a divergira za p 1. Budui da MATLAB
nema nikakve dodatne informacije o vrijednosti parametra p, a nije dovoljno mudar da nam
ispisuje kad bi integral mogao konvergirati, dobili smo navedeni rezultat. U ovom je sluaju
analitiko odreivanje nepravoga integrala podesnije od raunalnoga.
16
Ova toka nastala je na temelju ideja i poticaja kolege-nastavnika Luke Marohnia, na emu mu iskreno
zahvaljujem.
17
Nizove znakova mogue je slijepiti i vertikalno koristei funkciju strvcat.
114
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
function r=rijesi(f,g);
syms x;
F=char(f);
G=char(g);
h=strcat(F,'=',G);
r=double(solve(h));
Uoimo strukturu ovoga niza naredbi: ulazni podatci su lijeva i desna strana jednadbe koju
elimo rijeiti, to znai da desna strana jednadbe moe biti razliita od nule. Najprije lijevu
stranu jednadbe zapiemo kao niz znakova. Potom to isto uinimo i s desnom stranom
jednadbe, pa slijepimo tako dobivene nizove znakova i na dobiveni simboliki objekt
primijenimo funkciju solve. Budui da kao rjeenja elimo dobiti realne ili kompleksne
brojeve, dobivene simbolike brojeve trebamo pretvoriti u obine realne brojeve pomou
funkcije double. Svi tako dobiveni brojevi bit e pohranjeni u izlaznu varijablu r.
Ovdje treba napomenuti da desna strana jednadbe (tj. funkcija g) obavezno treba sadravati
varijablu x. Npr. ako je na desnoj strani jednadbe prirodan broj n (tj. ako je g(x) = n),
prigodom izvrenja funkcije char MATLAB e kao niz znakova G pohraniti znak iji je
ASCII-kod jednak n, to e uzrokovati nemogunost rjeavanja jednadbe. No, takvu
opasnost moemo lako ukloniti zapiemo li funkciju g(x) = n u obliku g(x) = 0 x + n.
Pohranimo navedeni niz naredbi kao datoteku rijesi.m i vratimo se u komandni prozor.
Pogledajmo primjenu dobivene funkcije na dvama primjerima.
p1=x^3+6;
p2=2*x^2+5*x;
Potom primijenimo funkciju rijesi na polinome p1 i p2. U novi redak komandnoga prozora
utipkajmo:
rijesi(p1,p2)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
1
3
-2
115
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, apscise traenih toaka su x1 = 2, x2 = 1 i x3 = 3. Ordinate tih toaka dobijemo
uobiajeno koristei funkciju subs. U novi redak komandnoga prozora utipkajmo:
y1 =
-2
y2 =
7
y3 =
33
Dakle, traene toke su redom T1 = (2, 2), T2 = (1, 7) i T3 = (3, 33).
f=4*atan(x)+x-(pi+1);
g=0*x;
rijesi(f,g)
Ovakav redoslijed smo namjerno odabrali tako da ilustriramo to upisati ako je desna strana
jednadbe 0. Pritisnimo Enter, pa e MATLAB ispisati:
ans =
1
Isto rjeenje dobili bismo i ako bismo polaznu jednadbu zapisali u obliku
4 arctg x + x = + 1.
U tom bismo sluaju upisali:
f=4*atan(x)+x;
g=0*x+pi+1;
rijesi(f,g)
pa bi nakon pritiska tipke Enter MATLAB ponovno ispisao:
ans =
1
116
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) f ( x ) =
d) f (x) = x arsh x;
1 + x2
;
sin x
x
f) f ( x ) = 3
.
sin x
e) f ( x ) =
2. Ispitajte ima li svaka od sljedeih realnih funkcija lokalne ekstreme i, ako ima, odredite ih:
a) f (x) = 6 x5 + 15 x4 130 x3 210 x2 + 720 x 400;
tg x
b) f ( x ) =
;
x
2
1
c) f ( x ) = ln x 1 ;
2
x
d) f ( x ) = x2 ;
e
e) f ( x ) = arcsin x arccos x ;
f)
f ( x) =
( ch x sh x )
e) K ...
x2 +
f) K ... y 2 =
y 2 = 5, T = ( x > 0, 8) ;
x3
1
, T = , y < 0 .
1 x
2
117
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) y = x tg x ;
1
b) y = arcctg
;
x +1
c) y = x 2 arctg x ;
d) y = arth(x + 1);
e) y = (2 x3 6 x2 + 7 x 4) e2 x;
1
f) y = x ln 1 .
x
ako je:
a) f (x) = tg x, g(x) = ln x;
1
, g ( x) = x ;
b) f ( x ) =
1 + x2
3
f ( x ) = 3 x 2 + 1, g ( x ) = e x ;
1
d) f ( x ) = arcsin x , g ( x ) = 2 ;
x
x
2
e) f ( x ) = e , g ( x ) = sin x .
c)
6. Izraunajte
( f g)
1
'
(1), ( f g ) '(1), ( f g ) (1) ,
(g f )
1
(1), ( g f ) '(1) i
a) f ( x ) =
1
2
, g ( x ) = ln ( x 2 ) ;
x +1
b) f ( x ) = arccos x 1, g ( x ) = x 2 + 1 ;
c) f ( x ) = arctg 2 x, g ( x ) = 4 x ;
d) f ( x ) = arcctg( e x +1 ), g ( x ) = ln x 1 ;
e) f ( x ) = arcsin(ln x ), g ( x ) = e x 1 .
7. Zadane su realne funkcije f (x) = x2 i g (x) = ln x. Odredite sve realne nultoke funkcije
h(x) = ( f g g f )( x ) . Provjerite svoje rjeenje grafiki.
8. Zadane su realne funkcije f ( x ) = x i g (x) = ex. Odredite sve realne nultoke funkcije
1
118
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x
. Odredite barem jedno rjeenje
2
x
i g(x) = 8 x. Odredite barem jedno rjeenje
4
a) lim
b) lim(1 + 2 tg 2 x ) ctg x ;
x 0
2 x3 + x2 + x + 1
c) lim 3
;
x + x + 2 x 2 + x + 1
2 + 3 x x2 x3
d) lim
;
x 3 x 3 + 2 x 2 x 1
1
e) lim x 2+ln x ;
x 0+
f)
lim (2 x )
x2
cos x
4
12. Izraunajte (ako postoji) graninu vrijednost niza (an)nN iji je opi lan:
sin( n 2012 + n + 1)
;
2 n3 + 1
| sin n |
=
n2
1
arctg ( n + 1)
n
=
;
n2 + n + 1
arctg( n n + n ) + arcctg( n n n )
=
;
2012 n 3 + 1
2
2 2
2 ( n 1)
= 2 + + ... +
;
n n
n2
a) an =
b) an
c) an
d) an
e) an
119
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f) an =
n +1 3 n 1
.
6
n 1 + n
a) f ( x ) =
b)
c)
d)
e)
f)
2011 x 2
x 2 + 2011
ex
;
1 x
2011 x
y=
;
2011 e 2011x
x
y = arctg
;
2 x
y = x 2 arcctg x;
y = x + cth x.
b) y =
c)
d)
e)
f)
15. Kreirajte mdatoteku horas.m koja e sadravati jedino funkciju horas iji je ulazni
parametar realna funkcija f. Funkcija horas treba ispisati eksplicitni oblik jednadbi svih
horizontalnih asimptota na graf realne funkcije f, pri emu uz svaku pojedinu asimptotu
treba ispisati je li rije o lijevoj, desnoj ili obostranoj horizontalnoj asimptoti. Ako graf
funkcije f nema horizontalnih asimptota, funkcija treba ispisati tekst Nema niti jedne
horizontalne asimptote.
16. Kreirajte mdatoteku kosas.m koja e sadravati jedino funkciju kosas iji je ulazni
parametar realna funkcija f. Funkcija kosas treba ispisati eksplicitni oblik jednadbi svih
pravih (nehorizontalnih) kosih asimptota na graf funkcije f, pri emu uz svaku pojedinu
asimptotu treba ispisati je li rije o lijevoj, desnoj ili obostranoj kosoj asimptoti. Ako graf
funkcije f nema kosih asimptota, funkcija treba ispisati tekst Nema niti jedne kose
asimptote.
120
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x 1
a) F(x) =
, f (x) = 2012 +
x +1
;
x
+
1
x (1 + ln 2) + ln x + 2
;
x
6036 cos2 (2012 x )
3
c) F(x) = ctg (2012 x) + ln(sin 2012), f(x) =
;
sin 4 (2012 x )
e x [sin(2 x ) cos(2 x ) 2]
d) F(x) = ex ctg(2 x) tg(e2012), f(x) =
;
sin 2 (2 x )
b) F(x) = (x + 2) ln(2 x) + e2010, f(x) =
x 3 x2
a) x x x
2 dx ;
x
x
b)
c)
2 + x (2 + x )
x 2
( x + 1) ( x + 1) (1
arcctg x dx ;
) dx ;
72 x 5 + 36 x 4 135 x 3 65 x 2 85 x 36
d)
dx ;
36 x 5 65 x 3 36 x
x4 + x3 + x 2 + x + 1
e)
dx ;
2 + x x2
cos x
f)
dx .
(3 sin x ) (4 + sin x )
a)
7 3 x 2 dx ;
1
1
b)
xe
2 x
dx ;
121
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
e
c)
ln
x dx ;
d)
sin x cos x dx
cos2 (2 x ) + cos(2 x )
2
1
e)
sh x dx ;
3
0
1
f)
arth x dx ;
0
20. Izraunajte prosjenu vrijednost realne funkcije f na njezinu prirodnu podruju definicije
ako je:
a) f (x) = arcsin x;
b) f (x) = arccos(2 x);
c)
f ( x) = 4 x2 ;
d) f ( x ) = 2 x x 2 ;
e)
f ( x) = 8 7 x x2 ;
f)
f ( x) = x e
b) y = x2 x i y = x x2;
1
c) y = + ln 1 x 2 i y = 0;
2
1
d) y = 2
, y = 1 + ln(x + 1) i x = 2;
x +1
e) y = arcsin 1 x 2 i y = 0
f) y = arcsin
x
i x 4 y = 0.
2
x
a ax
a
e
+
e
122
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
23. Izraunajte obujam rotacijskoga tijela koje nastaje rotacijom lika omeenoga krivuljama
y2 = x3, y = 0 i x = 1 oko osi ordinata.
24. Izraunajte obujam rotacijskoga tijela koje nastaje rotacijom krivulje x2 + 4 y2 = 4 oko
osi apscisa.
25. Ispitajte konvergenciju sljedeih nepravih integrala pa, ako konvergiraju, izraunajte ih:
+
a)
x e x dx ;
b)
x (ln
dx
;
x ln x 2)
e3
c)
e x dx ;
d)
6 e x dx
5 4 e x e 2 x ;
e)
f)
dx
;
+ x +1
arctg xdx .
26. Ispitajte konvergenciju sljedeih nepravih integrala, pa, ako konvergiraju, izraunajte ih:
1
a)
0
e
b)
dx
2012
1
1
e)
f)
dx
;
x 1
d)
dx
x ln
1
2
c)
dx
x 1
e x dx
ex 1
dx
.
xx
123
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
en
e +1
. Zapiimo
n =0 + 1
dobiveni rezultat u znanstvenom obliku uz pretpostavku da mantisa ima tono 6 znamenaka.
e +1
n =0 + 1
en
e + 1 e
=
,
n =0
+ 1
+
e +1
<1
+1
slijedi da je zadani red konvergentan geometrijski red kojemu je prvi lan a1 = 1, a kolinik
e
e +1
q=
. Stoga je zbroj toga reda jednak:
+1
S=
a1
=
1 q
e +1
1
+1
124
3.93641 .
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Rijeimo isti zadatak koristei MATLAB. Ako dosad niste, obavezno poistite svoj
komandni prozor koristei funkciju clc. U nova dva retka toga prostora utipkajmo:
syms n
symsum(((exp(1)+1)/(pi+1))^(exp(1)*n),n,0,inf)
Uoimo sintaksu simbolike funkcije symsum. Najprije piemo opi lan reda, potom oznaku
nezavisne varijable (u ovom sluaju n) i, naposljetku, granice sumacije.
Pritisnemo Enter, pa e MATLAB ispisati:
??? Error using ==> sym/maple
Error, (in sum/indefnew) integer too large in context
Error in ==> d:\matlabr12\toolbox\symbolic\@sym\symsum.m
On line 43 ==>
r = maple('map','sum',f,[x.s '=' a.s '..' b.s]);
to se dogodilo i zato smo dobili ovakvu poruku? Naime, brojevi e i , definirani na gornji
nain, su preglomazni za funkciju symsum i ona ne moe nita raditi s njima. Stoga emo
se posluiti uobiajenim trikom: kolinik reda q definirat emo zasebno, pa ga uvrstiti kao
argument funkcije symsum. Dakle, u nova dva retka komandnoga prozora utipkamo:
q=(((exp(1)+1)/(pi+1))^(exp(1)));
symsum(q^n,n,0,inf)
Nakon to pritisnemo Enter, slijedi ugodno iznenaenje:
ans =
140737488355328/35752781694167
Hitro.hr pozovemo funkciju double da nam dobiveni razlomak pretvori u decimalan broj.
Utipkamo
double(ans)
i pritisnemo Enter, pa e MATLAB ispisati priblinu vrijednost koju smo ve ranije dobili:
ans =
3.93641
( ctg 5 + cth 6 )n
cos 1 + ch 2
( 1) n
. Zapiimo dobiveni
sin 3 + sh 4
n =0
rezultat u znanstvenom obliku uz pretpostavku da mantisa ima tono 6 znamenaka.
Primjer 2. Izraunajmo zbroj reda
ctg 5 + cth 6
cos 1 + ch 2
U ovom sluaju je ponovno a1 = 1, dok je q = ( 1)
. Analitiko
sin 3 + sh 4
rjeenje ovoga zadatka preputamo itateljima. I ovoga emo puta posebno zadati kolinik q,
mr.sc. Bojan Kovai, vii predava
125
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
pa postupiti kao u prethodnom primjeru. Dakle, u nova dva retka MATLAB-ova komandnoga
prozora utipkamo:
q=((cos(1)+cosh(2))/(sin(3)+sinh(4)))^(cot(5)+coth(6));
symsum(q^n,n,0,inf)
Pritisnemo Enter, pa e MATLAB ispisati jo jedan simpatian razlomak:
ans =
18014398509481984/13127017543403183
Pomou funkcije double dobivamo traeni znanstveni zapis rjeenja. Dakle, utipkamo
double(ans)
pritisnemo Enter, pa e MATLAB ispisati:
ans =
1.37231
Primjer 3. Izraunajmo vrijednost zbroja reda
2n
.
n =0 n !
+
ex =
n =0
xn
,
n!
n
!
n =0
+
Izvedimo ovaj rezultat koristei MATLAB. Najprije razrijeimo mali problem vezan uz
zadavanje funkcije f (n) = n! kao simbolike funkcije. Definirajmo je u novom retku radnoga
prozora kao simboliku funkciju nfact s:
nfact=sym('n!');
Traeni zbroj reda dobivamo utipkavajui:
symsum(2^n/nfact,n,0,inf)
u novi redak komandnoga prozora. Pritisnemo Enter, pa e MATLAB ispisati:
ans =
exp(2)
mr.sc. Bojan Kovai, vii predava
126
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pomou MATLAB-a moemo ne samo izraunati tone vrijednosti zbrojeva nekih redova
brojeva, nego i brzo i jednostavno razrijeiti neke aproksimacijske probleme vezane uz
zamjenu zbroja reda zbrojem prvih n lanova toga reda. Pogledajmo dva takva problema.
2n n !
nn
n =1
konvergira. Odredimo apsolutnu vrijednost pogrjeke koju inimo kad tonu vrijednost zbroja
reda zamijenimo zbrojem prvih 100 lanova toga reda.
Primjer 4. Koristei Cauchyjev kriterij (vidjeti toku 6.2.) moe se pokazati da red
ans =
3.355538069627073e-012
Dakle, pogrjeka je reda veliine 3.35554 1012. Provjerite da utipkavanjem
symsum(2^n*nfact/n^n,n,1,inf)
ne dobivamo nikakav konkretan rezultat. Stoga utipkajmo:
double(symsum(2^n*nfact/n^n,n,1,inf))
u novi redak komandnoga prozora. Pritisnimo Enter, pa e MATLAB ispisati priblinu
vrijednost zbroja polaznoga reda:
ans =
12.94895036267534
Primjer 5. Poznato nam je da harmonijski red
prirodan broj n tako da zbroj prvih n lanova toga reda bude strogo vei od 17.
Ovaj je primjer bolje i praktinije rijeiti koristei obinu m-datoteku. Nazovimo tu datoteku s
primjer5.m. Otvorimo je u novom prozoru, pa utipkajmo sljedei niz naredbi:
n=1;
z=0;
while z<=17
z=z+1/n;
n=n+1;
end
n-1
127
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
(Objasnite svaki redak ove mdatoteke.) Pohranimo upisane naredbe i vratimo se u komandni
prozor. U njegov novi redak utipkamo
primjer5
Pritisnemo Enter, pa e MATLAB ispisati:
n =
13562027
Dakle, treba zbrojiti samo prvih 13 562 027 lanova zadanoga reda da se (prvi put) dobije
zbroj strogo vei od 17.
n +
an < 1 , dok
u sluaju r = 1 kriterij ne daje odluku. Stoga otvorimo novu mdatoteku, pa u nju utipkajmo:
function y=cauchy(red);
syms n;
b=red^(1/n);
r=double(abs(limit(b,n,inf)));
if r<1
'Zadani red je konvergentan.'
else
if r>1
'Zadani red je divergentan.'
else
'Nema odluke prema Cauchyjevu kriteriju.'
end
end
128
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Detaljno objasnite svaki redak ove mdatoteke. Uoite korisnost funkcije double koja
simboliki objekt (graninu vrijednost) pretvara u numeriku varijablu s kojom se potom dalje
moe lako raunati.
Pohranimo dobivenu datoteku pod nazivom cauchy.m i vratimo se u MATLAB-ov komandni
prozor. Ako je potrebno, oistite taj prozor od rezultata prethodnih primjera/zadataka
koristei funkciju clc. U nova tri retka toga prozora utipkajmo:
syms a n;
a=((2*n+1)/(3*n))^(pi*n);
cauchy(a)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
Zadani red je konvergentan.
(Za vjebu rijeite ovaj primjer i analitiki.) Potom prepravite izraz za a u:
a=1/n;
i ponovno pokrenite funkciju cauchy. Ovoga puta MATLAB e ispisati:
ans =
Nema odluke prema Cauchyjevu kriteriju.
Takav rezultat smo, naravno, mogli i predvidjeti jer se divergencija harmonijskoga reda ne
moe utvrditi pomou Cauchyjeva (ali niti D'Alembertova i Raabeova!) kriterija.
Primjer 2. Kreirajmo funkcijsku datoteku dalembert.m koja sadri jedino funkciju dalembert
ija je jedina ulazna varijabla opi lan reda an . Funkcija treba ispisati je li red
konvergentan ili divergentan prema D'Alembertovu kriteriju, odnosno tekst Nema odluke
prema zadanu kriteriju. inae. (Utvrdite zato ne moemo ispisati tekst Nema odluke prema
D'Alembertovu kriteriju.) Provjerimo ispravnost rada svojega rjeenja na primjeru reda
en +
n + e .
an +1
< 1,
n + a
n
te da u sluaju r = 1 kriterij ne daje odluku. Otvorimo novu mdatoteku, pa u nju utipkajmo:
Podsjetimo da red
function r=dalembert(red);
syms n;
x=subs(red,n+1);
y=red;
mr.sc. Bojan Kovai, vii predava
129
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a=double(abs(limit(x/y,n,inf)));
if a<1
'Zadani red je konvergentan.'
else
if a>1
'Zadani red je divergentan.'
else
'Nema odluke prema zadanu kriteriju.'
end
end
Detaljno objasnite svaki redak ove funkcijske m-datoteke. Uoimo korisnost funkcije subs
pomou koje moemo odrediti (n + 1)-vi lan niza koji generira zadani red (tj. krae i
nepreciznije: (n + 1)-vi lan reda).
Pohranimo dobivenu m-datoteku pod nazivom dalembert.m i vratimo se u MATLAB-ov
komandni prozor. U nova dva retka toga prostora utipkajmo:
a=(exp(1)*n+pi)/(pi*n+exp(1));
dalembert(a)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
Zadani red je konvergentan
(Za vjebu rijeite zadatak i analitiki.) Potom prepravite izraz za a u:
a=1/n
pa ponovno pokrenite funkciju dalembert. Prema oekivanju, MATLAB e ispisati:
ans =
Nema odluke prema zadanu kriteriju.
Primjer 3. Kreirajmo funkcijsku datoteku raabe.m koja sadri jedino funkciju raabe ija je
jedina ulazna varijabla opi lan reda an . Funkcija treba ispisati je li red konvergentan ili
divergentan prema Raabeovu kriteriju, odnosno tekst Nema odluke prema zadanu kriteriju.
2n + 3
.
inae. Provjerimo ispravnost rada svojega rjeenja na primjeru reda 2
(n + 5 n + 4)2
Podsjetimo
da
red
konvergira
prema
Raabeovu
kriteriju
ako
vrijedi
a
r := lim n 1 n +1 > 1 , te da u sluaju r = 1 kriterij ne daje odluku. Otvorimo novu mdan +
an
130
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
toteku, pa u nju utipkajmo:
function y=raabe(red);
syms n;
b=subs(red,n+1);
c=red;
r=double(abs(limit(n*(1-a/b),n,inf)));
if r>1
'Zadani red je konvergentan.'
else
if r<1
'Zadani red je divergentan.'
else
'Nema odluke prema Raabeovu kriteriju.'
end
end
Detaljno objasnite svaki redak ove mdatoteke. Pohranimo dobivenu mdatoteku pod
nazivom raabe.m, pa se vratimo u MATLAB-ov komandni prozor. U nova dva retka toga
prostora utipkajmo:
a=(2*n+3)/(n^2+5*n+4)^ 2;
raabe(a)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
Zadani red je konvergentan.
(Za vjebu rijeite zadatak i analitiki.) Zadani je red primjer reda koji konvergira prema
Raabeovu kriteriju, dok Cauchyjev i D'Alembertov kriterij ne daju odluku. Provjerite tu
tvrdnju pokretanjem odgovarajuih funkcijskih datoteka.
131
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
xn
, pa odredimo za koji x R taj zbroj iznosi ln 2.
n =1 n
+
1
lan po lan. U
1 x
n =0
MATLAB-u je posao daleko jednostavniji. Prije rjeavanja svakako poistite svoj
komandni prozor. U nova dva retka toga prozora utipkajmo:
syms x n
symsum(x^n/n,n,1,inf)
Pritisnimo Enter, pa e MATLAB ispisati traeni zbroj:
ans =
-log(1-x)
Doista,
+
xn
1
=
xn =
dx = ln(1 x).
1 x
n =1 n
n=0
+
x=solve('-log(1-x)=log(2)')
Pritisnimo Enter, pa e MATLAB ispisati traeno rjeenje:
x =
1/2
Dakle, za x =
1
zbroj zadanoga reda jednak je ln 2.
2
132
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
n x
n =1
1
(lijevu stranu
1 x
n =0
deriviramo lan po lan, a desnu kao racionalnu funkciju) i mnoenjem dobivene jednakosti s
x. (Uinite to za vjebu!) U novom retku MATLAB-ova komandnoga prozora utipkajmo:
Analitiki bismo ovaj zadatak rijeili deriviranjem jednakosti
symsum(n*x^n,n,0,inf)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
x/(x-1)^2
Dakle,
+
n x
n =1
x
.
( x 1) 2
solve('x/(x-1)^2=2')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
[ 1/2]
[
2]
1
Na prvi bismo pogled zakljuili da je zbroj zadanoga reda jednak 2 za x ,
2
+
n 2
2 . Meutim,
takav da je
n =1
n +
n +
da za x = 2 polazni red divergira, odnosno da njegov zbroj ne moe biti jednak 2. Stoga je je18
133
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x
n =1
1
.
2
symsum(n/x^n,n,1,inf)
Pritisnimo Enter, pa e MATLAB na nae sveope iznenaenje ispisati:
ans =
x/(x-1)^2
U prvi trenutak pomiljamo da neto nije u redu jer, zbog tranzitivnosti relacije biti jednak,
iz rezultata Primjera 2. i dobivenoga rezultata slijedi udna jednakost funkcija:
+
n x
n =1
x
n =1
x
.
( x 1)2
Pokaimo da ta jednakost nije istinita niti za jedan x R. Npr. pomou Cauchyjeva kriterija
lako se provjeri (uinite to sami) da jednakost
+
n x
n =1
x
( x 1) 2
x
n =1
x
( x 1) 2
vrijedi za x R \ [1, 1]. Dakle, polazna jednakost moe biti valjana jedino za x {1, 1}.
+
Za x = 1 dobivamo red
(1)
n =1
19
134
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Drugi dio primjera rijeimo isto kao u Primjeru 2., ali uvaavajui uvjet x R \ [1, 1].
1
1
Ponovno dobivamo x , 2 , ali ovoga puta odbacujemo rjeenje x = . Stoga je zbroj
2
2
polaznoga reda jednak 2 samo za x = 2.
135
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
U ovome je primjeru, dakle, rije o prvom od ranije spomenutih est sluajeva. Ako to jo
nismo uinili, oistimo MATLAB-ov komandni prozor, pa u nova tri retka toga prozora
utipkajmo:
syms f x;
f=sqrt(exp(x)+1);
g=taylor(f)
Pritisnemo Enter, pa e MATLAB ispisati:
g =
2^(1/2)+1/4*2^(1/2)*x+3/32*2^(1/2)*x^2+7/384*2^(1/2)*x^3+3/2048*2^(1/2)*x^4
+1/122880*2^(1/2)*x^5
M 5 ( x) =
1
3
7
3
1
2 x5 +
2 x4 +
2 x3 + 2 x 2 + 2 x + 2 .
122880
2048
384
32
4
ap=abs(subs(f,1/2)-subs(g,1/2)), rp=abs(ap/subs(f,1/2))*100
Pritisnimo Enter, pa e MATLAB ispisati:
ap =
1.038984905887830e-006
rp =
6.383973986720478e-005
Dakle, apsolutna vrijednost pogrjeke aproksimacije iznosi (priblino) 1.03898 106, dok je
relativna vrijednost pogrjeke aproksimacije (priblino) 6.38397 105 %. Stoga moemo
zakljuiti da se radi o vrlo dobroj aproksimaciji zadane funkcije MacLaurinovim polinomom.
Provjerimo taj zakljuak i grafiki. U nova etiri retka MATLAB-ova komandnoga prozora
utipkajmo:
x=-1:0.001:1;
y1=subs(f,x);
y2=subs(g,x);
plot(x,y1,x,y2)
Pritisnimo Enter, pa emo dobiti sljedeu sliku:
mr.sc. Bojan Kovai, vii predava
136
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 1.
plot(x,abs(y1-y2))
Pritisnimo Enter, pa emo dobiti sljedeu sliku:
Slika 2.
137
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f=atan(x);
g=taylor(f,9)
Pritisnemo Enter, pa e MATLAB ispisati:
g =
x-1/3*x^3+1/5*x^5-1/7*x^7
Dakle, ne postoji MacLaurinov polinom stupnja 8 koji aproksimira zadanu funkciju, ve je
najbolja aproksimacija MacLaurinov polinom stupnja 7:
1
1
1
M 7 ( x) = x7 + x5 x3 + x .
7
5
3
Vrijednosti apsolutne, odnosno relativne pogrjeke aproksimacije u toki x =
1
raunamo
3
ap=abs(subs(f,1/3)-subs(g,1/3)), rp=abs(ap/subs(f,1/3))*100
Pritisnimo Enter, pa e MATLAB ispisati:
ap =
5.175861140183091e-006
rp =
0.00160865647921
1
iznosi priblino 5.17586
3
106, dok relativna vrijednost pogrjeke aproksimacije iznosi (priblino) 0.00161%. Stoga
zakljuujemo da je rije o vrlo dobroj aproksimaciji.
Dakle, apsolutna vrijednost pogrjeke aproksimacije u toki x =
Provjerimo svoj zakljuak i grafiki. Potpuno analogno kao u prethodnom primjeru dobivamo
sljedeu sliku:
138
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 3.
Slika 4.
Sa slike vidimo da je najvea vrijednost funkcije h na segmentu [1, 1] priblino jednaka 0.06
i da se postie u krajevima segmenta (tj. za x {1, 1}). Grubo moemo rei da smo dobili
aproksimaciju na cijelom segmentu loiju od one u Primjeru 1, ali odmah treba napomenuti da
njezina kvaliteta bitno ovisi o ulaznim podatcima (funkciji, stupnju MacLaurinovoga
polinoma, izboru segmenta itd.).
mr.sc. Bojan Kovai, vii predava
139
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
t + 1 + 1 MacLaurinovim polinomom
1
stupnja 7. Potom odredimo apsolutnu i relativnu pogrjeku aproksimacije vrijednosti f
2
1
s vrijednosti dobivenoga polinoma u toki t = , pa na istoj slici prikaimo grafove obiju
2
funkcija na segmentu [1, 1].
U ovom primjeru moramo pripaziti i na oznaku nezavisne varijable: u ovom sluaju ta je
varijabla oznaena slovom t. Vrijednost varijable n jednaka je n = 7 + 1 = 8. U nova tri retka
komandnoga prozora utipkajmo:
syms g t;
g=log(sqrt(t+1)+1);
h=taylor(g,t,8)
Pritisnemo Enter, pa e MATLAB ispisati:
h =
log(2)+1/4*t-3/32*t^2+5/96*t^3-35/1024*t^4+63/2560*t^5-77/4096*t^6+429/28672*t^7
M 7 (t ) =
429 7
77 6
63 5
35 4 5 3 3 2 1
t
t +
t
t + t t + t + ln 2 .
28672
4096
2560
1024
96
32
4
ap=abs(subs(g,-1/2)-subs(h,-1/2)), rp=abs(ap/subs(g,-1/2))*100
u novi redak komandnoga prozora daje:
ap =
8.336880340131803e-005
rp =
0.01558878158369
1
iznosi (priblino)
2
8.33688 105, dok je relativna vrijednost te pogrjeke (priblino) 0.01559%. Stoga
zakljuujemo da je rije o vrlo dobroj aproksimaciji.
Provjerimo svoj zakljuak i grafiki. U nova etiri retka komandnoga prozora utipkajmo:
t=-1:0.001:1;
140
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
y1=subs(g,t);
y2=subs(h,t);
plot(t,y1,t,y2)
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 5.
Slika 6.
Sa slike vidimo da je najvea vrijednost funkcije h1(t) = |g(t) M7(t)| = |g(t) h(t)| na
segmentu [1, 1] priblino jednaka 0.2 i da se postie na lijevom kraju segmenta (tj. za x =
= 1). Da smo npr. odabrali segment [0.6, 0.6], spomenuta najvea vrijednost bila bi
priblino 4.4 104.
mr.sc. Bojan Kovai, vii predava
141
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
syms x
g=(x+2)^(1/3);
h=taylor(g,-1)
Pritisnemo Enter, pa e MATLAB ispisati:
h=
4/3+1/3*x-1/9*(x+1)^2+5/81*(x+1)^3-10/243*(x+1)^4+22/729*(x+1)^5
T5 ( x ) =
22
10
5
1
1
4
( x + 1)5
( x + 1) 4 + ( x + 1)3 ( x + 1)2 + x + .
729
243
81
9
3
3
1
dobivamo kao
3
ap=abs(subs(g,-1/3)-subs(h,-1/3)), rp=abs(ap/subs(g,-1/3))*100
u novi redak komandnoga prozora daje neto slabiji rezultat nego u prethodnim primjerima:
ap =
0.00134355796692
rp =
0.11332006770281
142
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x=-2:0.001:0;
y1=subs(g,x);
y2=subs(h,x);
plot(x,y1,x,y2)
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 7.
Slika 8.
Sa slike vidimo da je najvea vrijednost funkcije h1(x) = |g(x) T5(x)| = |g(x) h(x)| na
segmentu [2, 0] priblino jednaka 0.43 i da se postie na lijevom kraju segmenta. Da smo
polazni segment smanjili na [1.6, 0.6], ta bi vrijednost iznosila priblino 2.1 103.
mr.sc. Bojan Kovai, vii predava
143
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
syms h;
h=(log(x))^ 2;
taylor(h,9,1)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
(x-1)^2-(x-1)^3+11/12*(x-1)^4-5/6*(x-1)^5+137/180*(x-1)^6-7/10*(x-1)^7+363/560*(x-1)^8
363
7
137
5
11
( x 1)8 ( x 1)7 +
( x 1)6 ( x 1)5 + ( x 1)4 ( x 1)3 + ( x 1)2 .
560
10
180
6
12
1 3
Za vjebu prikaite grafiki funkcije h, T8 i h1 = h T8 na segmentu , , pa provjerite da
2 2
je najvea vrijednost funkcije h1 na tom segmentu priblino jednaka 2.3 103.
Primjer 6. Aproksimirajmo realnu funkciju f (u) = sin(2 u) Taylorovim polinomom stupnja
najvie 9 u okolini toke c =
U ovom su sluaju, dakle, ulazni podatci funkcije taylor: nezavisna varijabla u, vrijednost
varijable n = 9 + 1 = 10 i toka c =
prozora utipkamo:
syms u;
f=sin(2*u);
taylor(f,10,u,pi/2)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
-2*u+pi+4/3*(u-1/2*pi)^3-4/15*(u-1/2*pi)^5+8/315*(u-1/2*pi)^7-4/2835*(u-1/2*pi)^9
T9 (u ) =
8
4 4
u +
u u + u 2u + .
2835
2 315
2 15
2 3
2
144
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
2 k
2 k
Fn ( x ) = ak cos
x + bk sin
x .
T
k =0
(1)
(2)
k =0
1
a0 =
T
a +T
a +T
a +T
ak =
bk =
2 k
f ( x ) cos
x dx, za svaki k = 1,..., n;
T
2 k
f ( x ) sin
x dx, za svaki k = 1,..., n.
f ( x ) dx,
(3)
a + 2
1
ak = f ( x ) cos(k x ) dx, za svaki k = 1,..., n;
a
a + 2
1
bk = f ( x ) sin(k x ) dx, za svaki k = 1,..., n.
a
a0 =
f ( x ) dx,
(4)
Gornje je integrale esto tehniki mukotrpno analitiki raunati, pa emo taj postupak
implementirati u MATLAB-u. Pritom neemo provjeravati tzv. Dirichletove uvjete (uz koje je
mogu razvoj funkcije u Fourierov red), niti se baviti pitanjem periodinosti, nego emo
pretpostaviti da je periodina funkcija f definirana propisom na svojem osnovnom segmentu.
20
145
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Primjer 1. Kreirajmo funkcijsku m-datoteku fr.m koja sadri iskljuivo funkciju fr ije su
ulazne vrijednosti periodina realna funkcija f, realni brojevi a i b, te prirodan broj n. Funkcija
treba ispisati koeficijente a0, a1, , an, b1, , bn Fourierova polinoma koji aproksimira
funkciju f definiranu na osnovnom segmentu [a, b] s temeljnim periodom T := b a.
(Koeficijent b0 ne treba ispisivati jer je taj koeficijent uvijek jednak 0.)
Odmah napomenimo da naziv funkcije ne moe biti fourier jer MATLAB ve ima
implementiranu jednu gotovu funkciju istoga imena. Nadalje, koeficijent a0 moramo ispisati
posebno jer se rauna po posebnoj formuli, dok koeficijente uz prave (netrivijalne)
argumente funkcija sinus i kosinus moemo izraunati koristei for-petlju.
Otvorimo novu mdatoteku, pa u nju utipkajmo:
function y=fr(f,a,b,n)
syms x;
a0=double(1/(b-a)*int(f,a,b));
for k=1:n
c(k)=2/(b-a)*double(int(f*cos(2*k*pi/(b-a)*x),x,a,b));
d(k)=2/(b-a)*double(int(f*sin(2*k*pi/(b-a)*x),x,a,b));
end;
'Slobodni clan je:'
a0
'Koeficijenti uz argumente funkcije sin su:'
d
'Koeficijenti uz argumente funkcije cos su:'
c
Detaljno objasnite svaki pojedini redak ove datoteke. Pohranimo tako stvorenu datoteku i
vratimo se u MATLAB-ov komandni prozor. Preostaje ispitati je na konkretnim
primjerima.
syms x;
fr('x^2',-pi,pi,5)
mr.sc. Bojan Kovai, vii predava
146
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
Slobodni clan je:
a0 =
3.28986813369645
ans =
Koeficijenti uz argumente funkcije sin su:
d =
0
0
0
0
0
ans =
Koeficijenti uz argumente funkcije cos su:
c =
-4.00000000000000
1.00000000000000
0.25000000000000 -0.16000000000000
-0.44444444444444
Ovakav smo rezultat mogli i oekivati jer smo u izrazima za odreivanje Fourierovih
koeficijenata koristili funkciju double. Kako god bilo, traeni Fourierov polinom stupnja 5
je:
F5(x) = 3.28986813369645 4 cos x + cos(2 x) 0.44444444444444 cos(3 x) + 0.25
cos(4 x) 0.16 cos(5 x).
Grafove funkcija f i F5 zgodno je prikazati na istoj slici. Dobivamo:
Slika 9.
147
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
= |f(x) F5(x)| na segmentu [, ]. Dobivamo:
Slika 10.
fr('x^3',-pi,pi,4)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
Slobodni clan je:
a0 =
0
ans =
Koeficijenti uz argumente funkcije sin su:
d =
7.73920880217872
4.74730220054468
-8.36960440108936
148
6.13529182294846
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
Koeficijenti uz argumente funkcije cos su:
c =
0
0
0
0
Prema tome, traeni Fourierov polinom je:
F4(x) = 7.73920880217872 sin x 8.36960440108936 sin(2 x) + 6.13529182294846
sin(3 x) 4.74730220054468 sin(4 x).
Prikaemo li grafiki funkcije f i F4 na istoj slici, dobit emo:
Slika 11.
Slika 12.
149
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Jedan od razloga za ovako lou aproksimaciju jest i relativno mali stupanj Fourierova
polinoma. Odluimo li se za aproksimaciju Fourierovim polinomom stupnja 12, dobit emo:
F12(x) = 7.73920880217872 sin x 8.36960440108936 sin(2 x) + 6.13529182294846
sin(3 x) 4.74730220054468 sin(4 x) + 3.85184176043574 sin(5 x)
3.2343125781409 sin(6 x) + 2.78490154899929 sin(7 x) 2.44396360027234 sin(8
x) + 2.17678451711451 sin(9 x) 1.96192088021787 sin(10 x) + 1.78545774985997
sin(11 x) 1.63798962240378 sin(12 x),
Uobiajenim postupkom nacrtajmo grafove funkcija f i F12 na istoj slici. Dobijemo:
Slika 13.
Slika 14.
150
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
fr('exp(x)',0,pi,6)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
Slobodni clan je:
a0 =
7.04760135197026
ans =
Koeficijenti uz argumente funkcije sin su:
d =
-5.63808108157621
-3.31651828328012
-2.28570854658495
1.73479417894653 -1.39556462415253 -1.16649953411922
ans =
Koeficijenti uz argumente funkcije cos su:
c =
2.81904054078810
0.82912957082003
0.38095142443082
0.21684927236832
0.13955646241525
0.09720829450993
Dakle, traeni Fourierov polinom je:
F12(x) = 7.04760135197026 + 2.8190405407881 cos(2 x) 5.63808108157621 sin(2 x) +
+ 0.82912957082003 cos(4 x) 3.31651828328012 sin(4 x) + 0.38095142443082 cos(6
x) 2.28570854658495 sin(6 x) + 0.21684927236832 cos(8 x) 1.73479417894653
sin(8 x) + 0.13955646241525 cos(10 x) 1.39556462415253 sin(10 x) +
+ 0.09720829450993 cos(12 x) 1.16649953411922 sin(12 x).
Iako je gornji zapis prilino nezgrapan jer sadri dvanaest decimalnih brojeva, tone
vrijednosti Fourierovih koeficijenata relativno je teko izraunati (ali ne i nemogue
pokuajte to uiniti analitiki, pa provjerite svoje rezultate koristei MATLAB, ali bez
funkcije double), pa je gornji nain posve primjeren za praktine svrhe (uz ne nuno toliku
tonost).
Ve uobiajeno na istoj slici prikaimo grafove funkcija f i F12. Dobivamo:
151
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 15.
Slika 16.
Laici su moda oekivali da e u ovom sluaju slobodni lan a0 koji je u Primjeru 3. bio jednak 0 - bitno
popraviti kvalitetu aproksimacije vrijednosti funkcije u rubnim tokama. Aproksimacija Fourierovim polinomom
zapravo se odnosi na aproksimaciju vrijednosti funkcije na otvorenom intervalu a, a + T.
152
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
3e
a)
;
n =0
+
( e )n
e
b)
;
n =0
( e + )n
+
e2
;
c)
n =0 2
d)
sh 2 + ch 2
n =0
( tg 2012 + th 2012 )n
log 2 + ln 3
e) ( 1)n
n =0
log 2 3 + log 3 2
+
f)
1
1
arcsin + arsh
+
3
3
( 1) n
1
4
n =0
arccos + arch
3
3
ln 2 3n
;
4
1
arctg + arth
3
3
2. Odredite apsolutnu i relativnu vrijednost pogrjeke koju inimo ako zamijenimo zbroj
+
2012 n
reda
zbrojem prvih 100 lanova reda. Zapiite rezultate u znanstvenom obliku.
n!
n =0
3. Odredite apsolutnu i relativnu vrijednost pogrjeke koju inimo ako zamijenimo zbroj
+
1
reda 4 zbrojem prvih 100 lanova toga reda. Zapiite rezultate u znanstvenom obliku.
n =1 n
4. Odredite najmanji prirodan broj n tako da razlika zbroja reda
lanova toga reda bude strogo manja od 105.
k =1
k 3
+
k!
i zbroja prvih n
i zbroja prvih n
k =0
6. Odredite najmanji prirodan broj n tako da zbroj prvih n lanova harmonijskoga reda bude
strogo vei od 12.
mr.sc. Bojan Kovai, vii predava
153
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
4 9 16 25 36
+ + + + + ... ; (Naputak: Najprije odredite opi lan reda.)
10 20 30 40 50
4 8 12 16 20
+ + + + + ... ; (Naputak: Najprije odredite opi lan reda.)
2 6 12 20 30
5n
n 2 + 2n ;
n
1 1
2012 2 ;
2012
3 n2 + 1 ;
1
(3 n 1) (3 n + 2) ;
2012 n 2011
2013 3n ;
n+2
n2 + 1
h)
;
2
9 n 1
(2 n 1)3
i)
;
(3 n + 1) (9 n 2 3 n + 1)
1
j)
.
(n !) 2
xn
8. Izraunajte zbroj reda ( 1)
i odredite sve x R za koje je taj zbroj jednak ln 2.
n
n =1
+
( 1)n
9. Izraunajte zbroj reda n
i odredite sve x R za koje je taj zbroj jednak e.
n =0 x n !
+
n =0
11. Aproksimirajte sljedee funkcije MacLaurinovim polinomom stupnja najvie n, izraunajte apsolutnu i relativnu pogrjeku aproksimacije u toki c = 0.25, prikaite grafiki
funkciju f i dobiveni MacLaurinov polinom na segmentu [0.5, 0.5] u istom pravokutnom
koordinatnom sustavu u ravnini, te nacrtajte graf pripadne funkcije greke aproksimacije:
154
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) f ( x ) = 3 x + 1 , n = 5;
1
b) f ( x ) = ln( x + 1) , n = 5;
8
f ( x ) = sin x , n = 4;
2
d) f ( x ) = tg x , n = 6;
4
e) f (t ) = arcsin t , n = 4;
f) f (u ) = arcctg u , n = 4.
c)
12. Aproksimirajte sljedee realne funkcije Taylorovim polinomom stupnja n u okolini toke
c, odredite apsolutnu i relativnu vrijednost pogrjeke aproksimacije u toki c + 0.1,
prikaite grafiki funkciju f i dobiveni Taylorov polinom na segmentu [c 1, c + 1] u
istom pravokutnom koordinatnom sustavu u ravnini, pa nacrtajte graf pripadne funkcije
greke aproksimacije:
a) f (x) = ctg x, n = 5, c =
b)
c)
d)
e)
f)
;
2
f (x) = cth x, n = 5, c = ln 2;
f (x) = log x, n = 4, c = 10;
f (x) = 2x, n = 6, c = 1;
f (t) = sin t + cos3t, n = 4, c = ;
f (u) = th2x, n = 6, c = ln 2.
a)
b)
c)
d)
e)
14. Kreirajte funkcijsku m-datoteku zbprvm.m koja sadri jedino funkciju zbrprvm iji su
argumenti opi lan reda (u varijabli n) i prirodan broj m. Funkcija treba ispisati zbroj pr mr.sc. Bojan Kovai, vii predava
155
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
vih m lanova zadanoga reda.
15. Kreirajte funkcijsku mdatoteku razlika.m koja sadri jedino funkciju razlika iji su
argumenti opi lan reda (u varijabli n) i prirodan broj m. Funkcija treba odrediti koji je od
prvih m lanova reda najvei, a koji najmanji, te ispisati apsolutnu vrijednost njihove
razlike.
16. Kreirajte funkcijsku mdatoteku veciodk.m koja sadri jedino funkciju veciodk iji su
argumenti opi lan reda (u varijabli n), te prirodni brojevi k i m. Funkcija treba generirati
(ali ne i ispisati) prvih m lanova reda, te ispisati ukupan broj generiranih lanova koji su
strogo vei od k.
17. Kreirajte funkcijsku mdatoteku najveciodk.m koja sadri jedino funkciju najveciodk iji
su argumenti opi lan reda (u varijabli n), te prirodni brojevi k i m. Funkcija treba
generirati (ali ne i ispisati) prvih m lanova reda, te ispisati najvei od svih generiranih
lanova koji je strogo manji od k. Ako takav lan ne postoji, funkcija treba ispisati NaN.
18. Kreirajte funkcijsku mdatoteku zbrmac.m koja sadri jedino funkciju zbrmac iji su
argumenti realna funkcija f (u varijabli x) i prirodan broj n. Funkcija treba ispisati zbroj
svih koeficijenata MacLaurinova polinoma stupnja ne veega od n koji najbolje
aproksimira funkciju f. Bez provjere smijete pretpostaviti da je funkcija f beskonano puta
derivabilna na nekoj okolini toke c = 0.
19. Kreirajte funkcijsku mdatoteku zbrtay.m koja sadri jedino funkciju zbrtay iji su
argumenti realna funkcija f (u varijabli x), realan broj a i prirodan broj n. Funkcija treba
ispisati zbroj svih koeficijenata Taylorova polinoma stupnja n koji najbolje aproksimira
funkciju f u okolini toke a. Bez provjere smijete pretpostaviti da je funkcija f beskonano
puta derivabilna na nekoj okolini toke a.
20. Kreirajte funkcijsku mdatoteku frparna.m koja sadri jedino funkciju frparna iji su
argumenti parna funkcija f definirana na segmentu [0, a], strogo pozitivan realan broj a i
prirodan broj n. Temeljni period funkcije f jednak je 2 a. Funkcija treba ispisati
koeficijente a0, a1, , an odgovarajuega Fourierova polinoma koji aproksimira funkciju f
na njezinu osnovnu segmentu. Bez provjere smijete pretpostaviti da funkcija f zadovoljava
Dirichletove uvjete. (Naputak: Koristite preinaene formule za izraun Fourierovih
koeficijenata parne funkcije.)
21. Kreirajte funkcijsku mdatoteku frneparna.m koja sadri jedino funkciju frneparna iji
su argumenti neparna funkcija f definirana na intervalu 0, a, strogo pozitivan realan broj
a i prirodan broj n. Temeljni period funkcije f jednak je 2 a. Funkcija treba ispisati
koeficijente b1, b2, , bn Fourierova polinoma koji aproksimira funkciju f na njezinu
osnovnu segmentu. Bez provjere smijete pretpostaviti da funkcija f zadovoljava
Dirichletove uvjete. (Naputak: Koristite preinaene formule za izraun Fourierovih
koeficijenata neparne funkcije.)
156
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
syms x y
dsolve('(1+x^2)*Dy-2*sqrt(y)=0','x')
Komentirajmo sintaksu funkcije dsolve. Kako vidimo, derivacija nepoznate funkcije y
oznaava se s Dy. Nakon to napiemo obinu diferencijalnu jednadbu koju treba rijeiti, kao
posljednji argument moramo upisati naziv nezavisne varijable. Dogovorno se kao oznaka za
nezavisnu varijablu uzima slovo t.
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
atan(x)^2+2*atan(x)*C1+C1^2
Dobro nam je poznato da ope rjeenje obine diferencijalne jednadbe 1. reda sadri tono
jednu nepoznatu realnu konstantu. U ovome je sluaju ona oznaena s C1. Stoga je traeno
ope rjeenje polazne jednadbe
y = (arctg x + C)2, C R.
mr.sc. Bojan Kovai, vii predava
157
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Napomena 1.: Izostavimo li 'x' u sintaksi funkcije dsolve, MATLAB bi ispisao pogreno
rjeenje:
ans =
(t+C1+C1*x^2)^2/(1+x^2)^2
Naime, kako smo istaknuli, ne navedemo li naziv nezavisne varijable, MATLAB e
dogovorno pretpostaviti da je nezavisna varijabla t, a nepoznata funkcija y = y(t). Zbog toga je
u gornjem sluaju MATLAB varijablu x navedenu u izrazu argumentu funkcije dsolve
tretirao kao realnu konstantu, a ne kao nezavisnu varijablu i argument nepoznate funkcije y.
Stoga pripazite da pri pozivu funkcije dsolve ne zaboravite naziv nezavisne varijable!
2
dsolve('exp(x^2)*Dy+2*x*exp(x^2)*y=x*cos(x)','x')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
exp(-x^2)*cos(x)+exp(-x^2)*x*sin(x)+exp(-x^2)*C1
Stoga je ope rjeenje polazne jednadbe
2
y = e x (cos x + x sin x + C ) , C R.
dsolve('D2y-Dy-30*y=0','x')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
C1*exp(-5*x)+C2*exp(6*x)
Kako znamo, ope rjeenje bilo koje homogene obine diferencijalne jednadbe 2. reda sadri
tono dvije nepoznate realne konstante: C1 i C2. Stoga je ope rjeenje polazne jednadbe:
y = C1 e5 x + C2 e6 x, C1, C2 R.
158
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
2*exp(-x)*x*cos(x)+exp(-x)*cos(x)+2*exp(-x)*sin(x)*x^2-exp(x)*sin(x)+exp(-x)*x^2*cos(x)+C1+C2*exp(x)
Stoga je ope rjeenje polazne jednadbe zapisano u uobiajenom obliku:
dsolve('D4y-D2y=exp(-x)','x')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
-1/2*x*exp(-x)-5/4*exp(-x)+C1+C2*x+C3*exp(x)+C4*exp(-x)
Stoga je ope rjeenje polazne jednadbe zapisano u uobiajenom obliku:
1
y = C1 + C2 x + C3 e x + C4 e x (2 x + 5) e x , C1, C2, C3, C4 R.
4
x 2 y 2 y '+ x y 3 = 1,
Primjer 1. Rijeimo Cauchyjevu zadau:
y (1) = 2.
159
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Ako to ve ranije nismo uinili, poistimo svoj komandni prozor. Time, dakako, MATLAB
nee zaboraviti da smo deklarirali simbolike objekte x i y. U novi redak komandnoga prozora
utipkajmo:
dsolve('x^2*y^2*Dy+x*y^3=1','y(1)=2','x')
Uoimo da se, kao i u postavci Cauchyjeve zadae, pri pozivu funkcije dsolve najprije
zasebno pie obina diferencijalna jednadba, potom zasebno poetni uvjet i naposljetku
oznaka nezavisne varijable (ako ta oznaka nije t). Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1/2*(12*x^2+52)^(1/3)/x
Rjeenje svake Cauchyjeve zadae (ako postoji) je jedinstveno, pa u ovom sluaju nemamo
niti jednu nepoznatu realnu konstantu. Dakle, rjeenje zadatka u uobiajenom zapisu je
funkcija
3
y=
12 x 2 + 52
.
2 x
y (0) = 1;
y '(0) = 26.
Uoimo da smo drugi poetni uvjet zadali u obliku Dy(0)=26. Openito, uvjet y(n)(x0) = yn
zadaje se u obliku Dny(x0)=yn. Pritisnemo Enter, pa e MATLAB ispisati:
ans =
sin(x)+x*cos(x)-3*exp(-4*x)+2*exp(6*x)
Dakle, rjeenje zadatka (zapisano u uobiajenom obliku) je realna funkcija
y = 2 e6 x 3 e4 x + sin x + x cos x.
( y ') 2 y 2 = 1,
y (0) = 0.
160
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
zbog kojega se ovaj problem ne ubraja u klasu Cauchyjevih zadaa. No, MATLAB s tim
nema problema. U novi redak komandnoga prozora utipkamo:
dsolve('(Dy)^2-y^2=1','y(0)=0','x')
Pritisnemo Enter, pa e MATLAB ispisati ono to smo mogli i naslutiti:
ans =
[ sinh(x)]
[ -sinh(x)]
Dakle, rjeenje zadatka su dvije realne funkcije: y1(x) = sh x i y2(x) = sh x. Napomenimo da
bi zadatak imao jedinstveno rjeenje da smo kao dodatni poetni uvjet zadali npr. y(ln 2) =
3
.
4
Provjerite to!
u ' = u sin t ,
Ovaj je primjer poneto drugaiji od ostalih jer je nepoznata funkcija oznaena slovom u, a
njezina nezavisna varijabla slovom t. Stoga u novi redak komandnoga prozora najprije
moramo zapisati deklaraciju novih simoblikih varijabli:
syms u t
Dalje postupamo na uobiajen nain. U novi redak komandnoga prozora utipkamo:
dsolve('Du=u-sin(t)','u(pi/2)=0')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1/2*cos(t)+1/2*sin(t)-1/2*exp(t)/(cosh(1/2*pi)+sinh(1/2*pi))
Budui da za svaki t R vrijedi jednakost
ch t + sh t = et,
dobiveno rjeenje moemo zapisati u jednostavnijem obliku:
u=
t
1
cos t + sin t e 2 .
2
Primjer 5. Odredite jednadbu krivulje koja prolazi tokom T = (1, 2) i ima svojstvo da bilo
koja njezina tangenta na osi ordinata odsijeca odsjeak jednak kvadratu apscise diralita iste
mr.sc. Bojan Kovai, vii predava
161
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
tangente.
Ovaj zadatak svodimo na rjeavanje Cauchyjeva problema. Neka je y = y(x) traena jednadba
krivulje. Iz podatka da krivulja prolazi tokom T slijedi y(1) = 2. Nadalje, jednadba tangente
u proizvoljnoj toki A = (xA, yA) krivulje glasi:
y = y'(xA) (x xA) + yA,
Njezin odsjeak na osi ordinata je:
l = yA y'(xA) xA.
Prma uvjetima zadatka slijedi da mora vrijediti jednakost:
y A y '( x A ) x A = x A2 ,
i to za svaku toku A, pa dobivamo obinu diferencijalnu jednadbu
y y ' x = x 2 ,
odnosno Cauchyjev problem
y y ' x = x 2 ,
y (1) = 2.
U novi redak komandnoga prozora utipkamo:
dsolve('y-Dy*x=x^2','y(1)=2','x')
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
-x^2+3*x
Stoga je rjeenje zadatka parabola y = x2 + 3 x.
Definiciju Laplaceova transformata i njegova inverza vidjeti npr. u [8], poglavlje 9., str. 325.
162
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Laplaceov transformat zadane realne funkcije odreujemo pomou MATLAB-ove funkcije
laplace. Pogledajmo dva primjera.
syms f F x s t
f=x^2*exp(1-x);
laplace(f)
Pritisnemo Enter, pa e MATLAB ispisati traeni Laplaceov transformat:
ans =
2*exp(1)/(s+1)^3
Zapiimo dobiveno rjeenje u uobiajenom zapisu:
F ( s) =
2e
.
( s + 1)3
laplace(f,t)
Primjer 2. Odredimo Laplaceov transformat funkcije f (x) = x sin2 x, pri emu varijabla u
rjeenju treba biti t.
Postupamo analogno kao u prethodnom primjeru:
f=x*sin(x)^2;
laplace(f,t)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
2/t^2/(t^2+4)+4/(t^2+4)^2
elimo li neto ljepi i dotjeraniji zapis dobivenoga transformata, u novi redak komandnoga
prozora utipkajmo:
pretty(simplify(ans))
Pritisnemo Enter, pa e MATLAB ispisati:
163
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
2
3t +4
2 -----------2 2
2
t (t + 4)
Dakle, traeni Laplaceov transformat je F (t ) = 2
3 t2 + 4
.
t 2 (t 2 + 4) 2
s2
. Varijabla u inverzu treba
s3 + 1
biti x.
U nova dva retka komandnoga prozora utipkajmo:
F=s^2/(s^3+1);
ilaplace(F,x)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
1/3*exp(-x)+2/3*exp(1/2*x)*cos(1/2*3^(1/2)*x).
3
1
2 1x
Ovaj izraz nije teko deifrirati. Traeni inverz je f ( x ) = e x + e 2 cos
x.
3
3
2
F=(s^3+s^2+1)/(s*(s-1))^2;
ilaplace(F,x)
Pritisnemo Enter, pa e MATLAB ispisati:
164
s3 + s2 + 1
[ s ( s 1)]2
. Varijabla u inverzu
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ans =
x+2+3*x*exp(x)-exp(x)
Dakle, traeni inverz je f (x) = x + 2 + (3 x 1) ex.
f) x 2 y '+ x y = x + 1 ;
y
g) y '+ = x y ;
x
h) y ''+ 4 y '+ 4 y = 3 (3 x + 2) e x ;
i) y '' 7 y '+ 10 y + 5 [ 7 cos(5 x ) + 3 sin(5 x ) ] = 0 ;
j)
a)
1
y 2 ln 2 = 2 .
y
2
y '+ x = x ;
b)
y (1) = 1 .
4
ln x
ey
dx
+
dy = 0;
c) x
1+ ey
y (e2 ) = ln( e2 1).
d) y (0) = 0;
;
y '(0) = 1.
165
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
y '' 3 y ' 4 y + (6 x + 1) e x = 0;
e) y (0) = 0;
y '(0) = 6.
f) y (0) = 4;
y '(0) = 35.
3. Odredite jednadbu krivulje koja prolazi tokom T(4, 1) tako da koeficijent smjera bilo
koje njezine normale bude jednak kvadratu apscise sjecita te normale s krivuljom.
4. Odredite jednadbu krivulje takve da je odsjeak na osi Ox bilo koje njezine normale
trostruko vei od ordinate sjecita te normale i traene krivulje.
5. Odredite jednadbu krivulje takve da koeficijent smjera bilo koje njezine normale bude
trostruko manji od umnoka ordinate i apscise sjecita te normale i krivulje.
6. Zadana je diferencijalna jednadba y'' y' 2 y = 0. Odredite integralnu krivulju koja
dodiruje pravac y = 3 u toki T = (0, y).
7. Odredite Laplaceove transformate sljedeih realnih funkcija:
x
x
a) f ( x ) = 4 e x + 2 sin cos ;
3
3
t
t
b) f (t ) = t cos sin ;
2
2
2 + s s2
a) F ( s ) =
;
( s 1)3
s2 + s + 1
;
s3 1
s 4 + 4 s 3 8 s 2 + 16 s + 16
c) F ( s ) = 6
;
s 4 s 5 + 12 s 4 32 s 3 + 48 s 2 64 s + 64
6 s 3 + 18 s 2 54 s + 162
d) F ( s ) = 6
.
s 6 s 5 + 27 s 4 108 s 3 + 243 s 2 486 s + 729
b) F ( s ) =
166
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
U opisnoj se statistici izraz varijabla obino poistovjeuje s izrazima obiljeje i svojstvo, dok se u
matematikoj statistici odnosi iskljuivo na numerika obiljeja.
24
U teoriji skupova taj se broj, inae, naziva kardinalni broj skupa, dok se termin opseg vie koristi u
geometrijskim razmatranjima.
25
Unato upornu zagovaranju glazbeno nadarenih statistiara, sintagma ljestvica modaliteta (jo) nije ula u
svakodnevnu uporabu.
167
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
obiljeja ''spol'' muki i enski, skala modaliteta obiljeja ''dan u tjednu'' ponedjeljak, utorak,
srijeda, etvrtak, petak, subota i nedjelja, skala modaliteta ''mjesec u godini'' sijeanj, veljaa,
oujak, travanj, svibanj, lipanj, srpanj, kolovoz, rujan, listopad, studeni i prosinac itd.
Prilikom podjele elemenata statistikoga skupa prema barem jednom obiljeju kad god je to
mogue treba utvrditi skalu modaliteta. To se poglavito odnosi na obiljeja iji se modaliteti
ne iskazuju numerikim vrijednostima (tzv. kvalitativna obiljeja).
Opa podjela obiljeja razlikuje kvalitativna, kvantitativna i vremenska obiljeja.
Kvalitativna obiljeja su obiljeja kod kojih su svojstva elemenata statistikoga skupa
iskazana odreenim pridjevima ili atributima, kategorijama i sl. Ova obiljeja mogu biti
nominalna i redosljedna (obiljeja ranga). Potonja se razlikuju od prvih po tome to pripadne
modalitete moemo rangirati prema nekom prirodnom kriteriju, tj. poredati ih od najboljega
prema najloijemu ili obrnuto. Kvantitativna obiljeja su obiljeja kod kojih se svojstva
elemenata statistikoga skupa izraavaju brojevima, a vezana su uz intervalnu i omjernu skalu
iskazivanja modaliteta. Kvantitativna obiljeja esto se nazivaju i numerika obiljeja, a
dodatno se dijele na diskretna (diskontinuirana) i kontinuirana.
U ovoj emo toki ukratko opisati kako u MATLAB-u moemo grafiki prikazati kvalitativna
statistika obiljeja i izraunati neke numerike pokazatelje vezane uz njih. Naalost, u
MATLAB-u nije mogue grupirati kvalitativne statistike podatke (podatke koji se odnose na
kvalitativna obiljeja). Grupiranjem podataka za svaki pojedini modalitet utvrujemo kolikom
je broju elemenata statistikoga skupa pridruen taj modalitet. Dobiveni broj naziva se
apsolutna frekvencija (uestalost). Neformalno, apsolutna frekvencija nekoga modaliteta
jednaka je ukupnom broju pojavljivanja toga modaliteta u pripadnom statistikom nizu.
Budui da je svakom elementu statistikoga skupa nuno pridruen tono jedan modalitet,
zbroj apsolutnih frekvencija svih modaliteta mora biti jednak opsegu statistikoga skupa.
Relativna frekvencija nekoga modaliteta jednaka je koliniku odgovarajue apsolutne
frekvencije toga modaliteta i opsega statistikoga skupa. Takav se raun provodi jer elimo
vidjeti kolikom dijelu statistikoga skupa je pridruen odreeni modalitet. Iako je relativna
frekvencija openito neki nenegativan realan broj iz segmenta [0, 1], radi praktinih ga je
potreba vrlo prikladno izraziti u proporcijama26, postotcima ili promilima.
Primjer 1. U sljedeoj je tablici prikazana podjela svih ena magistara znanosti koje su tu
akademsku titulu stekle u Republici Hrvatskoj u 2011. godini (stanje na dan 31.12.2011.)
prema znanstvenom podruju magistarskoga rada.
Dakle, u ovom je sluaju statistiki skup ene magistri znanosti koje su tu akademsku titulu
stekle u Republici Hrvatskoj u 2011. godini. Obiljeje prema kojemu su podijeljeni elementi
statistikoga skupa je znanstveno podruje magistarskoga rada i to je kvalitativno nominalno
statistiko obiljeje (svi modaliteti su meusobno ravnopravni). Npr. neki modaliteti toga
obiljeja su prirodne znanosti, tehnike znanosti, drutvene znanosti itd.
26
Proporcija oznaava odreeni dio jedinine veliine. Ona je zapravo decimalan broj izmeu 0 i 1.
168
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Znanstveno podruje
Broj osoba
prirodne znanosti
13
tehnike znanosti
40
biomedicina i zdravstvo
47
biotehnike znanosti
35
drutvene znanosti
157
humanistike znanosti
20
Ukupno:
312
Izvor: Priopenje Dravnoga zavoda za statistiku Republike Hrvatske, Zagreb, oujak 2012. (dostupno na www.dzs.hr)
R=(1/sum(A)*A)*100
Pritisnemo Enter, pa e MATLAB ispisati:
R =
Columns 1 through 4
4.16666666666667 12.82051282051282
Columns 5 through 6
50.32051282051282
6.41025641025641
15.06410256410256
169
Struktura [%]
4.17
12.82
15.06
11.22
50.32
6.41
100
11.21794871794872
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Iz dobivenih tablica slijedi npr. da je tono 13, odnosno priblino 4.17% promatranih osoba
magistriralo iz podruja prirodnih znanosti, tono 40, odnosno priblino 12.82% promatranih
osoba magistriralo iz podruja tehnikih znanosti itd. Uoite da je ovdje bitno istaknuti rijei
tono i priblino: apsolutne frekvencije 13 i 40 su tono odreene (brojanjem pojavnosti
pripadnih modaliteta u statistikom nizu), dok su relativne frekvencije 4.17% i 12.82%
priblino izraunane (s tonou od 10-2).
Grafiki prikaz dobivenih relativnih frekvencija dobit emo koristei funkciju pie. Njezin
prvi argument bit e matrica s relativnim frekvencijama, dok e drugi argument biti skala
modaliteta napisana u prvom stupcu tablice. Stoga u novi redak komandnoga prozora
utipkamo:
Slika 1.
Ovisno o estetskim ukusima, vizualno dojmljivija slika dobije se koritenjem funkcije pie3 s
istom sintaksom kao i funkcija pie. Dakle, utipkavanjem
170
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Slika 2.
Obiljeje godina studija pripada u kvalitativno redosljedno obiljeje, pa, osim relativnih
frekvencija, ima smisla formirati i tzv. kumulativne nizove apsolutnih i relativnih frekvencija.
Njihove formalne definicije su sljedee:
Pretpostavimo da su modaliteti promatranoga redosljednoga obiljeja (obiljeja ranga)
poredani od najslabijega prema najboljemu. Tada je:
kumulativna apsolutna frekvencija ''manje od'' modaliteta x jednaka zbroju apsolutnih
frekvencija svih modaliteta (elemenata niza) koji su jednaki ili slabiji od x;
kumulativna apsoltuna frekvencija ''vee od'' modaliteta x jednaka zbroju apsolutnih
frekvencija svih modaliteta (elemenata niza) koji su jednaki ili bolji od x;
kumulativna relativna frekvencija ''manje od'' modaliteta x jednaka koliniku apsolutne
kumulativne frekvencije ''manje od'' toga modaliteta i opsega statistikoga skupa;
kumulativna relativna frekvencija ''vee od'' modaliteta x jednaka koliniku apsolutne
kumulativne frekvencije ''vee od'' toga modaliteta i opsega statistikoga skupa.
mr.sc. Bojan Kovai, vii predava
171
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Izraunajmo relativne frekvencije (iskazane u postotcima), kumulativne apsolutne frekvencije
manje od, kumulativne relativne frekvencije manje od (iskazane u postotcima), kumulativne
apsolutne frekvencije vee od i kumulativne relativne frekvencije vee od (iskazane u
postotcima) za svaki modalitet promatranoga obiljeja, pa interpretirajmo vrijednosti koje
odgovaraju obiljeju druga. (Relativne frekvencije izraunajmo s tonou od 102.)
Naposljetku, prikaimo zadanu tablicu grafiki jednostavnim stupcima, a niz kumulativnih
relativnih frekvencija manje od grafiki tzv. kumulantom.
Poinjemo kao i u prethodnom primjeru. Svakako poistimo MATLAB-ov komandni
prozor, pa u novi redak toga prozora utipkajmo matricu s apsolutnim frekvencijama:
R=(1/sum(A)*A)*100;
u novi redak komandnoga prozora. Zasad tu matricu neemo ispisivati nego emo njezin ispis
ostaviti za kraj zadatka.
Matricu kumulativnih apsolutnih frekvencija manje od izravno rauna MATLAB-ova funkcija
cumsum. Ona pretpostavlja da su modaliteti poredani od najslabijega prema najboljemu (ba
kao i mi maloprije), a njezin jedini argument je matrica apsolutnih frekvencija A. U novi
redak radnoga prostora utipkamo:
AM=cumsum(A);
Analogno, matricu kumulativnih relativnih frekvencija manje od dobivamo primjenom
funkcije cumsum na matricu relativnih frekvencija:
RM=cumsum(R);
Matricu kumulativnih apsolutnih frekvencija vee od nije mogue izravno izraunati jer se
prigodom izrauna pretpostavlja da su modaliteti poredani od najboljega prema najslabijemu.
Stoga elemente matrice A treba zapisati u obrnutom redoslijedu. Radi jednostavnosti, tu emo
proceduru u MATLAB-u implementirati kao posebnu funkciju. Otvorimo novu mdatoteku i
u nju utipkajmo sljedei niz naredbi:
function y=obrnuta(x);
y=x(end:-1:1);
end
Pohranimo dobivenu m-datoteku pod nazivom obrnuta.m i vratimo se u komandni prozor.
Daljnja strategija je jednostavna, a vrijedi i za izraun kumulativnih apsolutnih frekvencija
vee od i za izraun kumulativnih relativnih frekvencija vee od:
172
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
formiramo matricu B koja se dobije ispisom elemenata matrice A u obrnutom poretku
(time zapravo slaemo apsolutne frekvencije od apsolutne frekvencije najboljega
modaliteta do apsolutne frekvencije najslabijega modaliteta);
primijenimo funkciju cumsum na matricu B i dobijemo matricu C;
ispiemo elemente matrice C u obrnutom poretku (ime dobivamo polazni (tablini)
poredak modaliteta kojima odgovaraju izraunane kumulativne frekvencije).
Stoga u nova dva retka radnoga prostora utipkamo:
AV=obrnuta(cumsum(obrnuta(A)));
RV=obrnuta(cumsum(obrnuta(R)));
Preostaje ispisati svih pet dobivenih matrica. Utipkavanjem
R =
45.43155625570019 31.37799519111185
AM =
10959
18528
24122
RM =
1.0e+002 *
0.45431556255700
0.76809551446812
AV =
24122
13163
5594
RV =
1.0e+002 *
1.00000000000000
0.54568443744300
23.19044855318796
1.00000000000000
0.23190448553188
Broj
studenata
Relativna
frekvencija
[%]
prva
druga
trea
Ukupno:
10 959
7 569
5 594
24 122
45.43
31.38
23.19
100
Kumulativna
apsolutna
frekvencija
manje od
10 959
18 528
24 122
Kumulativna
relativna
frekvencija
manje od [%]
45.43
76.81
100
Kumulativna
apsolutna
frekvencija
vee od
24 122
13 163
5 594
173
Kumulativna
relativna
frekvencija
vee od [%]
100
54.57
23.19
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Tono 18 528 promatranih studenata studira na prvoj ili drugoj godini studija.
Priblino 76.81% promatranih studenata studira na prvoj ili drugoj godini studija.
Tono 13 163 promatranih studenata studira na drugoj ili treoj godini studija.
Priblino 54.57% promatranih studenata studira na drugoj ili treoj godini studija.
Preostaje grafiki prikazati zadanu tablicu i niz kumulativnih relativnih frekvencija manje od.
Jednostavne stupce dobijemo pomou MATLAB-ove funkcije bar, a kumulantu pomou
funkcije plot. Stoga utipkavanjem
bar(A)
dobijemo:
Slika 3.
a utipkavanjem
plot(RM)
dobijemo:
Slika 4.
174
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
175
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Na kraju ovoga kratkoga pregleda statistikih veliina koje e nam kasnije trebati spomenimo
i osnovne numerike parametre statistikoga niza. Njihov je pregled dan u sljedeoj tablici.
Naziv parametra
MATLAB-ova funkcija
Interpretacija parametra
za raunanje parametra
mean
aritmetika sredina
prosjena vrijednost lanova niza
var
varijanca
prosjeno kvadratno odstupanje lanova niza
od aritmetike sredine
std
standardno odstupanje
prosjeno odstupanje lanova niza od aritmeti(standardna devijacija)
ke sredine
koeficijent varijacije
ne postoji
relativna mjera rasprenosti podataka, jednaka je
koliniku standardne devijacije i aritmetike sredine iskazanome u postotcima
Budui da emo sve podatke obraivati i analizirati pomou MATLAB-a, ''sirove'', odnosno
neobraene numerike podatke zapisujemo matrino u obliku jednoretane matrice. Razlog
tomu je to sve gornje funkcije imaju matrinu ulaznu varijablu. Zbog raznih praktinih
razloga (najei takav razlog je pogrjeka pri unosu podatka) prikladno je ''sirove'', odnosno
neobraene podatke zapisati u neku obinu mdatoteku koju u svakomu trenutku moemo
pozvati iz komandnoga prozora jednostavnim navoenjem njezina imena.
Pogledajmo na primjerima kako se tablino i grafiki obrauju numeriki nizovi ''sirovih''
podataka.
x = [3, 5, 2, 2, 5, 7, 6, 3, 1, 4, 8, 0, 0, 3, 6, 2, 5, 3, 0,
1, 6, 4, 4, 7, 2, 1, 6, 0, 3, 5]
pohranimo unesene podatke i vratimo se u komandni prozor. U njegovu novome retku
utipkajmo:
pogreske
176
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pritisnimo Enter, pa e MATLAB ispisati:
x =
Columns 1 through 13
3
5
2
2
Columns 14 through 26
3
6
2
5
Columns 27 through 30
6
0
3
5
Prikaimo najprije te podatke tablino. Uoimo da se gornji niz sastoji od ukupno 9 razliitih
vrijednosti (modaliteta): 0, 1, 2, 3, 4, 5, 6, 7 i 8. Svaka od tih vrijednosti pojavljuje se u nizu
odreeni broj puta, pa najprije moramo odrediti te brojeve. U tu svrhu kreirajmo mdatoteku
af.m koja sadri jedino funkciju af ija je jedina ulazna varijabla matrica x, a izlazne varijable
matrice a i f koje sadre sve razliite elemente niza poredane od najmanjega do najveega, te
njihove apsolutne frekvencije.
Otvorimo novu m-datoteku af.m. U njezin komandni prozor utipkajmo:
function [a,f]=af(x)
x=sort(x);
j=1;
n=1;
for k=2:size(x,2)
if x(k)==x(k-1)
n=n+1;
else
f(j)=n;
a(j)=x(k-1);
j=j+1;
n=1;
end
a(j)=x(k);
f(j)=n;
end
Objasnite svaki redak ove mdatoteke. Uoite na koji smo nain odredili apsolutne
frekvencije svakoga pojedinoga modaliteta.
Pohranimo utipkane naredbe i vratimo se u MATLAB-ov komandni prozor. Utipkajmo:
[a,f]=af(x)
i dobit emo:
a =
0
f =
177
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Iz tablice oitamo da je apsolutna frekvencija modaliteta 4 jednaka 3, to interpretiramo
ovako: U tono 3 uzorka bilo je tono 4 pogrena zapisa. Izraunajmo sada relativnu
frekvenciju toga modaliteta prema njezinoj definicijskoj formuli. Utipkajmo:
r=4/30*100
i dobit emo:
r =
13.33333333333333
Taj broj interpretiramo ovako: U priblino 13.333% uzoraka bilo je tono 4 pogrena zapisa.
Uoite koji su pokazatelji u toj interpretaciji tono, a koji priblino izraunani.
Prijeimo na izraunavanje elemenata niza kumulativnih frekvencija ''manje od ''. Kao i u
prethodnoj toki, utipkajmo:
fm=cumsum(f)
i dobijemo:
fm =
4
11
16
19
23
27
29
30
Modalitetu 4 odgovara kumulativna apsolutna frekvencija 19. Taj broj interpretiramo ovako:
U tono 19 promatranih uzoraka bilo je najvie 4 pogrena zapisa.
Pripadnu kumulativnu relativnu frekvenciju odreujemo utipkavanjem:
krf=19/30*100
Dobijemo:
krf =
53.33333333333334
Taj broj interpretiramo ovako: U priblino 53.333% promatranih uzoraka bilo je najvie 4
pogrena zapisa. Naravno, sve elemente niza kumulativnih relativnih frekvencija manje od
dobili bismo utipkavanjem:
r=(1/sum(f)*f)*100;
rfm=cumsum(r)
Za vjebu, analogno kao u prethodnoj toki, odredite sve lanove niza kumulativnih
apsolutnih/relativnih frekvencija vee od.
178
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Preostaje nam jo izraunati i interpretirati osnovne numerike parametre ovoga niza.
Izraunat emo ih pomou funkcijske mdatoteke negrupirani.m kako bismo izbjegli
viekratno utipkavanja niza istih naredbi. Otvorimo novu mdatoteku i utipkajmo:
function [sv,v,sd,kv]=negrupirani(x);
sv=mean(x);
v=var(x);
sd=std(x);
kv=sd/sv*100;
Pohranimo unesene naredbe i vratimo se u komandni prozor. U novi red utipkamo:
[sv,v,sd,kv]=negrupirani(x)
i dobijemo:
sv =
3.46666666666667
v =
5.42988505747126
sd =
2.33021137613549
kv =
67.21763585006228
Te parametre redom interpretiramo ovako:
Prosjean broj pogreaka u jednom uzorku (ili po jednom uzorku) iznosi priblino 3.466667.
Prosjeno kvadratno odstupanje broja pogreaka od aritmetike sredine iznosi priblino
5.42989.
Prosjeno odstupanje broja pogreaka od aritmetike sredine iznosi priblino 2.33021.
Rasprenost pogreaka oko prosjenoga broja pogreaka je priblino 67.21764% (prilino
velika, to znai da se podatci slabo grupiraju oko aritmetike sredine).
elimo li obraene podatke prikazati grafiki, to moemo uiniti na vie naina. Najei
prikazi su poligon apsolutnih frekvencija (ili mnogokut uestalosti), ve razmatrani
jednostavni stupci i jednostavni retci. Dobivamo ih rabei funkcije plot, bar i barh.
Utipkajmo najprije:
plot(a,f)
i dobit emo sljedei graf:
179
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
5
4.5
3.5
2.5
1.5
1
0
Slika 5.
bar(a,f)
Dobit emo sljedeu sliku:
5
4.5
3.5
2.5
1.5
0.5
0
0
Slika 6.
bar3(a,f)
to daje sljedeu trodimenzionalnu sliku:
mr.sc. Bojan Kovai, vii predava
180
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
0
1
2
3
4
5
6
7
8
Slika 7.
barh(a,f)
i dobijemo:
0.5
1.5
2.5
3.5
Slika 8.
bar3h(a,f)
i dobiti sliku:
mr.sc. Bojan Kovai, vii predava
181
4.5
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
8
7
6
5
4
3
2
1
0
0
1
2
3
4
5
Slika 9.
x=[2,3,5,3,0,3,0,5,4,4,6,3,4,6,3,5,6,3,4,1,0,3,4,5,6,3,0,3,0,4
,1,2,0,3,4,5,3,5,3,2,3,4,5,3,6,4,3,2,4,2,1,3,4,5,6,4,3,4,2,1];
Na kraju gornjega retka stavili smo toku-zarez kako bismo sprijeili MATLAB da nam
iznova ispie svih 60 dobivenih podataka. Pohranimo unesene podatke, vratimo se u koman-
182
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
dni prozor i u njegov novi redak upiimo:
pozivi
Ovime smo ''neprimjetno'' deklarirali matricu x i u komandnomu prozoru. Sada moemo
prijei na rjeavanje zadataka.
a) Najprije utipkajmo:
[a,f]=af(x)
pa e MATLAB ispisati:
a =
0
17
13
f =
i to je traeni tablini prikaz. Za grafiki prikaz u novi red komandnoga prozora najprije
utipkajmo:
plot(a,f)
i dobit emo sljedei poligon frekvencija:
18
16
14
12
10
4
0
Slika 10.
bar3(a,f)
i dobit emo traeni prikaz:
mr.sc. Bojan Kovai, vii predava
183
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
18
16
14
12
10
8
6
4
2
0
0
1
2
3
4
5
6
Slika 11.
r =
10
To znai da u tono 10% minuta nije bilo niti jednoga poziva.
184
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Preostaje oitati traenu kumulativnu relativnu frekvenciju:
krf =
76.66666666666667
Dakle, u priblino 76.6667% minuta broj poziva nije bio vei od 4.
d) Tekst ovoga zadatka dulji je od njegova rjeenja: trae se (samo) vrijednosti aritmetike
sredine i koeficijenta varijacije. Izraunat emo ih u novomu retku:
sv=mean(x),kv=std(x)/sv*100
pa dobivamo:
sv =
3.25000000000000
kv =
52.42107505975262
Dakle, prosjeno je bilo 3.25 poziva u jednoj minuti, a rasprenost poziva oko prosjenoga
broja poziva iznosi priblino 52.421% (relativno velika).
d=
M m
.
r
Veliinu d nazivamo irina razreda. Tako definiramo razrede kao sljedee intervale:
[m, m + d, [m + d, m + 2 d, [m + 2 d, m + 3 d, , [m + (r 1) d, M]
185
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Uoimo da je razlika supremuma i najmanjega elementa svakoga razreda jednaka d, to
opravdava terminologiju razredi jednakih irina. Sada svaki od modaliteta pridruimo
odgovarajuem razredu, pa tako dobivamo apsolutne frekvencije razreda fi. Te frekvencije
govore koliko je podataka u kojemu razredu. Njihov ukupan zbroj mora biti jednak ukupnomu
broju polaznih podataka (negrupiranih u razrede). Najmanji element svakoga razreda naziva
se donja granica razreda, a supremum svakoga razreda gornja granica razreda.
Namee se pitanje: kako raunati s dobivenim razredima? Mi znamo zbrajati, oduzimati,
mnoiti i dijeliti samo realne brojeve, ali ne i poluotvorene intervale, odnosno segmente. Taj
se problem rjeava definiranjem razredne sredine kao aritmetike sredine najmanjega i
maksimalnoga lana pojedinoga razreda. Drugim rijeima, ako je [A, B ili [A, B] neki razred,
onda je razredna sredina toga razreda realan broj s definiran formulom
s=
A+ B
.
2
186
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
if and(x(k)>=dg(r),x(k)<=gg(r))
f(r)=f(r)+1;
end;
end
Objasnite svaki redak ove mdatoteke. Uoite kako smo pomou logikoga operatora and
provjeravali kojem razredu pripada svaki pojedini negrupirani podatak.
Pohranimo upisani niz naredbi pod nazivom sfd.m i vratimo se u komandni prozor.
Primijenimo dobivenu funkciju na rjeavanje sljedeega primjera:
Primjer 1. Mjerenjem masa (u kg) trideset purana u nekomu peradarniku dobiveni su sljedei
podatci:
8.22, 6.03, 5.81, 7.23, 5.67, 4.90, 6.97, 8.65, 8.44, 7.57, 6.89, 6.60, 6.85, 5.52, 5.14, 6.97,
7.98, 5.70, 5.09, 7.22, 5.54, 8.06, 7.33, 5.94, 6.47, 7.24, 6.59, 5.83, 7.58, 6.15
Grupirajmo dobivene podatke u tono r = 5 razreda jednakih irina. Izraunajmo osnovne
numerike parametre negrupiranih i grupiranih podataka, interpretirajmo ih i usporedimo.
Naposljetku, dobivenu razdiobu podataka prikaimo grafiki.
Podatke najprije zapiemo u obinu mdatoteku koju emo nazvati purani.m. Otvorimo je (iz
komandnoga prozora) pa utipkajmo:
x=[8.22, 6.03, 5.81, 7.23, 5.67, 4.90, 6.97, 8.65, 8.44, 7.57,
6.89, 6.60, 6.85, 5.52, 5.14, 6.97, 7.98, 5.70, 5.09, 7.22,
5.54, 8.06, 7.33, 5.94, 6.47, 7.24, 6.59, 5.83, 7.58, 6.15];
Pohranimo unesene podatke i vratimo se u komandni prozor. U novi redak utipkamo:
purani
Tako smo inicijalizirali matricu x s masama purana. Grupirajmo ih u 5 razreda utipkavanjem:
[s,f,d]=sfd(x,5)
Dobit emo:
s =
Columns 1 through 4
5.27500000000000
6.02500000000000
Column 5
8.27500000000000
f =
5
7
7
6
5
c =
0.75000000000000
6.77500000000000
187
7.52500000000000
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, razredne sredine su redom 5.275, 6.025, 6.775, 7.525 i 8.275, a pripadne apsolutne
frekvencije redom 5, 7, 7, 6 i 5. irina svakoga razreda jednaka je 0.75.
Za razliku od primjera iz prethodne toke u kojima smo sve osnovne numerike parametre
raunali pomou odgovarajuih MATLAB-ovih funkcija, ovdje te parametre moramo raunati
rabei definicijske formule. Ipak, da ih ne bismo morali neprekidno utipkavati, stvorit emo
funkcijsku mdatoteku grupirani.m. Ona e sadravati jedino funkciju grupirani ije su
ulazne varijable matrice s i f, a izlazne varijable vrijednosti aritmetike sredine, varijance,
standardnoga odstupanja i koeficijenta varijacije.
Otvorimo novu mdatoteku i u nju utipkajmo:
function [sv,v,sd,kv] = grupirani(s,f);
N=sum(f);
sv=s*f'/N;
v=(s.^2)*f'/N-sv^2;
sd=sqrt(v);
kv=sd/sv*100;
Pohranimo unesene naredbe i vratimo se u komandni prozor. Utipkajmo:
[sv,v,sd,kv]=grupirani(s,f)
pa e MATLAB ispisati:
sv =
6.75000000000000
v =
0.99312499999999
sd =
0.99655657139973
kv =
14.76380105777383
Interpretacije dobivenih vrijednosti su sljedee:
Prosjena masa jednoga purana iznosi 6.75 kg.
Prosjeno kvadratno odstupanje masa purana od prosjene mase iznosi priblino 0.993 kg2.
Prosjeno odstupanje masa purana od prosjene mase iznosi priblino 0.997 kg.
Rasprenost masa purana oko prosjene mase iznosi priblino 14.764% (relativno mala).
Izraunajmo sada vrijednosti istih veliina, ali iz negrupiranih podataka. Pritisnimo tipku i
preuredimo posljednje upisanu naredbu ovako:
[sv,v,sd,kv]=negrupirani(x)
188
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dobit emo:
sv =
6.67266666666667
v =
1.08962712643678
sd =
1.043852061566
kv =
15.64370159206571
189
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
7
0
4.5
5.5
6.5
7.5
8.5
Slika 12.
6.8
6.6
6.4
6.2
5.8
5.6
5.4
5.2
5
5
5.5
6.5
Slika 13.
190
7.5
8.5
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Primjer 2. Mjerenjem trajanja rada (do prvoga kvara) odreenoga broja raunala istoga tipa
dobiveni su sljedei rezultati:
Trajanje rada [godina] Broj raunala
0.7 0.8
4
0.8 0.9
11
0.9 1.0
22
1.0 1.1
8
1.1 1.2
5
Ukupno:
50
Izraunajmo relativne frekvencije, pa formirajmo kumulativne nizove manje od i vee od
apsolutnih, odnosno relativnih frekvencija. Objasnimo pokazatelje koji se odnose na trei
razred. Potom izraunajmo osnovne numerike pokazatelje promatrane razdiobe i prikaimo
promatranu razdiobu grafiki histogramom.
U ovome nam je primjeru ve zadana razdioba podataka u prave razrede jednakih irina, pa ne
moramo primjenjivati funkciju sfd. Budui da su razredi jednakih irina i te irine su jednake
0.7 + 0.8
= 0.75 , posljednji
0.1, razredne sredine tvore aritmetiki niz kojemu je prvi lan s1 =
2
1.1 + 1.2
lan s5 =
= 1.15 , a razlika d = 0.1. Stoga matricu razrednih sredina s generiramo
2
utipkavajui
s=0.75:0.1:1.15;
u novi redak komandnoga prozora. Pripadnu matricu apsolutnih frekvencija f utipkamo
runo u novi redak komandnoga prozora:
f=[4 11 22 8 5];
Izraunajmo najprije relativne frekvencije. U novi redak komandnoga prozora utipkajmo:
r=(1/sum(f)*f)*100
Pritisnimo Enter, pa e MATLAB ispisati:
r =
8
22
44
16
10
Zadanu tablicu nadopunimo s treim stupcem u kojemu emo napisati izraunane relativne
frekvencije razreda. Dobijemo sljedeu tablicu:
191
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Trajanje rada [godina] Broj raunala Relativna frekvencija [%]
0.7 0.8
4
8
0.8 0.9
11
22
0.9 1.0
22
44
1.0 1.1
8
16
1.1 1.2
5
10
Ukupno:
50
100
Pokazatelj koji se odnosi na trei razred je r3 = 44. Zakljuujemo da tono 44% svih
promatranih raunala ima trajanje rada izmeu 0.9 godina i jedne godine. (Preciznije: tono
44% promatranih raunala ima trajanje rada dulje od 0.9 godina, ali ne dulje od jedne godine.)
U nastavku formirajmo niz apsolutnih/relativnih frekvencija manje od. To emo uiniti
primjenom funkcije cumsum na matricu s apsolutnim, odnosno relativnim frekvencijama. U
sljedei redak MATLAB-ova komandnoga prozora utipkajmo:
am=cumsum(f), rm=cumsum(r)
Pritisnimo Enter, pa e MATLAB ispisati:
am =
4
15
37
45
50
30
74
90
100
rm =
Tako smo dobili kumulativne nizove manje od apsolutnih, odnosno relativnih frekvencija, pa
maloprijanju tablicu nadopunjujemo s jo dva stupca:
Trajanje
Broj
rada [godina] raunala
0.7 0.8
0.8 0.9
0.9 1.0
1.0 1.1
1.1 1.2
Ukupno:
4
11
22
8
5
50
Relativna
frekvencija [%]
8
22
44
16
10
100
Kumulativna
frekvencija
manje od
4
15
37
45
50
Kumulativna
frekvencija manje od
[%]
8
30
74
90
100
Pripadni lanovi dobivenih nizova koji se odnose na trei razred su (am)3 = 37 i (rm)3 = 74.
To znai da tono 37, odnosno 74% svih promatranih raunala ima trajanje rada ne dulje od
jedne godine.
Odgovarajue nizove apsolutnih, odnosno relativnih frekvencija vee od formirat emo
koristei ranije definiranu funkciju obrnuta. U novi redak MATLAB-ova komandnoga pro-
192
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
zora utipkajmo:
av=obrnuta(cumsum(obrnuta(f))), rv=obrnuta(cumsum(obrnuta(r)))
Pritisnimo Enter, pa e MATLAB ispisati:
av =
50
46
35
13
rv =
100
92
70
26
10
Tako smo dobili jo dva niza kumulativnih frekvencija s kojima moemo nadopuniti polaznu
tablicu:
Trajanje
rada
[godina]
0.7 0.8
0.8 0.9
0.9 1.0
1.0 1.1
1.1 1.2
Ukupno:
Broj
raunala
4
11
22
8
5
50
Relativna
frekvencija
[%]
8
22
44
16
10
100
Kumulativna
frekvencija
manje od
4
15
37
45
50
Kumulativna
frekvencija
manje od [%]
8
30
74
90
100
Kumulativna
frekvencija
vee od
50
46
35
13
5
Kumulativna
frekvencija vee od
[%]
100
92
70
26
10
Pripadni lanovi tih nizova koji se odnose na trei razred su (av)3 = 35 i (rv)3 = 70. To znai
da tono 35, odnosno 70% svih promatranih raunala ima trajanje rada dulje od 0.9 godina.
Osnovne numerike pokazatelje promatrane razdiobe (aritmetiku sredinu, varijancu,
standardno odstupanje i koeficijent varijacije) izraunat emo pokretanjem ranije definirane
funkcije grupirani. U novi redak komandnoga prozora utipkamo:
[sv,v,sd,kv]=grupirani(s,f)
Pritisnemo Enter, pa e MATLAB ispisati:
sv =
0.94800000000000
v =
0.01099600000000
sd =
0.10486181383135
kv =
11.06137276701963
Ove veliine interpretiramo ovako:
Prosjeno trajanje rada promatranih raunala iznosi tono 0.948 godina.
193
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pripadna varijanca iznosi (priblino) 0.11 godina2.
Standardno odstupanje iznosi (priblino) 0.10486 godina.
Koeficijent varijacije iznosi (priblino) 11.06%, to znai da je rasprenost podataka
oko aritmetike sredine relativno slaba.
Preostaje grafiki prikazati podatke histogramom. U tu svrhu koristimo funkciju bar.
Prigodom njezina poziva kao trei argument upisujemo 1. (Podsjetimo: funkcija hist
zahtijeva negrupirane podatke.) Utipkavanjem
bar(s,f,1)
dobijemo traeni histogram:
Slika 14.
194
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
195
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
e) S tonou od 102 izraunajte relativnu frekvenciju svakoga pojedinoga modaliteta
iskazanu u postotcima. Interpretirajte tako dobivenu relativnu frekvenciju modaliteta
poslovni sektor.
f) Podatke iz tablice prikaite grafiki jednostavnim stupcima. Dobivene relativne
frekvencije prikaite tablino i grafiki strukturnim krugom.
3. U donjoj tablici prikazana je podjela svih punoljetnih stanovnika pikovine (stanje na dan
31.03.2012.) prema najvioj zavrenoj koli.
Najvia zavrena kola Broj osoba
osnovna
520
srednja
460
veleuilite
200
fakultet
120
Ukupno
1300
a) Odredite statistiki skup i njegov opseg.
b) Prema kojemu su obiljeju podijeljeni svi elementi statistikoga skupa? Kakvo je to
obiljeje: kvalitativno ili kvantitativno? Objasnite svoj odgovor.
c) Koliko modaliteta ima promatrano obiljeje? Navedite ih.
d) Interpretirajte apsolutnu frekvenciju modaliteta veleuilite.
e) S tonou od 102 izraunajte relativnu frekvenciju svakoga pojedinoga modaliteta
iskazanu u postotcima. Interpretirajte tako dobivenu relativnu frekvenciju modaliteta
osnovna kola.
f) Formirajte nizove kumulativnih apsolutnih/relativnih frekvencija manje od i vee od, pa
interpretirajte one lanove tih nizova koji se odnose na modalitet srednja. Relativne
frekvencije iskaite u postotcima i izraunajte s tonou od 102.
g) Podatke iz tablice prikaite grafiki jednostavnim retcima. Relativne frekvencije prikaite
tablino i grafiki strukturnim krugom. Niz kumulativnih relativnih frekvencija manje od
grafiki prikaite odgovarajuom kumulantom.
4. U donjoj tablici prikazana je podjela svih stanovnika Frkljevaca prema stupnju zadovoljstva
radom naelnika njihova mjesta (stanje na dan 31.03.2012.).
Stupanj zadovoljstva
Broj osoba
vrlo nezadovoljan
650
nezadovoljan
170
ni zadovoljan ni nezadovoljan
10
zadovoljan
7
vrlo zadovoljan
5
Ukupno
842
a) Odredite statistiki skup i njegov opseg.
196
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
b) Prema kojemu su obiljeju podijeljeni svi elementi statistikoga skupa? Kakvo je to
obiljeje: kvalitativno ili kvantitativno? Objasnite svoj odgovor.
c) Koliko modaliteta ima promatrano obiljeje? Navedite ih.
d) Interpretirajte apsolutnu frekvenciju modaliteta nezadovoljan.
e) S tonou od 102 izraunajte relativnu frekvenciju svakoga pojedinoga modaliteta
iskazanu u postotcima. Interpretirajte tako dobivenu relativnu frekvenciju modaliteta ni
zadovoljan ni nezadovoljan.
f) Formirajte nizove kumulativnih apsolutnih/relativnih frekvencija manje od i vee od, pa
interpretirajte one lanove tih nizova koji se odnose na modalitet srednja. Relativne
frekvencije iskaite u postotcima i izraunajte s tonou od 102.
g) Podatke iz tablice prikaite grafiki jednostavnim retcima. Relativne frekvencije prikaite
tablino i grafiki strukturnim krugom. Niz kumulativnih relativnih frekvencijama manje
od grafiki prikaite odgovarajuom kumulantom.
5. Tijekom protekle dvije godine Ivica je svakoga mjeseca biljeio iznos telefonskoga rauna
(u kn). Dobio je sljedee vrijednosti:
250.45, 220.79, 235.75, 245.36, 224.46, 236.24, 180.42, 182.64, 228.26, 234.18, 226.89,
232.74, 260.10, 218.32, 225.48, 241.66, 214.83, 233.14, 182.26, 187.85, 227.67, 237.08,
232.49, 229.84.
197
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
d) Izraunajte postotak kolskih ispita iz kojih je Janica dobila barem ''etvorku''.
e) Izraunajte Janiinu prosjenu ocjenu iz kolskih ispita, te odgovarajui pokazatelj
rasprenosti ocjena oko prosjene ocjene.
7. Rodilite u Vukovaru tijekom proteklih je mjeseci biljeilo poroajnu masu (u g) svih
novoroenih beba. Dobivene su sljedee vrijednosti:
3450, 4550, 3150, 3200, 2700, 4130, 2980, 3325, 3560, 3730, 2450, 3900, 2780, 3890, 4650,
3540, 2930, 3820, 3230, 4522, 4883, 2403, 2776, 3762, 2783, 3895, 4656, 3544, 2942, 3854,
3286, 4572, 3012, 3326, 3794, 3774, 2506, 3908, 2784, 4433, 4673, 3583, 2931, 3852, 3273,
4598, 4322.
198
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Vrijeme istravanja [minuta] Broj natjecatelja
22 24
20
24 26
30
26 28
40
28 30
50
30 40
60
a) Interpretirajte apsolutnu frekvenciju prvoga razreda.
b) Izraunajte pripadne relativne frekvencije. Interpretirajte relativnu frekvenciju drugoga
razreda.
c) Formirajte kumulativne nizove manje od apsolutnih, odnosno relativnih frekvencija.
Interpretirajte pokazatelje koji se odnose na trei razred.
d) Formirajte kumulativne nizove vee od apsolutnih, odnosno relativnih frekvencija.
Interpretirajte pokazatelje koji se odnose na etvrti razred.
e) Izraunajte osnovne numerike pokazatelje promatrane razdiobe. Interpretirajte
aritmetiku sredinu, standardno odstupanje i koeficijent varijacije.
f) Promatranu razdiobu grafiki prikaite histogramom.
10. Podatci o navrenoj dobi za svakoga od ukupno 40 tienika Doma za umirovljenike One
Direction u Ljeskovici grupirani su u razrede i dobivena je sljedea tablica:
Navrena dob [godina] Broj tienika
70 80
7
80 82
12
82 84
10
84 86
8
86 100
3
a) Interpretirajte apsolutnu frekvenciju posljednjega razreda.
b) Izraunajte pripadne relativne frekvencije. Interpretirajte relativnu frekvenciju etvrtoga
razreda.
c) Formirajte kumulativne nizove manje od apsolutnih, odnosno relativnih frekvencija.
Interpretirajte pokazatelje koji se odnose na drugi razred.
d) Formirajte kumulativne nizove vee od apsolutnih, odnosno relativnih frekvencija.
Interpretirajte pokazatelje koji se odnose na trei razred.
e) Izraunajte osnovne numerike pokazatelje promatrane razdiobe. Interpretirajte
aritmetiku sredinu, standardno odstupanje i koeficijent varijacije.
f) Promatranu razdiobu grafiki prikaite histogramom.
11. U praksi se podatci vrlo esto grupiraju u razrede ije su donje i gornje granice, te irine
viekratnici brojeva 10, 100, 1000 itd. Kreirajte funkcijsku datoteku sf1.m koja sadri jedino
funkciju sf1 ije su ulazne varijable jednoretana matrica x iji su elementi negrupirani
modaliteti kvantitativnoga obiljeja, te prirodan broj n. Funkcija treba grupirati modalitete u
mr.sc. Bojan Kovai, vii predava
199
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
razrede irine n takve da je donja granica prvoga razreda najvei prirodan broj djeljiv s n koji
je manji ili jednak svakom od modaliteta, a gornja granica posljednjega razreda najmanji
prirodan broj djeljiv s n koji je vei ili jednak svakom od modaliteta. Na izlazu treba ispisati
razredne sredine i pripadne apsolutne frekvencije. Provjerite ispravnost rada funkcije na
podatcima iz 7. zadatka i za n = 1000.
Naputak: U rjeavanju zadatka rabite MATLAB-ove aritmetike funkcije mod, min i max.
Funkcija min ispisuje najmanji, a funkcija max najvei element neke jednoretane matrice.
a
Funkcija mod(a,b)vraa realan broj jednak a b ako je b 0, odnosno a inae27.
b
12. Kreirajte funkcijsku mdatoteku najcesci.m koja sadri jedino funkciju najcesci ija je
jedina ulazna varijabla jednoretana matrica x iji su elementi negrupirani modaliteti
kvantitativnoga diskretnoga obiljeja. Na izlazu funkcija treba ispisati modalitet koji se
najee pojavljuje u statistikome nizu, a ako takvih modaliteta ima vie, onda treba ispisati
najmanji od njih.
Napomena: Vrijednost koja se najee pojavljuje u nekom statistikom nizu naziva se mod.
Zato gornju funkcijsku datoteku nismo mogli nazvati mod.m?
13. Napiite funkcijsku m-datoteku polozajne.m koja sadri jedino funkciju polozajni ija je
jedina ulazna varijabla jednoretana matrica x iji su elementi negrupirani modaliteti
kvantitativnoga diskretnoga obiljeja. Funkcija treba uzlazno sortirati sve elemente matrice x,
te ispisati 1. kvartil, medijan i 3. kvartil tako dobivenoga niza. Navedene vrijednosti
definirane su formulama:
srednja vrijednost
1. (donji) kvartil
2. kvartil (medijan)
x n +1 , ako je n neparan;
2
Me = Q2 = 1
( x n + x n ), ako je n paran.
+1
2 2
2
3. (gornji) kvartil
Provjerite ispravnost rada funkcije koja odreuje medijan koritenjem MATLAB-ove funkcije
median.
27
x je najvei cijeli broj jednak ili manji od x. x je najmanji cijeli broj jednak ili vei od x.
200
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
201
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
moemo pridruiti prirodan broj k koji oznaava ukupan broj ''uspjeha'' u tih n sluajnih
pokusa (tj. koliko se puta kao ishod sluajnoga pokusa pojavio dogaaj A). Time je definirana
sluajna varijabla X. Njezina slika je oito konaan skup [n]0 := {0, 1, 2, , n} pa je X
diskretna sluajna varijabla.
n
P( X = k ) = p k (1 p )n k .
k
(1)
v
.
sv
202
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Korak 4. Za svaki k [n] izraunamo vjerojatnost P(X = k) prema formuli (1).
Korak 5. Prema statistikoj definiciji vjerojatnosti, vjerojatnost P(X = k) jednaka je omjeru
ukupnoga broja pokusa u kojima se dogodilo tono k ''uspjeha'' i ukupnoga broja izvedenih
pokusa. No, ukupan broj pokusa u kojima se dogodilo tono k ''uspjeha'' je statistika
interpretacija pojma (teorijske) apsolutne frekvencije modaliteta k (oznaavamo je sa ftk).
Stoga vrijedi jednakost:
P( X = k ) =
( ft )k
N
(2)
(3)
203
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
U ovoj smo datoteci koristili MATLAB-ovu ugraenu funkciju nchoosek koja rauna
vrijednosti binomnih koeficijenata. Ona ima dva ulazna argumenta: nenegativne cijele brojeve
n
n i k, te jedan izlazni argument: binomni koeficijent .
k
Radi jednostavnosti, sve ove korake implementirat emo u vidu obine mdatoteke bpr.m.
Otvorimo novu m datoteku pa utipkajmo redom:
[a,f]=af(x);
sv=mean(x);
v=var(x);
if v > sv
error('Trazena binomna razdioba ne postoji!')
end
p=1-v/sv;
n=round(sv/p);
N=sum(f);
n
p
a
f
ft=binomna(N,n,p,a)
U ovoj smo datoteci koristili MATLAB-ovu ugraenu funkciju error. Ta funkcija ima jedan
ulazni argument (obino neki prikladan tekst), a njezinim izvrenjem ispisuje se ulazni
argument, prekida se rad funkcijske m-datoteke i vraa se u komandni prozor.
Pohranimo upisane naredbe i vratimo se u komandni prozor. Ako su matrice a i f ve zadane
(tj. ako su podatci ve grupirani), datoteku bpr.m modificiramo u sljedeu datoteku bprg.m:
N=sum(f);
sv=a*f'/N;
v=(a.^2)*f'/N-sv^2;
if v > sv
error('Trazena binomna razdioba ne postoji!')
end
p=1-v/sv;
n=round(sv/p);
n
p
a
f
ft=binomna(N,n,p,a)
204
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pohranimo upisane naredbe i vratimo se u komandni prozor. Ilustrirajmo primjenu opisanih
algoritama na primjerima.
x = [3, 5, 2, 2, 5, 7, 6, 3, 1, 4, 8, 0, 0, 3, 6, 2, 5, 3, 0,
1, 6, 4, 4, 7, 2, 1, 6, 0, 3, 5];
bpr
i dobit emo:
a) Provjerimo jesu li gornji podatci rasporeeni prema binomnoj razdiobi i, ako jesu,
odredimo njezine parametre.
b) Izraunajmo vjerojatnost da e u jednoj seriji arulja biti najvie 3 neispravne arulje
rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
c) Izraunajmo vjerojatnost da e u jednoj seriji arulja biti barem 6 neispravnih arulja
rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
205
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) U ovome je primjeru sluajan pokus ispitivanje ispravnosti arulje koji ima tono dva
mogua ishoda (''ispravna'' i ''neispravna''). Rije je, dakle, o Bernoullijevu pokusu, pa postoji
mogunost da su podatci rasporeeni prema binomnoj razdiobi. Kako su oni ve grupirani,
matrice a i f morat emo unijeti ''runo''. U komandnomu prozoru utipkamo:
a=0:8;
f=[95 238 322 288 121 81 32 16 4];
pa pokrenemo datoteku bprg.m:
bprg
Dobijemo:
n =
99
p =
0.02495327289389
a =
0
1
2
f =
95
238
322
ft =
98
249
312
288
121
81
32
16
258
158
77
31
10
plot(a,f,a,ft,'--')
pa dobijemo sljedeu sliku:
350
300
250
200
150
100
50
0
0
Slika 1.
(Plava crta je poligon empirijskih frekvencija, a zelena iscrtkana crta poligon teorijskih
frekvencija.)
mr.sc. Bojan Kovai, vii predava
206
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
b) Dogaaj ''u jednoj seriji ima najvie 3 neispravne arulje'' disjunktna je unija sljedeih
etiriju dogaaja: ''u jednoj seriji nema neispravnih arulja'', ''u jednoj seriji je tono jedna
arulja neispravna '', ''u jednoj seriji su tono dvije arulje neispravne'' i ''u jednoj seriji su
tono tri arulje neispravne''. Vjerojatnosti tih dogaaja su redom P(X = 0), P(X = 1),
P(X = 2) i P(X = 3), pa je
P(X 3) = P(X = 0) + P(X = 1) + P(X = 2) + P(X = 3).
Napomena: Za diskretne razdiobe X openito vrijedi sljedea formula:
k
P( X k ) = P( X = i ) .
(4)
i =1
p3=0;
for i=0:3
p3=p3+nchoosek(n,i)*p^i*(1-p)^(n-i);
end
p3
Pohranimo unesene naredbe i vratimo se u komandni prozor. U novi redak utipkajmo:
najvise3
i dobit emo traenu vjerojatnost:
p3 =
0.76533399606566
Sad istu vjerojatnost izraunajmo rabei statistiku definiciju vjerojatnosti. Primijetite da je p3
zapravo kumulativna relativna frekvencija modaliteta 3. Stoga je:
p3 =
c) Dogaaj ''u jednoj seriji ima barem 6 neispravnih arulja'' disjunktna je unija sljedeih triju
dogaaja: ''u jednoj seriji ima tono 6 neispravnih arulja'', ''u jednoj seriji ima tono 7
neispravnih arulja'' i ''u jednoj seriji ima tono 8 neispravnih arulja''. Vjerojatnosti tih
dogaaja su redom P(X = 6), P(X = 7) i P(X = 8). Stoga je
P(X 6) = P(X = 6) + P(X = 7) + P(X = 8).
207
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
P( X k ) = P( X = i) .
(5)
i =k
Slino kao u prethodnom zadatku, kreirajmo obinu mdatoteku barem6.m u kojoj emo
izraunati traenu vjerojatnost rabei for petlju. Otvorimo novu mdatoteku pa u nju
utipkajmo:
p6=0;
for i=6:n
p6=p6+nchoosek(n,i)*p^i*(1-p)^(n-i);
end
p6
Pohranimo unesene naredbe i vratimo se u komandni prozor. U novi redak utipkajmo:
barem6
i dobit emo traenu vjerojatnost:
p6 =
0.03800901472271
(Uoite da nas je MATLAB viekratno upozorio da rezultat moe biti nedovoljno precizan
zbog uporabe funkcije nchoosek koja rauna vrijednosti binomnih koeficijenata!)
Rabimo li statistiku definiciju vjerojatnosti, dobit emo:
p6 =
32 + 16 + 4
52
=
= 0.04344193817878.
95 + 238 + 322 + 288 + 121 + 81 + 32 + 16 + 4 1197
a) Provjerimo jesu li gornji podatci rasporeeni prema binomnoj razdiobi. Ako jesu,
odredimo njezine parametre.
b) Izraunajmo vjerojatnost da je u jednomu uzorku bilo tono 5 kutija keksa nedovoljne
kakvoe rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
c) Izraunajmo vjerojatnost da u jednomu uzorku postoji barem jedna kutija keksa
nedovoljne kakvoe rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
U ovome nam primjeru podatci nisu grupirani pa emo a) zadatak rijeiti rabei mdatoteku
bpr.m.
mr.sc. Bojan Kovai, vii predava
208
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) Utipkajmo:
x=[0,1,4,2,3,0,5,4,1,3,2,0,4,2,3,7,2,1,3,4,3,2,6,2,5,3,1,4,3,2
,5,3,1,4,3,6,2,4,1,5,3,2,4,1,3,2,5,4,3,1];
bpr
pa e MATLAB ispisati
n =
41
p =
0.06972789115646
a =
0
10
12
12
12
f =
ft =
Vidimo da su podatci rasporeeni prema binomnoj razdiobi B(41, 0.06972789115646).
Utipkajmo nadalje:
plot(a,f,a,ft,'--')
i dobit emo sljedeu sliku:
12
10
0
0
Slika 2.
b) U ovome se zadatku trai vjerojatnost P(X = 5). Izraunajmo je najprije koristei klasinu
definiciju vjerojatnosti. U formulu (1) uvrstimo k = 5, n = 41, p = 0.06972789115646. U
novomu retku komandnoga prozora utipkajmo:
mr.sc. Bojan Kovai, vii predava
209
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
p5=nchoosek(n,5)*p^5*(1-p)^(n-5)
(Sjetite se da varijable n i p ve imaju eljene vrijednosti dobivene izvrenjem naredbi
zapisanih u mdatoteci bpr.m!) Pritisnimo Enter, pa e MATLAB ispisati:
p5 =
0.09155987523158
Raunamo li istu vjerojatnost rabei statistiku definiciju vjerojatnosti, dobit emo:
p5 =
5
= 0.1 .
50
c) Dogaaj ''u jednomu uzorku postoji barem jedna kutija keksa nedovoljne kakvoe'' jednak je
disjunktnoj uniji sljedeih dogaaja: ''u jednomu uzorku postoji tono jedna kutija keksa
nedovoljne kakvoe'', ''u jednom uzorku postoje tono dvije kutije keksa nedovoljne kakvoe'',
''u jednom uzorku postoji tono deset kutija keksa nedovoljne kakvoe''. Stoga bismo mogli
primijeniti formulu (5) i pomou for petlje izraunati traenu vjerojatnost. No, moemo
postupiti bre i bolje. Zadanom dogaaju suprotan dogaaj jest ''u jednomu uzorku nema niti
jedna kutija keksa nedovoljne kakvoe. Njegova je vjerojatnost P(X = 0). Zbog toga vrijedi:
P(X 1) + P(X = 0) = 1.
Odatle je
P(X 1) = 1 P(X = 0).
Vjerojatnost P(X = 0) jednaka je (1 p)41, pa utipkajmo:
p0 = 1-(1-p)^41
i dobit emo:
p0 =
0.94835717271207
Rabimo li statistiku definiciju vjerojatnosti, dobit emo:
p0 = 1
3
= 0.94 .
50
210
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
k
k!
e .
(6)
Poissonova razdioba ponekad se naziva i zakon malih brojeva, a rabi se kod tzv. ''rijetkih
procesa'', kao to su npr.
211
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Osnovni algoritam za odreivanje parametra prilagoene Poissonove razdiobe jest:
Korak 1. Izraunamo aritmetiku sredinu sv zadanih podataka, te njihov ukupan broj N.
Korak 2. Definiramo parametar s := sv.
Korak 3. Odredimo teorijske frekvencije iz jednakosti
(ft)k = N P(X = k)
Opisani algoritam implementiran je u MATLAB-u kao funkcijska mdatoteka poissonova.m,
a pretpostavlja da su podatci ve grupirani. Sadraj te datoteke je sljedei:
function ft = poissonova(a,f)
N=sum(f);
sv=a*f'/N;
lambda=sv;
for i=1:size(f,2)
ft(i)=round(N*(sv^(a(i)))*exp(-sv)/factorial(a(i)));
end
lambda
a
f
Ako imamo negrupirane podatke, najprije ih moramo grupirati pomou funkcije af u
komandnomu prozoru, a potom pozvati spomenutu funkciju poissonova. Ilustrirajmo to na
primjerima.
Primjer 4. Radi poboljanja kvalitete svojih usluga upravnik banke ''Drpbank'' proveo je
brojanje stranaka koje tijekom jednoga sata obave uplatu ili isplatu na jednom alteru te
banke. Dobiveni podatci navedeni su u donjoj tablici.
Broj stranaka po satu Apsolutna frekvencija
0
1
1
4
2
8
3
12
4
15
5
17
6
13
7
9
8
5
9
4
10
2
11
1
mr.sc. Bojan Kovai, vii predava
212
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
a) Provjerimo jesu li gornji podatci rasporeeni prema Poissonovoj razdiobi i, ako jesu,
prilagodimo Poissonovu razdiobu dobivenim podatcima.
b) Izraunajmo vjerojatnost da u jednome satu ne bude uslueno manje od etiri klijenta
rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
c) Izraunajmo vjerojatnost da u jednome satu broj klijenata bude djeljiv sa 3 rabei
klasinu, odnosno statistku definiciju vjerojatnosti.
Ovdje je oito rije o ''rijetkom'' procesu pa je mogue da e Poissonova razdioba dobro
opisati razdiobu dobivenih podataka. Utipkajmo najprije:
a=0:11;
f=[1 4 8 12 15 17 13 9 5 4 2 1];
Koristei mdatoteku grupirani.m koju smo stvorili u 5. poglavlju izraunat emo vrijednosti
aritmetike sredine i varijance, pa ako su one priblino jednake, Poissonova e razdioba dobro
opisati razdiobu dobivenih podataka. Utipkajmo:
[sv,v,sd,k]=grupirani(a,f)
pa e MATLAB ispisati:
sv =
4.93406593406593
v =
5.13850984180654
d =
2.26682814562696
k =
45.94239671537928
Razlika izmeu aritmetike sredine i varijance iznosi priblino 0.2 pa moemo oekivati
dobar opis pomou Poissonove razdiobe. Utipkajmo:
ft = poissonova(a,f)
i dobit emo:
lambda =
4.93406593406593
a =
0
10
11
12
15
17
13
13
16
16
13
f =
ft =
213
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
plot(a,f,a,ft,'--')
Dobit emo sljedeu sliku:
18
16
14
12
10
0
0
10
12
Slika 3.
b) Dogaaj ''u jednome satu nije uslueno manje od etiri klijenta'' jednak je dogaaju ''u
jednome su satu usluena barem etiri klijenta'', pa je
11
P( X 4) = P( X = k ) .
k =4
No, ovdje nam je ponovno lake i bre izraunati vjerojatnost zadanom dogaaju suprotnoga
dogaaja. To je dogaaj ''u jednome je satu uslueno manje od etiri klijenta'', a taj je jednak
dogaaju ''u jednome je satu uslueno najvie troje klijenata''. Prema tome je
P(X 4) + P(X 3) = 1,
otkuda je
mr.sc. Bojan Kovai, vii predava
214
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
P(X 4) = 1 P(X 3),
odnosno
3
P( X 4) = 1 P( X = k ) .
k =0
Krae oznaimo:
p4 := P(X 4).
Izraunajmo najprije p4 rabei klasinu definiciju vjerojatnosti. U tu emo svrhu iskoristiti
MATLAB i u obinoj mdatoteci p4.m koristei for petlju izraunati eljenu vrijednost.
Otvorimo novu mdatoteku pa u nju utipkajmo:
p4=0;
lambda=4.93406593406593;
for i=0:3
p4=p4+(lambda^i)*exp(-lambda)/factorial(i);
end
p4=1-p4
Pohranimo upisane naredbe i vratimo se u komandni prozor. U novi red utipkajmo:
p4
i MATLAB e ispisati:
p4 =
0.72559635961475
Izraunajmo sada istu veliinu rabei statistiku definiciju vjerojatnosti. Uoimo da je zbroj
na desnoj strani odredbenoga izraza za p4 zapravo kumulativna relativna frekvencija
modaliteta 3. Stoga je:
p4 = 1
1 + 4 + 8 + 12
66
=
= 0.72527472527473.
1 + 4 + 8 + 12 + 15 + 17 + 13 + 9 + 5 + 4 + 2 + 1 91
c) Dogaaj ''broj usluenih klijenata u jednome satu djeljiv je sa 3'' je disjunktna unija
sljedeih dogaaja: ''u jednome satu nema usluenih klijenata'', ''u jednome satu uslueno je
tono troje klijenata'', ''u jednome satu uslueno je tono est klijenata'' i ''u jednome satu
uslueno je tono devet klijenata''. Oznaimo li traenu vjerojatnost sa p3, vrijedi:
3
p3 = P( X = 3 k ) .
k =0
215
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Izraunajmo najprije traenu vjerojatnost rabei klasinu definiciju vjerojatnosti. U tu emo
svrhu ponovno uporabiti MATLAB i u obinoj mdatoteci p3.m izraunati traenu
vjerojatnost. Otvorimo novu mdatoteku pa u nju utipkajmo:
p3=0;
lambda=4.93406593406593;
for i=0:3:9
p3=p3+(lambda^i)*exp(-lambda)/factorial(i);
end
p3
Pohranimo upisane naredbe i vratimo se u komandni prozor. Utipkajmo:
p3
i dobit emo:
p3 =
0.32989099176964
Sada istu vjerojatnost izraunajmo rabei statistiku definiciju vjerojatnosti. Iskoristimo
podatak o ukupnome broju sati u kojima je vreno promatranje dobiven u b) podzadatku (taj
je broj jednak 91):
p3 =
1 + 12 + 13 + 4 30
=
= 0.32967032967033.
91
91
Normalna ili Gaussova razdioba objanjava najvei broj statistikih opaanja, kao to su npr.
razdioba visina odraslih ljudi, razdioba rezultata mjerenja fizikalnih veliina itd. Kao
svojevrsno objanjenje normalne razdiobe ljudskih visina moe posluiti mnotvo genetskih
utjecaja i utjecaja okolia na neiju visinu. Neki utjecaji imaju jae djelovanje od drugih, dok
neki djeluju udrueno, a ne nezavisno. Pokazuje se da ako je broj raznih imbenika jako velik,
Gaussova krivulja dobro opisuje takvu razdiobu.
216
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Svaka neprekidna sluajna varijabla potpuno je odreena svojom funkcijom gustoe. Funkciju
gustoe normalne razdiobe obino zapisujemo u sljedeem obliku:
1
f ( x) =
e
2
( x )2
2 2
(7)
Pritom su realni brojevi (itajte: mi) i 2 (itajte: sigma na kvadrat) parametri normalne
razdiobe. Te oznake nisu sluajne jer se moe pokazati da je oekivanje, a 2 varijanca
normalne razdiobe. Svaku sluajnu varijablu koja ima normalnu razdiobu nazivamo normalna
sluajna varijabla i oznaavamo:
X ~ N(, 2).
Posebno, za = 0 i 2 = 1 dobivamo standardnu ili jedininu normalnu razdiobu.
Budui da normalna sluajna varijabla pripada kontinuiranim sluajnim varijalama, njezina je
slika uvijek neprebrojiv podskup skupa R. Tipini takvi podskupovi skupa R su otvoreni,
poluotvoreni i zatvoreni intervali, pa se ova razdioba najee rabi kada su empirijski podatci
grupirani u razrede. To je ujedno i kriterij prema kojemu ete znati je li u nekom zadatku
primjereno rabiti normalnu razdiobu ili nije.
Algoritam za odreivanje parametara prilagoene normalne razdiobe je sljedei:
Korak 1. Zadamo matrino donje granice razreda, gornje granice razreda, irine razreda
(poeljno je, ali ne i nuno da svi razredi imaju istu irinu), razredne sredine i apsolutne
frekvencije razreda.
Korak 2. Izraunamo ukupan broj podataka (N), aritmetiku sredinu (sv), varijancu (v) i
standardno odstupanje (sd) iz grupiranih podataka.
Korak 3. Aritmetiku sredinu sv interpretiramo kao oekivanje , varijancu v kao varijancu
2, a standardno odstupanje sd kao standardno odstupanje normalne razdiobe.
Korak 4. Teorijske apsolutne frekvencije ftk razreda [a, b raunamo prema formuli:
( f t ) k = N [ (b) ( a ) ] ,
(8)
gdje je
1
( x ) =
2
( t )2
2 2
dt
(9)
funkcija razdiobe (distribucije) normalne razdiobe N(, 2). Ta funkcija rauna vjerojatnost
da neprekidna sluajna varijabla X raspodijeljena prema normalnoj razdiobi N(, 2) poprimi
217
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
vrijednost ne veu od x. Dakle, po definiciji vrijedi:
(x) := P(X x).
U prvi mah se moemo prilino zabrinuti jer ne znamo kako izraunati nepravi integral u
definiciji funkcije (x), ak ni kada x zamijenimo nekim konkretnim realnim brojem. No,
nema potrebe za zabrinutou. U davno doba (kad ljudi jo nisu znali za MATLAB)
vrijednosti funkcije (x) standardne normalne razdiobe raunale su se pomou tablica nalik
na logaritamske. U dananje doba za raunanje vrijednosti funkcije razdiobe (i to za bilo koju
normalnu razdiobu!) MATLAB ima ve ugraenu funkciju normcdf. Njezini su argumenti
(redom) realan broj x, oekivanje i standardno odstupanje normalne razdiobe N(, 2).
(Oprez: ne smijete zamijeniti redoslijed argumenata!). Funkcija normcdf vraa vrijednost
(x) izraunanu prema formuli (9).
Implementacija opisanoga algoritma u MATLAB-u je sljedea:
Korak 1. Zadamo irinu razreda c, matricu donjih granica dg, matricu gornjih granica gg,
1
matricu razrednih sredina s kao poluzbroj (dg + gg ) , te matricu apsolutnih frekvencija f .
2
Korak 2. Izraunamo ukupan zbroj svih apsolutnih frekvencija utipkavajui
N = sum(f);
Korak 3. U komandnomu prozoru utipkamo
grupirani(s,f)
i dobijemo vrijednosti sv, d i sd. (Vrijednost kv nam ne treba.)
Korak 4. Kreiramo jednorednu matricu teorijskih frekvencija ft utipkavanjem naredbe:
ft=round(N*(normcdf(gg,sv,sd)-normcdf(dg,sv,sd)))
Napomena: U Koraku 4. zapravo se krije formula (8), pri emu se rezultat primjene te
formule zaokruuje na najblii cijeli broj primjenom funkcije round. Takvo je zaokruivanje
potrebno jer su teorijske apsolutne frekvencije, prema definiciji apsolutne frekvencije,
nenegativni cijeli brojevi, pa kao rezultat ne moemo dobiti decimalne brojeve.
Pogledajmo na primjerima kako odrediti parametre prilagoene normalne razdiobe.
Primjer 1. Mjerenjem visina uenika srednje kole ''Mirko S. Zlikovski'' iz Donje pikovine
ustanovljeno je da su one u rasponu od 160 cm do 200 cm. Podatci su grupirani u ukupno 10
razreda i prikazani tablino.
218
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Visina [cm] Broj uenika
160-165
2
165-170
15
170-175
26
175-180
45
180-185
42
185-190
30
190-195
17
195-200
3
Odredimo parametre prilagoene normalne razdiobe i izraunajmo pripadne teorijske
frekvencije.
Zadatak emo rijeiti opisanim algoritmom u MATLAB-u. U komandnomu prozoru
utipkavamo:
dg=160:5:195;
gg=165:5:200;
s=(dg+gg)/2;
f=[2 15 26 45 42 30 17 3];
N=sum(f);
[sv,v,sd,kv]=grupirani(s,f);
ft=round(N*(normcdf(gg,sv,sd)-normcdf(dg,sv,sd)))
Pritisnimo Enter, pa e MATLAB ispisati:
ft =
3
11
28
44
45
30
13
40
35
30
25
20
15
10
0
160
165
170
175
180
Slika 4.
219
185
190
195
200
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Primjer 2. Odredimo prilagoenu normalnu razdiobu za razdiobe mas purana iz Primjera 1.
u toki 8.3. Najmanja masa purana je 4.90 kg, a najvea 8.65 kg. U tom smo primjeru ve
izraunali da je irina svakoga razreda c = 0.75. Zato utipkavamo:
dg=4.90:0.75:(8.65-0.75);
gg=(4.90+0.75):0.75:8.65;
s=(dg+gg)/2;
f=[5 7 7 6 5];
N=sum(f);
[sv,v,sd,d]=grupirani(s,f);
ft=round(N*(normcdf(gg,sv,sd)-normcdf(dg,sv,sd)))
pa e MATLAB ispisati:
ft =
3
3
5
5.5
6.5
7.5
8.5
Slika 5.
Ovolika se nepreciznost pojavila zbog relativno maloga broja ukupnih podataka. Za veu
tonost trebali bismo imati znatno vie dobivenih podataka.
mr.sc. Bojan Kovai, vii predava
220
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
221
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
uzorke od po 20 komada ipova i biljeio ukupan broj neispravnih ipova po uzorku.
Dobiveni podatci prikazani su u donjoj tablici.
Broj neispravnih ipova Broj uzoraka
0
14
1
25
2
27
3
23
4
7
5
3
6
1
a) Odredite i interpretirajte apsolutnu, relativnu, kumulativnu apsolutnu i kumulativnu
relativnu frekvenciju modaliteta 1.
b) Izraunajte prosjean broj neispravnih ipova u jednom uzorku, te odgovarajui pokazatelj
rasprenosti frekvencija greaka oko toga broja.
c) Odredite prilagoenu razdiobu koja najbolje opisuje dobivene podatke. Navedite njezine
parametre i interpretirajte ih. Izraunajte i pripadne teorijske frekvencije, pa interpretirajte
jednu od njih.
d) Izraunajte vjerojatnost da e sluajno odabrani uzorak sadravati manje od 3 neispravna
ipa rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
e) Izraunajte vjerojatnost da e u sluajno odabranom uzorku biti vie od 4 neispravna ipa
rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
5. elei utvrditi razloge katastrofalne igre svojih igraa trener nogometnoga kluba NK
''Stativa'' iz Mua odluio je provjeriti njihovu fiziku spremnost mjerei vrijeme za koje e
svaki od njih pretrati 2 km. Dobiveni rezultati prikazani su u donjoj tablici.
Vrijeme
Broj
(u min.) igraa
2
[5.5, 5.7
4
[5.7, 5.9
7
[5.9, 6.1
6
[6.1, 6.3
[6.3, 6.5]
3
a)
b)
c)
d)
222
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
6 minuta rabei klasinu definiciju vjerojatnosti.
f) Izraunajte vjerojatnost da je sluajno odabrani igra pretrao zadanu udaljenost za barem
6 minuta i 6 sekundi.
6. U II. svjetskomu ratu London je bio podijeljen na ukupno 576 sektora koji su gaani
bombama iz zrakoplova. Engleski vojni statistiari biljeili su broj bombi koje su padale na
svaki sektor i grupiranjem rezultata dobili su sljedeu tablicu.
Broj bombi Broj
po sektoru sektora
0
229
1
211
2
93
3
35
4
7
5
1
a) Odredite i interpretirajte apsolutnu, relativnu, kumulativnu apsolutnu i kumulativnu
relativnu frekvenciju modaliteta 3.
b) Izraunajte postotak sektora na koje je pala barem jedna bomba.
c) Izraunajte prosjean broj bombi po sektoru, te odgovarajui pokazatelj rasprenosti
frekvencija bombi oko toga broja.
d) Odredite prilagoenu razdiobu koja najbolje opisuje dobivene podatke. Navedite i
interpretirajte sve parametre te razdiobe. Izraunajte i pripadne teorijske frekvencije, pa
interpretirajte jednu od njih.
e) Izraunajte vjerojatnost da je sluajno odabrani sektor pogoen s najvie tri bombe rabei
klasinu, odnosno statistiku definiciju vjerojatnosti.
f) Izraunajte vjerojatnost da broj bombi koje su pogodile sluajno odabrani sektor nije prost
broj rabei klasinu, odnosno statistiku definiciju vjerojatnosti.
7. Za normalnu se razdiobu definira i tzv. funkcija pogrjeke (engl.: error function) izrazom
erf ( x ) =
e t dt .
0
1 b
a
erf
erf
.
2 2
2
223
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
224
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
kid na tom segmentu. Takoer, moe se pokazati da pouak ne vrijedi ako se segment
zamijeni otvorenim ili poluotvorenim intervalom.
Na temelju Bolzanova pouka razvijen je sljedei algoritam za priblino odreivanje nultoke
bilo koje neprekidne realne funkcije (na nekom segmentu) s tonou :
Korak 1. Odrediti realne brojeve a i b takve da vrijedi:
f (a) f (b) < 0.
1
(a + b) i f (c). Potonji broj sigurno postoji jer je c a, b, a f je
2
definirana u svakoj toki segmenta [a, b].
Korak 2. Izraunati c =
ln(b a ) ln
.
ln 2
(1)
Kako bismo metodu raspolavljanja mogli rabiti u MATLAB-u, kreirajmo sljedeu funkcijsku
mdatoteku bis.m ije su ulazne varijable funkcija funkcija, donja granica segmenta a, gornja
granica segmenta b i eljeni broj raspolavljanja n:
function y=bis(funkcija,a,b,n)
if feval(funkcija,a)*feval(funkcija,b)>0
error('Pogrjeka u ulaznim podatcima!')
end
for k=1:n
x=(a+b)/2;
if abs(feval(funkcija,x))==0
break
end
if feval(funkcija,x)*feval(funkcija,a)>0
a=x;
else
b=x;
end
end
y=x;
225
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Napomene: 1.) U strukturi funkcije bis pojavljuje se ugraena MATLAB-ova funkcija
feval. Ta se funkcija najee koristi za izraun vrijednosti funkcije definirane izvan
dotine datoteke. U ovom sluaju, koristimo je za izraun vrijednosti funkcije funkcija koju
smo pohranili u drugoj mdatoteci.
2.) Za odreivanje nultoaka neke funkcije MATLAB posjeduje ugraenu funkciju fzero koju
emo upoznati malo kasnije.
Pohranimo tako dobivenu datoteku i vratimo se u MATLAB-ov komandni prozor.
Pogledajmo primjenu funkcije bis na primjerima.
Primjer 1. Odredimo priblinu vrijednost realnoga rjeenja jednadbe
sin x + ln x = 0
s tonou = 0.0001, pa odredimo najmanji broj raspolavljanja potrebnih da bi se postigla ta
tonost.
Da bismo mogli primijeniti metodu raspolavljanja, najprije moramo odrediti donju i gornju
granicu segmenta u kojem se nalazi (bar jedno) rjeenje zadane jednadbe. U tu svrhu,
zapiimo jednadbu u obliku
sin x = ln x
pa je rijeimo grafiki. Na istoj slici nacrtajmo grafove funkcija f(x) = sin x i g(x) = ln x.
Budui da je funkcija g(x) definirana samo za strogo pozitivne realne brojeve, nema smisla
crtati graf funkcije f(x) za x 0. Stoga nacrtajmo grafove tih funkcija npr. na intervalu
[0.1, 7]. U komandnomu prozoru utipkajmo redom:
x=0.1:0.01:7;
y1=sin(x);
y2=-log(x);
plot(x,y1,x,y2)
pa emo dobiti sljedeu sliku:
2.5
1.5
0.5
-0.5
-1
-1.5
-2
0
Slika 1.
226
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
(Plava krivulja je graf funkcije f(x), a zelena funkcije g(x).) Odmah uoavamo da se traena
nultoka nalazi u segmentu [0.1, 1], pa emo uzeti a = 0.1, b = 1. Izraunajmo sada najmanji
broj raspolavljanja potrebnih za postizanje tonosti = 0.0001 koristei nejednakost (1). U
novi redak komandnoga prozora utipkajmo:
n=ceil((log(1-0.1)-log(0.0001))/log(2))
pa e MATLAB ispisati:
n =
14
Otvorimo novu mdatoteku pa utipkajmo:
function y=f(x);
y=sin(x)+log(x);
Pohranimo unesene naredbe pod imenom f.m i vratimo se u komandni prozor. Kad iz
komandnoga prozora pozivamo neku funkciju kao argument druge funkcije, to inimo
pomou znaka @. U ovom sluaju, argument funkcije bis bit e funkcija f pohranjena u
datoteci f.m, donja granica a = 0.1, gornja granica b = 1 i broj raspolavljanja n = 14. Stoga
emo funkciju bis iz komandnoga prozora pozvati na sljedei nain:
bis(@f,0.1,1,14)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
0.57872924804687
Moemo zakljuiti da je x = 0.57873 priblino rjeenje zadane jednadbe (s tonou ).
Dobiveni rezultat moemo provjeriti tako da u novi redak komandnoga prozora utipkamo:
f(ans)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
4.002732345431692e-005
Dakle, p(0.57872924804687) 4 105, pa smo dobili rjeenje sa eljenom tonou.
Primjer 2. Zadan je polinom p(x) = x3 + x2 + x + 2. Odredimo sve njegove realne nultoke s
tonou = 0.0001.
Nacrtajmo najprije graf polinoma p(x). Nije teko uoiti da je npr. p(5) < 0, a da je p(5) > 0.
Stoga graf polinoma p crtamo na segmentu [5, 5]. Utipkajmo:
227
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x=-5:0.01:5;
y=x.^3+x.^2+x+2;
plot(x,y)
pa emo dobiti sljedeu sliku:
200
150
100
50
-50
-100
-150
-5
-4
-3
-2
-1
Slika 2.
228
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
mo:
bis(@f,-5,5,17)
Pritisnimo Enter, pa e MATLAB ispisati:
ans =
-1.35322570800781
i to je jedina realna nultoka zadanoga polinoma. Provjerimo dobiveni rezultat utipkavajui:
f(ans)
u novi redak komandnoga prozora. Pritisnimo Enter, pa e MATLAB ispisati:
ans =
-5.962431960782055e-005
Mada je algoritam metode raspolavljanja u sutini vrlo jednostavan, vidimo da ga je praktino
relativno sloeno primijeniti. Osnovni je problem, dakako, u odreivanju granica segmenta u
kojemu traimo nultoku. Namee se pitanje postoji li neka MATLAB-ova ugraena funkcija
iji je ulazni argument jedino realna funkcija f (x), a izlazni argumenti sve realne nultoke te
funkcije. Naalost, u opem je sluaju odgovor na to pitanje nijean. No, ako je f (x) polinom
stupnja n, n N, onda je odgovor potvrdan. U nastavku emo razmotriti i taj problem.
Pozivajui funkciju bis koja odreuje eventualnu nultoku unutar nekoga intervala morali smo
navesti ukupno 4 ulazne varijable: funkciju, donju i gornju granicu intervala, te broj
raspolavljanja. Stvari se donekle mogu pojednostavniti ako se metoda raspolavljanja
kombinira s jo nekim metodama numerike matematike (metoda sekante i metoda inverzne
kvadratine interpolacije). Na osnovi te kombinacije napravljen je algoritam za funkciju fzero.
Ulazne varijable te funkcije su realna funkcija ije nultoke elimo odrediti i poetna
aproksimacija nultoke x0. Drugim rijeima, prije poziva te funkcije moramo odrediti neki
realan broj ''blizu'' kojega se nalazi traena nultoka. (Matematika formalizacija svojstva ''biti
blizu'' zahtijeva poznavanje teorije mjere, pa u to ovdje neemo ulaziti.) U tu svrhu ponovno
moramo crtati graf funkcije i pomou njega odrediti traenu aproksimaciju.
Ilustrirajmo primjenu funkcije fzero na primjerima.
Primjer 3. Zadana je funkcija f(x) = x2 sin(2 x). Odredimo sve realne nultoke te funkcije.
Kako smo rekli, najprije moramo nacrtati graf promatrane funkcije. Funkcija sinus moe
poprimiti jedino vrijednosti iz segmenta [1,1]. Stoga i vrijednost x2 mora pripadati tom
segmentu, to znai da trebamo uzeti x [1, 1]. Drugim rijeima, ako nultoka uope
postoji, sigurno se nalazi u tom segmentu. Uobiajenom primjenom funkcije clc poistimo
komandni prozor, pa u njegova nova tri retka utipkajmo:
229
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x=-1:0.01:1;
y=x.^2-sin(2*x);
plot(x,y)
Izvrenjem funkcije plot dobivamo sljedei graf:
2
1.5
0.5
-0.5
-1
-1
-0.8
-0.6
-0.4
-0.2
0.2
0.4
0.6
0.8
Slika 3.
Dakle, vidimo da imamo ukupno dvije nultoke: jedna se nalazi blizu 0, a druga blizu 1.
Sad otvorimo mdatoteku f.m pa utipkamo:
function y=f(x);
y=x^2-sin(2*x);
Pohranimo unesene naredbe i vratimo se u komandni prozor. Funkciju fzero pozivamo prema
sljedeoj sintaksi:
fzero(@ime_funkcije, poetna_aproksimacija)
Napomenimo jo jednom da prigodom navoenja imena funkcije kao argumenta druge
funkcije stavljamo znak @. U novomu retku komandnoga prozora utipkajmo:
fzero(@f,0)
pa e MATLAB ispisati
ans =
0
To smo donekle mogli i oekivati jer je uistinu f (0) = 0. Odredimo i preostalu nultoku onu
koja se nalazi ''blizu'' 1. U novomu retku komandnoga prozora utipkajmo:
230
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
fzero(@f,1)
pa e MATLAB ispisati:
ans =
0.96687688141351
Primjer 4. Zadana je funkcija f(x) = ln(x 1) x2 + 4. Odredimo sve realne nultoke te
funkcije.
Kao i u prethodnom primjeru, najprije nacrtajmo graf promatrane funkcije. Budui da je
logaritamska funkcija g(x) = ln(x 1) definirana za x 1, + , njezin emo graf nacrtati na
segmentu [1.1, 10]. U novi redak komandnoga prozora utipkajmo:
x=1.1:0.01:10;
y=log(x-1)-x.^2+4;
plot(x,y)
pa emo dobiti sljedei graf:
20
-20
-40
-60
-80
-100
1
10
Slika 4.
231
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
2
-1
-2
-3
-4
-5
1
1.2
1.4
1.6
1.8
2.2
2.4
2.6
2.8
Slika 5.
Vidimo da funkcija f ima dvije realne nultoke: prvu ''blizu'' 1.2 i drugu ''blizu'' 2. Otvorimo
mdatoteku f.m i utipkajmo:
function y=f(x);
y=log(x-1)-x^2+4;
Pohranimo unesene naredbe i vratimo se u komandni prozor. U njegov novi redak utipkajmo:
fzero(@f,1.2)
pa e MATLAB ispisati:
ans =
1.05584398367821
Nakon toga, utipkajmo:
fzero(@f,2)
pa e MATLAB ispisati:
ans =
2
i to su jedine dvije realne nultoke promatrane funkcije.
Napomena: Funkcija fzero dozvoljava da se umjesto poetne aproksimacije unese i segment u
kojemu se nalazi tono jedna nultoka funkcije f (x). Takve primjere ovdje neemo razmatrati
jer se oni sutinski nimalo ne razlikuju od Primjera 1. i 2. koje smo rjeavali metodom
raspolavljanja.
Primjer 5. Zadane su funkcije f ( x) = log( x + 1) i g ( x ) = e x sin x . Odredimo sve zajednike
toke njihovih grafova na segmentu [0.9, 5].
mr.sc. Bojan Kovai, vii predava
232
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Ovdje nam zadani segment slui jedino kao putokaz na kojemu segmentu trebamo crtati
grafove zadanih funkcija. Naime, ako se umjesto poetne aproksimacije kao ulazna varijabla
funkcije fzero navede segment, fzero e pretpostaviti da se u tom segmentu nalazi najvie
jedna nultoka promatrane funkcije, to openito ne mora biti tono. Zato moramo najprije
nacrtati grafove zadanih funkcija na zadanom segmentu, a potom pomou dobivenoga grafa
odrediti sve eventualne poetne aproksimacije nultoaka. U novomu retku komandnoga
prozora utipkajmo:
x=-0.9:0.01:5;
y1=log10(x+1);
y2=exp(x).*sin(x);
plot(x,y1,x,y2)
pa emo dobiti sljedeu sliku:
20
-20
-40
-60
-80
-100
-120
-140
-160
-1
Slika 6.
Vidimo da se jedna zajednika toka nalazi ''blizu'' 3, ali slika ne daje precizan odgovor ima li
zajednikih toaka u segmentu [-0.9, 0.5]. Zato utipkajmo:
x=-0.9:0.01:0.5;
y1=log10(x+1);
y2=exp(x).*sin(x);
plot(x,y1,x,y2)
pa emo dobiti sljedeu sliku:
mr.sc. Bojan Kovai, vii predava
233
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-1
-1
-0.5
0.5
Slika 7.
Dakle, postoje ukupno 3 zajednike toke promatranih funkcija. Jedna se nalazi ''blizu'' 0.5,
druga ''blizu'' 0, a trea blizu 3. Za njihovo tono odreivanje koristit emo funkciju fzero.
Budui da ta funkcija ne rjeava jednadbe tipa f(x) = g(x), ve samo jednadbe tipa f(x) = 0,
zapiimo jednakost f(x) = g(x) u obliku
f(x) g(x) = 0.
Stavimo li
h(x) = f(x) g(x),
onda vidimo da se zadani problem svodi na odreivanje nultoaka funkcije h(x). U
komandnomu prozoru otvorimo mdatoteku h.m i utipkajmo:
function y=h(x);
y=log10(x+1)-exp(x)*sin(x);
Pohranimo upisane naredbe i vratimo se u komandni prozor. Odredimo najprije prvu nultoku
funkcije h(x). Utipkajmo:
fzero(@h,-0.5)
pa e MATLAB ispisati:
ans =
-0.48302799677525
Potpuno analogno utipkavanjem
234
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
fzero(@f,0)
dobijemo:
ans =
0
a utipkavanjem
fzero(@f,3)
dobijemo:
ans =
3.11430884120450
Dakle, (pribline) apscise traenih toaka su x1 = 0.483028, x2 = 0 i x3 = 3.114309. Pripadne
ordinate dobijemo izraunom vrijednosti ili funkcije f ili funkcije g za svaku pojedinu apscisu.
Lako se dobiva (provjerite!) da su traene toke T1 (0.483028, 0.28653), T2 = (0, 0) i T3
(3.114309, 0.6143).
Razmotrimo sada poseban sluaj kad je funkcija f (x) polinom stupnja n. Osnovni pouak
algebre tvrdi da svaki polinom (s realnim ili kompleksnim koeficijentima) stupnja barem 1
ima barem jednu nultoku u skupu kompleksnih brojeva C. Ako na skupu Cn[x] svih
polinoma stupnja tono n iji su koeficijenti kompleksni brojevi definiramo preslikavanje
k : Cn[x] Cn+1 propisom
p(x) = anxn + an1xn1 + + a2x2 + a1x + a0 | (an, an1, , a2, a1, a0)
onda se lako moe provjeriti da je preslikavanje k bijekcija. To znai da polinom moemo
smatrati zadanim ako znamo sve njegove koeficijente. Zbog toga ima smisla definirati
posebnu funkciju ije e ulazne varijable biti svi koeficijenti polinoma, a izlazne varijable sve
(openito, kompleksne) nultoke toga polinoma. U MATLABU postoji upravo takva
ugraena funkcija: to je funkcija roots. Njezina je sintaksa
roots(matrica_koeficijenata_polinoma)
Pogledajmo uporabu te funkcije na primjerima.
Primjer 6. Odredimo sve nultoke polinoma p(x) = x3 + x2 + x + 1. U novomu retku
komandnoga prozora najprije zadajmo na polinom pomou jednoretane matrice p iji su
elementi tono svi koeficijenti polinoma p. Utipkajmo:
p=[1 1 1 1];
Sada moemo pozvati funkciju roots:
235
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
roots(p)
pa e MATLAB ispisati:
ans =
-1.00000000000000
-0.00000000000000 + 1.00000000000000i
-0.00000000000000 - 1.00000000000000i
U praksi je zanemarivanje malih brojeva u ovakvim sluajevima nerijetko vrlo nezgodno jer je teko
razlikovati radi li se doista o malom broju ili o pogrjeci metode.
236
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
elimo li izraunati vrijednost nekoga polinoma za konkretnu vrijednost nezavisne
varijable, osim ranije spomenute funkcije feval moemo koristiti funkciju polyval. Osnovna
prednost funkcije polyval jest to kao prvi argument ima matricu koeficijenata polinoma, a ne
cijeli polinom (kao funkcija feval). Njezina je sintaksa:
polyval(matrica_koeficijenata_polinoma, konkretna_vrijednost)
Ova je funkcija vrlo pogodna prigodom grafikoga prikazivanja polinoma. Pogledajmo to na
primjeru.
Primjer 7. Zadan je polinom p(x) = x3 x2 + x 1. Shvaajui x kao kompleksnu varijablu,
odredimo sve njegove nultoke i izraunajmo p(1 i) + p(1 + i). Potom shvaajui x kao
realnu varijablu31 prikaimo grafiki taj polinom na segmentu [3, 3].
Najprije zadajmo polinom definiranjem njegove matrice koeficijenata:
p=[1 -1 1 -1];
Njegove nultoke odredimo utipkavajui:
roots(p)
u novi redak komandnoga prozora. Pritisnemo Enter, pa e MATLAB ispisati:
ans =
1.00000000000000
0.00000000000000 + 1.00000000000000i
0.00000000000000 - 1.00000000000000i
Dakle, nultoke zadanoga polinoma su 1, i i i. Izraunajmo sada p(1 i) + p(1 + i). U novi
redak komandnoga prozora utipkajmo:
polyval(p,1+i)+polyval(p,1-i)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
-4
Napokon, nacrtajmo graf zadanoga polinoma iznad segmenta [3, 3]. U nova dva retka
komandnoga prozora utipkajmo:
x=-3:0.01:3;
plot(x,polyval(p,x))
31
Grafove kompleksnih funkcija kompleksne varijable nije mogue crtati u MATLAB-u. Naime, svakoj toki (x,
y) takvoga grafa bijektivno moemo pridruiti ureenu etvorku (Re x, Im x, Re y, Im y), pa bi graf morao biti
etverodimenzionalan, a to je nemogue praktino izvesti.
237
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dobit emo sljedei graf:
20
10
-10
-20
-30
-40
-3
-2
-1
Slika 8.
10
-10
-20
-30
-40
-3
-2
-1
Slika 9.
238
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f (x) = arsh x, a = 1, b = 1;
f (x) = ln(x 1) tg x, a = 3, b = 4;
f (x) = ex + ctg x, a = 2, b = 1;
f (x) = arcsin x ex, a = 0, b = 1.
ln(1 x)
e x 1 1
, g ( x) =
;
x
x +1
x
sin
log(3 x + 1) 1
3 ;
b) f ( x ) =
, g ( x) =
x +1
x+2
);
,
2 2
d) f(x) = ctg x, g(x) = 5 x + 7 (na intervalu 0, ).
239
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
c) p(x) = x5 x3 3 x 18;
d) p(x) = x3 6 x2 + 9 x.
Gdje god je to mogue, provjerite dobivene rezultate grafiki.
1 0 1
240
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Problem: Zadano je ukupno n toaka: T1 = (x1, y1), T2 = (x2, y2), , Tn = (xn, yn), pri emu je
x1 x2 xn. Odrediti polinom p(x) (s realnim koeficijentima) to manjega stupnja takav
da njegov graf prolazi svim zadanim tokama.
Moe se pokazati da ako je zadano ukupno n toaka u ravnini meu ijim apscisama nema
meusobno jednakih, onda postoji jedinstveni polinom L(x) s realnim koeficijentima iji je
stupanj najvie jednak n 1 takav da njegov graf prolazi svim zadanim tokama. Taj je
polinom L(x) jedinstveno rjeenje promatranoga problema. Nazivamo ga Lagrangeov
interpolacijski polinom (skraeno: LIP).
Analitiko odreivanje LIPa pomou odgovarajuih formula je relativno sloeno i
mukotrpno ve za ''male'' n (npr. n = 4, 5, 6), a za ''velike'' n ono je praktino nemogue. Zbog
toga emo pri odreivanju LIPa rabiti MATLAB. On posjeduje funkciju polyfit ije su
ulazne varijable jednoredne matrice x i y koje sadre redom tono sve apscise, odnosno
ordinate zadanih toaka, te prirodan broj k, a jedina izlazna varijabla matrica L iji su elementi
tono svi koeficijenti polinoma stupnja najvie k (dakle, jednakoga ili manjega od k) koji
najbolje opisuje zadani skup toaka u smislu metode najmanjih kvadrata (o tome emo
govoriti neto kasnije). Kako bismo kao rezultat dobili LIP, uzimat emo k = n 1.
Ilustrirajmo primjenu te funkcije na primjeru.
Primjer 1. Odredimo LIP iji graf prolazi tokama T1 = (1, 1), T2 = (2, 2), T3 = (3, 1.5),
T4 = (4, 2.5) i T5 = (5, 4), te ga prikaimo grafiki na segmentu [6, 6].
Najprije moramo zadati matrice x i y. U novi redak komandnoga prozora utipkajmo:
x=[-1 2 -3 -4 5];
y=[1 -2 -1.5 2.5 4];
Sada odredimo matricu L utipkavanjem:
L=polyfit(x,y,4)
Vrijednost 4 upisali smo zato to za n = 5 toaka imamo k = n 1 = 4. Pritisnimo Enter, pa e
MATLAB ispisati:
L =
Columns 1 through 4
0.05393518518519
-0.04305555555556
Column 5
1.80555555555558
241
-1.02152777777778
-0.11898148148148
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, traeni je polinom
L(x) = 0.05393518518519 x4 0.04305555555556 x3 1.02152777777778 x2
0.11898148148148 x + 1.80555555555558.
Njegovi su koeficijenti, ustvari, racionalni brojevi. Budui da MATLAB ne moe raunati s
razlomcima, oni su aproksimirani decimalnim brojevima.
Prikaimo dobiveni polinom grafiki. U novomu retku komandnoga prozora utipkajmo:
x1=-6:0.01:6;
plot(x,y,'*',x1,polyval(L,x1))
U posljednjoj smo naredbi zapisali da na istoj slici elimo ucrtati i zadane toke (oznaili smo
ih znakom *) i LIP na zadanom segmentu. Dobivamo sljedei graf:
Slika 10.
Primjer 2. Aproksimirajmo funkciju f (x) = sin(2 x) LIPom u tokama ije su apscise redom
jednake 3, 2, 1, 0, 1, 2 i 3 te ocijenimo apsolutnu pogrjeku aproksimacije u tokama x =
= 0.5 i x = 4. Potom prikaimo grafove funkcije f i dobivenoga LIPa na istoj slici.
Odredimo najprije matricu L iji su elementi tono svi koeficijenti traenoga LIP-a. U novi
redak komandnoga prozora utipkajmo:
x=-3:1:3;
y=sin(2*x);
L=polyfit(x,y,6)
mr.sc. Bojan Kovai, vii predava
242
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
MATLAB e ispisati:
L =
Columns 1 through 4
0.00000000000000
0.06078568014301
-0.00000000000000
Columns 5 through 7
0.00000000000000
1.58167303889094
-0.73316129220826
-0.00000000000000
g1=abs(sin(2*(-0.5)-polyval(L,-0.5))
pa e MATLAB ispisati:
g1 =
0.14038007438399
Zakljuujemo da je apsolutna pogrjeka aproksimacije u toki x = 1 priblino jednaka 0.14.
Potpuno analogno, za x = 4 utipkajmo:
g1=abs(sin(2*4)-polyval(L,4)
pa e MATLAB ispisati:
g1 =
20.65954767405372
U ovom je sluaju apsolutna pogrjeka velika i iznosi gotovo 21, to znai da je aproksimacija
funkcije f(x) LIPom u toki x = 4 katastrofalno loa. Objasnimo zato je to tako. Naime, kada
aproksimiramo neku funkciju LIPom, mi je zapravo aproksimiramo na odreenom
segmentu. Ako je broj toaka relativno malen, pogrjeka aproksimacije bit e podnoljiva,
ali ako je broj toaka relativno velik, ak i na samom segmentu moemo dobiti velike
pogrjeke aproksimacije. U ovom smo primjeru funkciju f(x) = sin(2 x) aproksimirali LIP
243
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
om na segmentu [3, 3] uz relativno mali broj polaznih toaka. Toka x = 0.5 pripada tom
segmentu pa je apsolutna pogrjeka aproksimacije bila relativno mala. No, toka x = 4 ne
pripada tom segmentu i zato je pripadna apsolutna pogrjeka aproksimacije velika.
1
2 i + 1
a + b + (a b) cos
, za i = 0, , n,
2
2 n + 2
x1=-3:0.0001:3;
plot(x,y,'*',x1,sin(2*x1),x1,polyval(L,x1))
Dobit emo sljedeu sliku:
2
1.5
0.5
-0.5
-1
-1.5
-2
-3
-2
-1
Slika 11.
244
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Kvalitetu aproksimacije provjerit emo i crtanjem grafa funkcije h = |f L| na segmentu
[3, 3]. Pritisnimo tipku i preuredimo posljednje upisani redak ovako:
plot(x1,abs(sin(2*x1)-polyval(L,x1)))
Pritisnimo Enter, pa dobijemo sljedeu sliku:
Slika 12.
x=linspace(-0.5,0.5,5);
y=exp(x);
L=polyfit(x,y,4)
Nakon to pritisnemo Enter, MATLAB e ispisati:
L =
Columns 1 through 4
0.04210273467924
0.16928716669238
Column 5
1.00000000000000
0.49997817715571
245
0.99986881931440
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Dakle, traeni LIP je:
L(x) = 0.04210273467924 x4 + 0.16928716669238 x3 + 0.49997817715571 x2 + 0.9998688193144 x + 1.
g1=abs(exp(0.1)-polyval(L,0.1)), g2=abs(exp(1)-polyval(L,1))
pa e MATLAB ispisati:
g1 =
1.075693248986376e-005
g2 =
0.00704493061731
U oba sluaja pogrjeke su relativno male. Pogledajmo to na grafovima funkcija f(x) i LIPa
prikazanima na istoj slici. U novi redak komandnoga prozora utipkajmo:
x1=-0.5:0.01:0.5;
plot(x,y,'*',x1,exp(x1),x1,polyval(L,x1))
pa emo dobiti sljedeu sliku:
2
1.8
1.6
1.4
1.2
0.8
0.6
-0.5
-0.4
-0.3
-0.2
-0.1
0.1
0.2
0.3
0.4
0.5
Slika 13.
Obrazloimo to se dogodilo i zato na dobivenoj slici imamo samo jednu krivulju. Segment
na kojemu smo aproksimirali funkciju f(x) = ex je relativno ''uzak'' (duljina toga segmenta je
jednaka 1), pa su na tome segmentu apsolutne pogrjeke aproksimacije tako male da ih je
246
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
grafiki nemogue primijetiti. Zbog toga slobodno moemo rei da se u ovom sluaju grafovi
funkcije f(x) i LIPa praktiki ''podudaraju''.
Koliko se ti grafovi doista podudaraju, najbolje moemo vidjeti prikaemo li grafiki funkciju
h = |f L| na segmentu [0.5, 0.5]. Ponovno pritisnimo tipku , pa preuredimo posljednje
upisani redak ovako:
plot(x1,abs(exp(x1)-polyval(L,x1)))
Pritisnemo Enter, pa dobivamo graf prikazan na Slici 14.:
Slika 14.
U praktinim je primjenama (posebice u statistici) vrlo esto potrebno nai polinom 1. ili 2.
stupnja koji relativno dobro opisuje zadani skup toaka. Pritom je ukupan broj zadanih toaka
strogo vei od 3 pa se kao rjeenje takvoga problema openito ne moe uzeti LIP. Namee se
pitanje: to uiniti u takvome sluaju? Rjeenje toga problema nalazi se tzv. metodom
najmanjih kvadrata. Grubo govorei, osnovna ideja te metode jest odrediti polinom (openito
razliit od LIPa) takav da zbroj svih udaljenosti zadanih toaka od grafa toga polinoma bude
to manji (idealno: 0, ali u praksi je to vrlo rijedak sluaj). Tako se npr. u statistikim
regresijskim modelima nastoji odrediti polinom 1. stupnja takav da zbroj svih udaljenosti
zadanih toaka od pravca (grafa toga polinoma) bude to manji. Mi emo takve probleme
jednostavno i brzo rijeiti rabei MATLAB, tonije njegovu funkciju polyfit.
Pokaimo navedeno na primjerima.
247
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Oznaimo traeni polinom s p. Analogno rjeenju Primjera 3., najprije zadajemo toke
koristei funkciju linspace i raunamo pripadajue vrijednosti funkcije f u tim tokama.
U novi redak komandnoga prozora utipkajmo:
x=linspace(-0.5,0.5,6);
y=cos(2*x);
Sada moemo primijeniti funkciju polyfit. Matrice x i y upravo smo deklarirali, a za prirodan
broj k (koji je posljednja od triju ulaznih varijabli funkcije polyfit) uzet emo k = 1 jer traimo
polinom 1. stupnja. Utipkajmo:
p=polyfit(x,y,1)
Pritisnimo Enter, pa e MATLAB ispisati:
p =
0.00000000000000
0.78190149953969
g1=abs(cos(2*0)-polyval(p,0)),g2=abs(cos(2*1)-polyval(p,1))
pa e MATLAB ispisati:
g1 =
0.21809850046031
g2 =
1.19804833608683
Takve rezultate smo mogli i oekivati jer je x = 0 element segmenta [0.5, 0.5], a x = 1 nije.
Grafove zadane funkcije i polinoma p na istom segmentu crtamo tako da u nova dva retka
komandnoga prozora utipkamo:
x1=-0.5:0.0001:0.5;
plot(x,y,'*',x1,cos(2*x1),x1,polyval(p,x1))
Dobit emo sljedeu sliku:
248
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1
0.95
0.9
0.85
0.8
0.75
0.7
0.65
0.6
0.55
0.5
-0.5
-0.4
-0.3
-0.2
-0.1
0.1
0.2
0.3
0.4
0.5
Slika 15.
plot(x1,abs(cos(2*x1)-polyval(p,x1)))
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 16.
249
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
p2=polyfit(x,y,2), p3=polyfit(x,y,3)
pa e MATLAB ispisati:
p2 =
-1.82508071154816
p3 =
0.00000000000000
-0.00000000000000
-1.82508071154817
0.99482758255364
-0.00000000000000
0.99482758255364
Stoga je
p2(x) = p3(x) = 1.82508071154816 x2 + 0.99482758255364.
Primjeujemo da smo u oba sluaja dobili isti polinom, to znai da ne postoji polinom
stupnja tono 3 koji dobro opisuje zadanu funkciju u smislu metode najmanjih kvadrata.
Prikaimo grafove funkcija f i p2 na istoj slici. U novi redak komandnoga prozora utipkajmo:
plot(x,y,'*',x1,cos(2*x1),x1,polyval(p2,x1))
Pritisnemo Enter, pa dobivamo sljedeu sliku:
1
0.95
0.9
0.85
0.8
0.75
0.7
0.65
0.6
0.55
0.5
-0.5
-0.4
-0.3
-0.2
-0.1
Slika 17.
250
0.1
0.2
0.3
0.4
0.5
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Primjeujemo da se grafovi funkcija gotovo podudaraju, to znai da je aproksimacija
polinomom 2. stupnja vrlo dobra.
Kvalitetu dobivene aproksimacije uobiajeno procijenjujemo crtajui graf funkcije h = |f p2|
na zadanom segmentu. Pritisnimo tipku , pa preuredimo posljednje upisani redak ovako:
plot(x1,abs(cos(2*x1)-polyval(p2,x1)))
Pritisnemo Enter, pa emo dobiti sljedeu sliku:
Slika 18.
251
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
2. Aproksimirajte sljedee funkcije LIP-om stupnja najvie 3 koristei toke koje njihovo
prirodno podruje definicije dijele na 4 dijela jednakih irina ako je:
a) f (x) = arcsin x;
b) f (x) = arccos x;
c)
f ( x) = 4 x 2 ;
d) f ( x ) = x x 2 .
U svakom od sluajeva odredite apsolutnu i relativnu pogrjeku aproksimacije u tokama
x = 0. 2 i x = 0.6. Grafiki prikaite funkciju f i dobiveni LIP na odgovarajuem
segmentu. Potom grafiki provjerite kvalitetu dobivenih aproksimacija.
3. a) Aproksimirajte funkciju f (x) = ln x LIPom na segmentu [0.5, 1.5] koristei toke koje
zadani segment dijele na tono 5 dijelova jednakih irina.
b) Odredite apsolutnu i relativnu pogrjeku dobivene aproksimacije u tokama x = 1 i x =
= 2.
c) Grafiki prikaite zadanu funkciju f i dobiveni LIP na zadanom segmentu. Potom
grafiki provjerite kvalitetu dobivene aproksimacije.
4. a) Aproksimirajte funkciju f (x) = ex LIPom na segmentu [1, 1] koristei toke koje
zadani segment dijele na tono 8 dijelova jednakih irina.
b) Odredite apsolutnu i relativnu pogrjeku aproksimacije u tokama x = 0.1 i x = 1.1.
c) Grafiki prikaite zadanu funkciju f i dobiveni LIP na zadanom segmentu. Potom
grafiki provjerite kvalitetu dobivene aproksimacije.
5. a) Aproksimirajte funkciju f(x) = ctg(2 x) LIPom na segmentu , koristei toke
8
252
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
6. Odredite polinome 1., 2. i 3. stupnja koji u smislu metode najmanjih kvadrata najbolje
2
aproksimiraju funkciju f (x) = sin(3 x) na segmentu 0, koristei toke koje zadani
3
segment dijele na 6 jednakih dijelova. Grafiki provjerite kvalitetu dobivenih
aproksimacija.
7. Zadana je tablica vrijednosti funkcije f.
x 0 1 3 4
6
7
f (x) 3 6 24 48 192 384
a) Odredite polinome 1., 2. i 3. stupnja koji najbolje opisuju zadani skup podataka u
smislu metode najmanjih kvadrata.
b) Odredite LIP koji najbolje opisuje zadani skup podataka.
c) Izraunajte vrijednost y pridruenu x = 5 koristei svaki od polinoma iz a) i b) zadatka.
8. Zadana je tablica vrijednosti funkcije f.
x
0 1.5 2.5 3 4
4.5
f (x) 1 3.2 13.6 25 79 138.3
a) Odredite polinome 1., 2. i 3. stupnja koji najbolje opisuju zadani skup podataka u
smislu metode najmanjih kvadrata.
b) Odredite LIP koji najbolje opisuje zadani skup podataka.
c) Izraunajte vrijednost y pridruenu x = 2 koristei svaki od polinoma iz a) i b) zadatka.
9. Kreirajte funkcijsku mdatoteku stupanjlip.m koja sadri jedino funkciju stupanjlip ije
su ulazne varijable jednoretane realne matrice x i y istoga tipa takve da je elementu xi
pridruen element yi, i = 1, 2, , a jedina izlazna varijabla stupanj LIPa koji najbolje
opisuje skup toaka {(xi, yi) : i = 1, 2, }.
10. Bez uporabe MATLAB-a odredite to e se ispisati utipkavanjem sljedeega niza naredbi:
a) x=0:0.2:1;
y=x+1;
p=polyfit(x,y,2)
b) x=1:0.5:2;
y=x.^2+x-1;
p=polyfit(x,y,3)
c) x=2:1:5;
y=x-x.^2-x.^3;
p=polyfit(x,y,4)
253
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
f ( x ) dx .
a
xk = a + k h, za svaki k [ n ]
(1)
n 1
n 1
1
1
1
b a 1
f ( x ) dx h f ( x0 ) + f ( xk ) + f ( xn ) =
f (a ) + f ( xk ) + f (b) . (2)
2
n 2
2
k =1
k =1
2
Simpsonova se, pak, formula zasniva na razdiobi segmenta [a, b] na paran broj dijelova (tj. n
nuno mora biti paran broj), pa se u svakom od dobivenih segmenata podintegralna funkcija
zamjenjuje s interpolacijskim polinomom drugoga stupnja (to znai da se povrina
krivocrtnoga trapeza na svakom od tih segmenata zamjenjuje s povrinom ispod parabole).
Izrazi za raunanje vorova su ponovno dani s (1). Zbrajanjem svih povrina ispod dobivenih
parabola dobiva se spomenuta Simpsonova formula:
b
h
f ( x) dx 3 { f (a) + 2 [ f ( x ) + f ( x ) + ... + f ( x )] + 4 [ f ( x ) + f ( x ) + ... + f ( x )] + f (b)} .
2
n2
254
n1
(3)
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
MATLAB ne posjeduje ''gotove'' (standardne) funkcije koje odreeni integral priblino
raunaju prema trapeznoj, odnosno Simpsonovoj formuli. Ovdje emo navesti dvije posebno
stvorene funkcije trapez i simpson koje to ine. Funkcija trapez kao ulazne varijable ima
podintegralnu funkciju f(x) (zapisanu u funkcijskoj mdatoteci), granice segmenta a i b, te
broj dijelova n na koje treba podijeliti segment [a, b], a kao jedinu izlaznu varijablu priblinu
b
vrijednost integrala
f ( x ) dx . Ona glasi:
a
function z=trapez(funkcija,a,b,n)
sirina=(b-a)/n;
x=a:sirina:b;
for i=1:(n+1)
y(i)=feval(funkcija,x(i));
end
z=sirina*(y(1)/2+sum(y(2:n))+y(n+1)/2);
Funkcija simpson ima iste ulazne i izlazne varijable kao i funkcija trapez, ali se zahtijeva
provjera je li n paran prirodan broj. Ona glasi:
function z=simpson(funkcija,a,b,n)
if mod(n,2)>0
error('Broj dijelova mora biti paran!'),
end
sirina=(b-a)/n;
x=a:sirina:b;
for i=1:(n+1)
y(i)=feval(funkcija,x(i));
end
z=sirina*(y(1)+2*(2*sum(y(2:2:n))+sum(y(3:2:n)))+y(n+1))/3;
(Radi jednostavnosti, niti u jednoj od navedenih funkcija ne zahtijevamo provjeru je li n
prirodan broj. Kao korisnu vjebu, moete doraditi obje funkcije tako da provjeravaju je li taj
uvjet zadovoljen.)
Napomena: Ukupan broj dijelova (n) na koje treba podijeliti segment [a, b] moe se odrediti
ovisno o tonosti aproksimacije (tzv. toleranciji) svake pojedine metode. Oznaimo li tu
tonost s i ako je unaprijed zadamo (npr. = 105), onda najmanji potreban broj dijelova n
za trapeznu formulu moemo izraunati kao najmanji prirodan broj koji zadovoljava
nejednakost
n
(b a )3
M2 ,
12
255
(4)
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
pri emu je M2 najvea vrijednost (maksimum) koju funkcija |f ''| postie na segmentu [a, b].
(Pritom pretpostavljamo da je podintegralna funkcija f dvaput neprekidno derivabilna na
segmentu [a, b].) Za Simpsonovu se formulu taj broj dijelova odreuje kao najmanji prirodan
broj koji zadovoljava nejednakost
n
(b a )5
M4 ,
180
(5)
pri emu je M4 najvea vrijednost (maksimum) koju funkcija |f (IV)| postie na segmentu [a, b].
(Pritom pretpostavljamo da je podintegralna funkcija f etiri puta neprekidno derivabilna na
segmentu [a, b].) Upravo zbog spomenutih maksimuma kao jedan od ulaznih argumenata
funkcija trapez i simpson navodi se broj dijelova n, a ne tonost .
Sljedei primjer rijeit emo koristei upravo nejednakosti (4) i (5).
1
a) trapeznu formulu;
b) Simpsonovu formulu.
a) Da bismo primijenili funkciju trapez, pomou nejednakosti (4) najprije moramo odrediti
ukupan broj dijelova na koje emo podijeliti segment [0, 1]. Prvi je korak odrediti najveu
vrijednost apsolutne vrijednosti druge derivacije funkcije f (x) = sin(x2). Poistimo
komandni prozor, pa u utipkajmo redom:
syms x
f=sin(x^2);
f2=diff(f,2);
f3=diff(f,3);
g=0*x;
rijesi(f3,g)
Pritisnemo Enter, pa e MATLAB ispisati:
ans =
0
0
0
Dakle, jedina stacionarna toka funkcije f '' je x = 0, tj. donja granica segmenta [0, 1]. Stoga e
funkcija |f ''| poprimiti maksimum ili za x = 0 ili za x = 1. U sljedei redak komandnoga
prostora utipkamo:
M2=max(abs(subs(f2,0)),abs(subs(f2,1)))
mr.sc. Bojan Kovai, vii predava
256
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Pritisnemo Enter, pa e MATLAB ispisati:
M2 =
2.28527932749531
Sada primijenimo nejednakost (4). Utipkajmo:
n=ceil(sqrt((1-0)^3/(12*10^(-5))*M2))
Pritisnemo Enter, pa e MATLAB ispisati:
n =
138
Preostaje pozvati funkciju trapez i izraunati polazni odreeni integral. Podintegralnu
funkciju najprije zapiimo u posebnu funkcijsku mdatoteku. Otvorimo novu m-datoteku i
utipkajmo:
function y=pif(x);
y=sin(x.^2);
Pohranimo dobivenu datoteku pod nazivom pif.m i vratimo se u komandni prozor. U novi
redak toga prozora utipkamo:
I=trapez(@pif,0,1,n)
Pritisnemo Enter, pa dobivamo traenu vrijednost:
I =
0.31027303032220
b) Najprije poistimo komandni prozor, pa u njegova nova tri retka utipkajmo:
f4=diff(f,4);
f5=diff(f,5);
rijesi(f5,g)
(Funkciju g(x) = 0 x imamo deklariranu u a) podzadatku, a ienje pomou funkcije clc
nije utjecalo na pohranu te funkcije u memoriji.) Pritisnemo Enter, pa e MATLAB ispisati:
ans =
0
0 - 1.68676136346992i
0 + 1.68676136346992i
Iz dobivenoga bismo rjeenja mogli pomisliti da je x = 0 jedina stacionarna toka funkcije
f(IV)(x) u segmentu [0, 1]. Meutim, to nije tono. (Nemojte odmah kriviti funkciju solve: ni
257
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
ona ne moe uspjeno rijeiti svaku jednadbu, tim vie to je ovdje rije o relativno sloenoj
nealgebarskoj jednadbi.)
Nacrtajmo graf funkcije f(V)(x) na segmentu [0, 1]. U nova dva retka komandnoga prozora
utipkajmo:
x1=0:0.0001:1;
plot(x1,subs(f5,x1))
Dobit emo sljedeu sliku:
Slika 19.
Iz nje vidimo da je jedna stacionarna toka funkcije f(IV)(x) na segmentu [0, 1] doista x1 = 0,
dok je druga priblino jednaka 0.8. Njezinu toniju vrijednost dobit emo primjenom funkcije
fzero. U novi redak komandnoga prozora utipkajmo:
f5
MATLAB e ispisati:
f5 =
32*cos(x^2)*x^5+160*sin(x^2)*x^3-120*cos(x^2)*x
Oznaimo izraz za f5, pa ga kopirajmo koristei tipke Ctrl i C. U novi redak komandnoga
prozora utipkajmo
x2=fzero
otvorimo obinu zagradu, zalijepimo kopirani izraz, stavimo znak zareza, nadopiimo 1 i
zatvorimo obinu zagradu. Taj redak naposljetku treba izgledati ovako:
mr.sc. Bojan Kovai, vii predava
258
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x2=fzero('32*cos(x^2)*x^5+160*sin(x^2)*x^3-120*cos(x^2)*x',1)
Pritisnemo Enter, pa e MATLAB ispisati:
x2 =
0.85207666630662
Tako emo najveu vrijednost funkcije |f(IV)(x)| na segmentu [0, 1] odrediti kao najveu od
triju vrijednosti: f(IV)(0), f(IV)(x2) i f(IV)(1). U novi redak komandnoga prozora utipkajmo:
M4 =
28.42851540309637
Za odreivanje broja n primijenimo nejednakost (5). U novi redak komandnoga prozora
utipkamo:
n=ceil(sqrt((1-0)^5/(180*10^(-5))*M4))
Pritisnemo Enter, pa e MATLAB ispisati:
n =
126
Dobivena vrijednost varijable n je paran prirodan broj, pa preostaje izraunati polazni integral
primjenom funkcije simpson. Njezini argumenti bit e funkcija f pohranjena u datoteci
pif.m, a = 0, b = 1 i n = 126. U novi redak komandnoga prozora utipkajmo:
I1=simpson(@pif,0,1,n)
Pritisnemo Enter, pa e MATLAB ispisati:
I1 =
0.31026830140552
Iz a) i b) podzadatka moemo zakljuiti da je priblina vrijednost polaznoga integrala
(izraunana sa zadanom tonou) 0.31027.
Za priblino raunanje odreenoga integrala MATLAB posjeduje dvije ugraene funkcije:
259
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
quad i quadl. Obje te funkcije kao ulazne varijable imaju podintegralnu funkciju f (x), te
granice segmenta a i b, a zasnivaju se na prilagoenoj Simpsonovoj, odnosno Lobattovljevoj
formuli i imaju dogovornu tonost reda 106. Ako elimo postii veu tonost (npr. eps) , tu
tonost moramo navesti kao ulaznu varijablu pri pozivu funkcije. Mi emo koristiti funkciju
quadl koja se (iz komandnoga prozora) moe pozvati na ukupno tri naina:
1. nain: I = quadl(funkcija,donja_granica,gornja_granica)
I = quadl('sin(x)',0,pi/2)
MATLAB e ispisati:
I =
0.99999999999175
elimo li isti integral izraunati s tonou od 1012, upisat emo:
I = quadl('sin(x)',0,pi/2,1e-12)
i dobiti:
I =
1.00000000000000
2. nain (koristei funkciju inline za definiranje objekta u komandnomu prozoru):
F=inline(funkcija)
I=quadl(F,donja_granica,gornja_granica)
Integral iz 1.) tako moemo priblino izraunati i ovako:
F=inline('sin(x)');
I = quadl(F,0,pi/2)
pa e MATLAB (oekivano) ispisati:
I =
0.99999999999175
3. nain: Podintegralnu funkciju zapiemo u obliku funkcijske mdatoteke pif.m, pa je iz
komandnoga prozora pozivamo ovako:
I=quadl(@pif,donja_granica,gornja_granica)
260
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Za poetnike ili nedovoljno iskusne korisnike trei je nain najpraktiniji jer se u sluaju
pogrenoga zadavanja funkcije f ispravke ne moraju vriti u komandnomu prozoru. Stoga
emo i mi primjenjivati taj nain kad god to bude mogue. Za iskusne korisnike najpraktiniji
je prvi nain.
Pogledajmo nekoliko primjera.
I=
arctg x
dx .
1 + x2
function y=pif(x);
y=sqrt(atan(x))./(1+x.^2);
Pohranimo unesene naredbe i vratimo se u komandni prozor. Izraunajmo najprije priblinu
vrijednost zadanoga integrala rabei trapeznu formulu. U novi redak komandnoga prozora
utipkajmo:
I1=trapez(@pif,0,1,1000)
pa e MATLAB ispisati:
I1 =
0.46402073395717
Za primjenu Simpsonove formule u novomu retku utipkajmo:
I2=simpson(@pif,0,1,1000)
pa e MATLAB ispisati:
I2 =
0.46402476578696
Uporabimo li funkciju quadl, nakon utipkavanja
I3=quadl(@pif,0,1,1e-12)
dobivamo:
mr.sc. Bojan Kovai, vii predava
261
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
I3 =
0.46402733306852
Izraunajmo sada tonu vrijednost integrala koristei funkciju int. U nova tri retka
komandnoga prozora utipkajmo:
syms x
f=sqrt(atan(x))/(1+x^2);
I=int(f,x,0,1)
Pritisnimo Enter, pa e MATLAB ispisati:
I =
1/12*pi^(3/2)
Priblinu vrijednost toga broja u MATLAB-u dobijemo koristei funkciju double.
Utipkajmo:
double(I)
pa e MATLAB ispisati:
I =
0.46402733306931
Preostaje nam ocijeniti pogrjeke priblinih rauna. To emo uiniti tako da izraunamo
sljedee vrijednosti:
g1 = |I I1|,
g2 = |I I2|,
g3 = |I I3|.
U novi redak komandnoga prozora utipkajmo:
g1=abs(I-I1),g2=abs(I-I2),g3=abs(I-I3)
pa e MATLAB ispisati:
g1 =
6.599112139127339e-006
g2 =
2.567282352927691e-006
g3 =
3.338995746560158e-012
Zakljuujemo da smo pomou funkcije quadl dobili najbolji (zapravo, najpribliniji)
rezultat, a pomou trapezne formule najloiji rezultat.
mr.sc. Bojan Kovai, vii predava
262
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
x
e dx .
Izraunajmo priblinu vrijednost toga integrala rabei trapeznu i Simpsonovu formulu (uz n =
= 2000). Pomou funkcije quadl procijenimo tonu32 vrijednost integrala s tonou od
106.
Najprije modificiramo mdatoteku pif.m:
function y=pif(x);
y=exp(-x.^2);
Pohranimo unesene naredbe i vratimo se u komandni prozor. U njegov novi redak utipkajmo:
I1=trapez('pif',1,2,2000),I2=simpson('pif',1,2,2000),I3=quadl(@pif,1,2)
pa e MATLAB ispisati:
I1 =
0.13525727175200
I2 =
0.13525725794999
I3 =
0.13525725727024
Moemo zakljuiti da je prava vrijednost integrala (s tonou od 106) jednaka
I = 0.135257.
Napomena: Utipkavanjem
I3=quadl(@pif,1,2,1e-12)
dobili bismo:
I3 =
0.13525725794999
tj. I3 = I2. Budui da ne moemo izraunati tonu vrijednost polaznoga integrala, ne smijemo
zakljuiti da u ovom sluaju Simpsonova formula daje toniji rezultat od funkcije quadl.
Takve je usporedbe primjereno napraviti iskljuivo u sluajevima kad moemo izraunati
tonu vrijednost odreenoga integrala.
2
32
Moe se pokazati da nije mogue eksplicitno odrediti primitivnu funkciju funkcije f (x) = e x , a samim tim
niti izraunati tonu vrijednost zadanoga integrala.
263
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
elimo li priblino izraunati neki dvostruki integral, rabimo MATLAB-ovu funkciju
dblquad ija je sintaksa analogna funkciji quadl. Evo jednoga primjera.
I = x 2 + y 2 dx dy
D
ako je podruje integracije D jedinini kvadrat [0,1]2. Prema Fubinijevu pouku33 dvostruki
integral moemo zamijeniti s dva ''jednostruka'' (obina) integrala:
11
11
00
00
function z=pif(x,y);
z=sqrt(x.^2+y.^2);
Pohranimo unesene naredbe i vratimo se u komandni prozor. Utipkajmo:
I=dblquad(@pif,0,1,0,1,1e-12)
pa e MATLAB ispisati:
I =
0.76519571646553
Poredak integrala pritom nije bitan jer se vrijednost integrala ne mijenja ako ''zamijenimo
integrale''. No, moramo pripaziti da donja granica jednoga integrala bude zapisana tono
ispred gornje granice toga istoga integrala jer u suprotnom neemo dobiti ispravan rezultat.
3
3
Konstanta
P = arsh 1 + 2 = ln 1 + 2 + 2
2.2955871493926380740342980491895
Vie o Fubinijevu pouku i njegovim primjenama vidjeti npr. u knjizi . Ungar: Matematika analiza u Rn,
Golden-marketing Tehnika knjiga, Zagreb, 2005.
34
Vie o opoj parabolinoj konstanti moe se nai u knjizi R.S.Finch: Mathematical Constants,Cambridge
University Press, 2003.
264
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
1.
(1 + x ln x ) dx .
6. e
sin x
dx .
2.
3
cos
x
0
1
1
dx .
2
x 5 x + 6
5.
ln(ln x )
e x dx .
ln 3
9.
earcctgx x ln(1 + x 2 ) 1
dx .
0
1 + x2
1
x4
10.
e dx.
2 x dx.
ln 2
a)
2
log x
sin( x ) e dx ,
c)
b)
x + sin 2 x
dx ,
x 2 + cos2 x
8. ln x + 1 + x 2 dx .
e2
4.
dx .
3.
d) ln
ln(1 + x 2 ) 1 x 2 dx,
e 2 x e x + 1
dx.
3
sin x
2
x 2 + x y + y 2 dx dy
265
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
11. LITERATURA
1. S. Kurepa: Matematika analiza (1. dio), kolska knjiga, Zagreb, 1997.
2. S. Kurepa: Matematika analiza (2. dio), Tehnika knjiga, Zagreb, 1991.
3. B. P. Demidovi i suradnici: Zadatci i rijeeni primjeri iz matematike analize za tehnike
fakultete, Golden marketing Tehnika knjiga, Zagreb, 2003.
4. V. P. Minorski: Zbirka zadataka iz vie matematike, Tehnika knjiga, Zagreb, 1971.
5. I. Ivani: Numerika matematika, Element, Zagreb, 2003.
6. S. Suljagi: Vjerojatnost i statistika, skripta, Tehniko veleuilite, Zagreb, 2003.
7. I. Vukovi: Matematika 1, udbenik za struni studij elektrotehnike, Tehniko veleuilite
u Zagrebu, Zagreb, 2011.
8. I. Vukovi: Matematika 2, udbenik za struni studij elektrotehnike, Tehniko veleuilite
u Zagrebu, Zagreb, 2011.
9. B. Kovai: Poslovna statistika, skripta, Visoka poslovna kola PAR, Rijeka, 2012.
10. I. Vukovi: Osnove numerike matematike, udbenik za struni studij elektrotehnike,
Tehniko veleuilite u Zagrebu, Zagreb, 2011.
11. MATLAB Documentation Version 7., The MathWorks Inc., Natick, 2007.
12. M. Vrdoljak: Uvod u MATLAB (dostupno na: http://titan.fsb.hr/~mvrdolja/matlab)
13. R. L. Spencer, M. Ware: Introduction to MATLAB, Brigham Young University, 2011.
266
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
KAZALO POJMOVA
Aritmetika sredina 173
Cauchyjeva zadaa 156
ebievljeve toke 241
Format
dvostruke preciznosti
pomine toke
Formula
Simpsonova 251
trapezna
251
Funkcija
171
bar
bar3
177
bar3h
178
barh
176
111
char
clc
33
compose
95
cumsum
169
dblquad
261
80
diff
double
107
dsolve
154
erf
106
error
201
ezplot
54
factorial
67
feval
223
finverse
95
fzero
227
hist
186
ilaplace
161
inline
257
int
105
laplace
160
limit
101
linspace
31
max
197
mean
173
min
197
mod
197
10
6
267
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
201
nchoosek
normcdf
215
pie
167
pie3
167
plot
43
polyfit
238
polyval
234
pretty
80
quad
256
quadl
256
roots
232
80
simple
simplify
80
solve
87
sprintf
83
std
173
111
strcat
strvcat
111
subs
80
syms
80
symsum
121, 122
173
var
Frekvencija
apsolutna
kumulativna apsolutna manje od
kumulativna apsolutna vee od
kumulativna relativna manje od
kumulativna relativna vee od
relativna
Funkcije
matematike 14
Graf
funkcije na segmentu
47
kumulanta
169
Grafikon
histogram
186
jednostavan linijski 43
jednostavni retci
176
jednostavni stupci
176
poligon frekvencija 176
IEEE standard
10
Jednadba
165, 172
168, 172
168, 172
168, 172
168, 172
165, 172
268
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
221
algebarska
nealgebarska 221
Koeficijent varijacije 173
Konstanta
Catalanova
110
opa parabolina
261
Kriterij konvergencije reda 125
Cauchyjev
125
D'Alembertov 126
Raabeov
127
Kvartil
197
prvi (donji)
drugi (medijan)
197
trei (gornji)
197
Laplaceov transformat
159
inverz 161
mdatoteka
funkcijska
63
obina
61
MATLAB
naziv
6
Matrice
algebarske operacije
generiranje prema broju elemenata
zadavanje (generiranje)
Matrine funkcije
desno dijeljenje lan po lan
lijevo dijeljenje lan po lan
mnoenje lan po lan
ugraene funkcije
Medijan
197
Metoda
najmanjih kvadrata
244
raspolavljanja (bisekcije)
221
Mod statistikoga niza
197
Modalitet
164
skala 164
Naredba
break
65, 68
continue
65, 68
for
65
hold
73
18
31
17
20
20
20
23
269
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
70
ifelse
while
68
Obiljeja
164
diskretna
165, 172
kontinuirana 165, 182
kvalitativna 165
kvantitativna 165
Operatori
logiki 11
matematiki 11
Polinom
142
Fourierov
MacLaurinov 132
Taylorov
132
Pouak
Bolzanov
221
261
Fubinijev
Razdioba
binomna
198
Poissonova
208
normalna (Gaussova)
213
214
standardna (jedinina) normalna
Razred
182
irina
183
sredina
183
Red
brojevni (numeriki)
121
Fourierov
142
funkcija
129
MacLaurinov
132
potencija
129
Taylorov
132
Rezanje suvika decimala
9
Simboliki objekt
80
Sluajna varijabla
198
binomna
198
diskretna
198
funkcija razdiobe
198
neprekidna (kontinuirana) 198, 213
normalna
213
Poissonova
208
Sluajni pokus
198
270
ELEKTROTEHNIKI ODJEL
Matematiki alati u elektrotehnici
Bernoullijev 198
Standardno odstupanje (standardna devijacija)
Statistiki skup
164
elementi
164
opseg
164
Tonost (tolerancija) aproksimacije 252
Varijabla
ans
13
eps
10
i
13
inf
10
10
NaN
pi
13
procjeniteljska (RCOND)
39
Varijanca
173
Zaokruivanje realnih brojeva
9
Znakovi , ; i :
uporaba
28
Znanstveni oblik realnoga broja
6
eksponent
7
mantisa
7
271
173