Professional Documents
Culture Documents
Seminarski Rad: Uvod U Programiranje - Za Fizičare
Seminarski Rad: Uvod U Programiranje - Za Fizičare
SEMINARSKI RAD
IZ PREDMETA
IMPLEMENTACIJA
RJEENJA PROBLEMA KOSOG HICA U
PROGRAMSKOM JEZIKU MATLAB - u
student
FAHRETA SIJERI
Sarajevo, 25.06.2008
prof.dr.
SENAD BURAK
1
SADRAJ
1 . UVOD .......................................................................................................................................... 3
2. UVOD U RAD .............................................................................................................................4
2.1 O MATLAB u ................................................................................................................ 4
2.2 Fizikalno predstavljanje kosog hica ................................................................................... 6
2.2.1. Formule kosog hica ....................................................................................................8
2.3 Cilj rada ................................................................................................................................ 8
4. ZAKLJUCI ..............................................................................................................................15
5. LITERATURA .......................................................................................................................16
1.UVOD
Napredak tehnologije uzrokovat e u skoroj budunosti velike promjene u strukturi osnovno i srednjo
kolskih predmeta, u smislu potrebe za brim usvajanjem vee koliine znanja koje e voditi i ve vodi
prema restrukturiranju dananjih osnovnih i sredjnih kola. Svako drutvo nuno mora odgovoriti na te
zahtjeve eli li se dalje razvijati. Stoga se drutvo mora pobrinuti da napredak tehnologije prati i
odgovarajui napredak tehnologije u nastavi, te nai nove mogunosti za brzi i kvalitetniji prijenos znanja
s nastavnika na uenike. U tu svrhu e se koristiti
Hipertekstualni nastavni materijali, zato to su :
pregledniji jer se neki dokazi, primjeri, te zadaci za vjebu mogu dati kao linkovi i ne
izlaganje osnovnog teksta,
obimniji jer je mogue dati vie primjera nego sto je uobiajeno u pisanim verzijama,
grafiki atraktivniji jer je mogue je dati vie grafikih primjera, te animacija.
remete
U ovu svrhu je izuzetno pogodno iskoristiti programski jezik MATLAB, za rjeavanje mnogih fizikalnih
probleba.U ovom seminarskom radu bie predstavljeno rjeenje problema kosog hica, koji se
obrauje u okviru predmeta Fizika u srednjim kolama, pomou programskog jezika MATLAB - a .
Cilj rada je predstavljeno rjeenje problema kosog hica koritenjem osnovnih operacija definisanja
varijabli ( skalara, vektora i matrica ), te aritimetikim, logikim i relacijskim operacijama nad tim
varijablama, definisanje naredbi odluivanja i ponavljanja, kao i osnove grafikog prikazivanja
rezultata.
2. UVOD U RAD
2.1. O MATLAB u
MATLAB (Matrix Laboratory) je high-performance programski jezik namjenjen za tehnike proraune.
Objedinjava raunanje, vizualizaciju i programiranje u lako upotrebljivoj okolini u kojoj su problem i
rjeenje definirani poznatom matematikom notacijom. Uobiajena je upotreba MATLAB-a za
matematiku i proraune,
razvoj algoritama,
modeliranje, simulaciju, analizu,
analizu i obradu podataka, vizualizaciju,
znanstvenu i inenjersku grafiku,
razvoj aplikacija, ukljuujui i izgradnju GUI.
MATLAB je i okruje i programski jezik. Jedna od jaih strana MATLAB-a je injenica da njegov
programski jezik omoguava izgradnju vlastitih alata za viekratnu upotrebu. Moete lako sami kreirati
vlastite funkcije i programe (poznate kao M-datoteke) u kodu MATLAB-a. Skup specijaliziranih Mdatoteka za rad na odreenoj klasi problema naziva se Toolbox. S MATLAB-om dolazi nekoliko Toolboxova koji su i vie od kolekcije korisnih funkcija; oni predstavljaju rezultate istraivanja vrhunskih
strunjaka iz podruja upravljanja, obrade signala, identifikacije procesa, i drugih. Dakle uz pomo
MATLAB-a moete sami razviti nove ili adaptirati postojee Toolbox-ove za rjeavanje odreenih
problema.
Naredbe za MATLAB unosimo u komandni prozor, osnovni prozor MATLAB-a. Taj je prozor neka vrsta
terminala operacijskog sistema i u njemu vrijede i osnovne terminalske operacijske komande za
manipulaciju datotekama. Trenutni direktorij moemo promijeniti poznatom naredbom cd, a izvravati
moemo funkcije/naredbe koje su u path-u. Pored toga uz MATLAB novije verzije dolazi i vlastiti editor
M-datoteka s debugerom.
Osnovni elementi programskog paketa MATLAB su
Razvojna okolina
Skup alata za laku upotrebu MATLAB-a i njegovih funkcija. Mnogi od ovih alata (u verziji 6) su
realizirani u grafikom suelju. To su MATLAB desktop, komandni prozor (engl. Command Window)
koji je prikazan na slici 1 , historija naredbi (engl. command history), editor i debuger, te preglednici
help-a, radnog prostora (engl. Workplace), datoteka te path-a.
Biblioteka matematikih funkcija
Ogromna kolekcija raunskih algoritama.
Programski jezik
MATLAB programski jezik je jezik visokog stepena matrino orjentisan, s naredbama uslovnih
struktura, funkcija, struktuiranim podacima, ulazomizlazom te nekim svojstvima objektnoorjentisanog programiranja. Ovaj programski jezik omoguava programiranje na nioj razini (kao npr.
za potrebe studenata) ali i za kompleksnije programe veih razmjera.
Grafiki alat
MATLAB raspolae velikim mogunostima za grafiki prikaz podataka, vektora i matrica, kao i
notaciju i printanje tih dijagrama. Postoje funkcije visokog stepena za 2D i 3D vizualizaciju podataka,
obradu slike, animaciju. Takoer postoje i funkcije za izgradnju grafikih suelja za vae MATLAB
aplikacije.
Suelje programskih aplikacija
Biblioteka (engl. Application Program Interface - API) koja vam omoguava razvoj C i Fortran
programa koji mogu biti u interakciji s MATLAB-om.
Slika 2.
Kosi hitac
Tijelo je baeno u kosom smjeru brzinom v0, Poetnu brzinu rastavimo na horizontalnu
vertikalnu komponentu v0y, slika 3
komponentu v0x i
Vidimo na slici 3. da je ordinatna osa usmjerena prema gore to je obrnuto od smjera akceleracije sile
Zemljine tee. Akceleracija sila Zemljine tee ne utie na horizontalnu komponentu. Horizontalna
komponenta u bilo kojem trenutku t ostaje nepromjenjena i iznosi
v x v0
( 1.1)
( 1.2 )
U vertikalnom smjeru tijelo se klree stalnom akceleracijom. Na vertikalnu komponentu primjenit emo
formulu za jednoliko ubrzano kretanje.
v v0 a t
sv t
( 1.3 )
a t2
2
( 1.4. )
1
gt
2
( 1.5. )
Iz izraza ( 1.4. ) , ( 1.5. ) i slike 3, se moe izraunati izraz za putanju tokom kosog hitca. To je parabola
ija je jednaina :
( 1.6. )
Domet zavisi od ugla pod kojim je tijelo baeno, slika 4. Najvei mogui domet je za
ugao od 45 stepeni. (Hitac broj 2 na slici 4.) Za uglove razliite od 45 stepeni domet
se smanjuje.
d v x t v 0 cos t
v 02 sin 2
g
( 1.7 )
U specijalnom sluaju, kada je ugao jednak nuli, a kuglica se izbacuje sa neke visine u odnosu na
podlogu, kosi hitac prelazi u horizontalni hitac.
Slika 4.Zavisnost dometa kosog hica od ugla pod kojim je izbaeno tijelo
v ox v o sin
v oy v o sin g t
domet
gravitaciono ubrzanje
x v o t cos
y v o t sin
g t2
2
v o sin
g
v o2 sin 2
2g
v o2 sin 2
g
g 9,81
m
s2
3.1.1 ALGORITAM
clear
'Hitac-ph.problems 1'
'autor: FES, 2008 jun []'
g=9.81
'UNOS ugla FI kosog hica i poetne brzine Vo'
fi=input('unesi ugao fi: ')
v0=input('unesi vo: ')
if fi==0;
for j=0:100;
i=j+1;
t(i)=j;
X(i)=v0*t(i);
Y(i)=-g*t(i)^2/2;
end
figure(1);
plot (X,Y);
title('Horizontalni hitac
xlabel('Domet
[m]');
ylabel('Visina
[m]');
figure(2);
plot (t,Y);
title('Horizontalni hitac
xlabel('Vrijeme [s]');
ylabel('Visina
[m]');
figure(3);
plot (t,X);
title('Horizontalni hitac
xlabel('Vrijeme [s]');
ylabel('Domet
[m]');
else
fi=(fi/180)*pi;
fi2=pi/2-fi;
tD=2*v0*sin(fi)/g;
tD2=2*v0*sin(fi2)/g;
XD=v0^2*sin(2*fi)/g;
Ym=v0^2*(sin(fi))^2/(2*g);
Ym2=v0^2*(sin(fi2))^2/(2*g);
vX=v0*cos(fi);
vX2=v0*cos(fi2);
for j=0:100;
i=j+1;
t(i)=j*tD/100;
t2(i)=j*tD2/100;
X(i)=v0*t(i)*cos(fi);
Y(i)=v0*t(i)*sin(fi)-g*(t(i))^2/2;
XX(i)=v0*t2(i)*cos(fi2);
YY(i)=v0*t2(i)*sin(fi2)-g*(t2(i))^2/2;
end
figure(1);
plot (X,Y,XX,YY);
title('KOSI hitac definisan po t u rasponu [0,t(dometa)] za oba
ugla istog dometa');
xlabel('Domet x
[m]');
ylabel('Visina y [m]');
figure(2);
plot (t,X,t2,XX);
title('Grafik odnosa vremena i dometa za oba ugla istog dometa');
xlabel('Vrijeme t
[s]');
ylabel('Domet x [m]');
figure(3);
plot (t,Y,t2,YY);
title('Grafik odnosa vremena i visine hica za oba ugla istog
dometa');
xlabel('Vrijeme t
[s]');
ylabel('Visina hica h [m]');
end
'Ovo je
K R A J '
10
3.2.1. Kosi hitac definisan po t u rasponu ( 0,t ( dometa)) za oba ugla istog dometa,
slika 5
Slika 5. Kosi hitac definisan po t u rasponu ( 0,t ( dometa)) za oba ugla istog dometa
11
3.2.2. Grafik odnosa vremena i dometa za oba ugla istog dometa, slika 6
3.2.3 Grafik odnosa vremena i visine za oba ugla istog dometa, slika 7
Slika 7. Grafik odnosa vremena i visine hica za oba ugla istog dometa
12
3.2.5. Grafiki prikac odnosa vremena i visine kod horizontalnog hica, slika 9
13
3.2.6. Grafiki prikac odnosa vremena i dometa kod horizontalnog hica, slika 10
14
4. ZAKLJUCI
Implementacija moderne tehnologije u nastavi, dovodi do mogunosti za brzi i kvalitetniji prijenos znanja
s nastavnika na uenike. Na primjeru kosog hica, pokazano je, da se MATLAB moe iskoristiti za njegovo
rjeavanje na veoma efikasan i razumljiv nain. Ono to naroito daje znaaj jeste mogunost simulacije
na gotovo programsko rjeenje. Posebna vrijednost MATLAB a jeste grafiko prikazivanje problema.
15
5. LITERATURA
prof. dr. Senad Burak ; Uvod u programiranje - Zapisi sa predavanja, Sarajevo 2008
Programski jezik MATLAB cd
16