1 / 32

Primijenjena matematika

Primijenjena matematika. Damir Krstinic damir.krstinic@fesb.hr. Matlab. Matlab je high-performance programski jezik namjenjen za tehničke proračune

kaspar
Download Presentation

Primijenjena matematika

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Primijenjena matematika Damir Krstinic damir.krstinic@fesb.hr

  2. Matlab • Matlab je high-performance programski jezik namjenjen za tehničke proračune • Matlab objedinjava računanje, vizualizaciju i programiranje u lako uporabljivoj okolini u kojoj su problem i rješenje definirani poznatom matematičkom notacijom.

  3. Primjena Matlaba • Matematika i računanje • Razvoj algoritama • Modeliranje, simulacija, analiza • Analizu i obrada podataka, vizualizacija • Znanstvena i inžinjerska grafika • Razvoj aplikacija, uključujući i izgradnju GUI

  4. Korištenje Matlaba • Naredbe za MATLAB unosimo u komandni prozor, osnovni prozor MATLABa primjer: >> 3*cos(2*pi/3)/sqrt(23) • Pored naredbi MATLABa, u komandnom prozoru vrijede i naredbe operativnog sustava primjer – promjena radnog direktorija: >> cd <ime_direktorija>

  5. Matlab operatori

  6. Specijalne varijable

  7. Elementarne matematičke funkcije

  8. Matrice u Matlabu • Matricu u matlab unosimo na slijedeći način: A=[1 2 –1; 2 4 6] , ili A=[1 2 –1 <ENTER> 2 4 6]

  9. Operacije sa matricama

  10. Rješavanje sustava linearnih jednadžbi • Sustav je zadan u matričnom zapisu AX=B, gdje matrice A i B imaju isti broj redaka • Sustav rješavamo korištenjem “lijevog djeljenja” matrica: X=A\B

  11. Primjer Rješavanje sustava: A=[1 2 3; -1 3 4; 2 4 5] B=[6; 9; 7] (ili B=[6 9 7]’) X=A\B

  12. Grafika u Matlabu • Neka je X=[1 3 –2 5] jednoredna matrica (vektor) upisana u Matlab • X možemo nacrtati korištenjem naredbe plot plot(X) - crta linijski graf plot(X,’*’) - vrijednosti od X prikazane sa *

  13. Prikaz funkcije • Potrebno je nacrtati graf funkcije

  14. Prikaz funkcije, primjer 2 • Potrebno je nacrtati graf funkcija

  15. Programiranje u Matlabu • Pored korištenja u naredbenom modu, Matlab ima i mogućnost razvijanja programa u vlastitom programskom jeziku • Programe je moguće spremati u datoteke i naknadno pozivati • Datoteke sa programskim kodom Matlaba nazivamom-fileovi

  16. Naredbe kontrole toka • U naredbe kontorle toka spadaju petlje i uvjetne strukture • Petlje obuhvaćaju dijelove koda koji se ponavljaju više puta • Uvjetne strukture obuhvaćaju dijelove koda koji se izvršava samo ako je neki uvjet zadovoljen, ili dijelove koda koji se mogu izvršiti na različite načine u ovisnosti o nekom uvijetu

  17. for petlja • Služi za ponavljanje određene naredbe ili niza naredbi unaprijed zadani broj puta for varijabla = od:korak:do naredbe end

  18. for petlja, primjer 1: • Računanje sume brojeva od 1 do 100 s=0; for a = 1:100 s = s+a; end s računa vrijednost, ali rezultat ne prikazuje na ekranu

  19. for petlja, primjer 2: • Računanje umnoška brojeva od 1 do 100 s=1; for a = 1:100 s = s*a; end s

  20. while petlja • Ponavlja određenu naredbu ili niz naredbi dok je ispunjen uvijet iz izraza while izraz naredbe end • Za izlaz iz petlje može se koristiti naredba break

  21. while petlja, primjer • Pronađi broj n sa kojim suma prvih n prirodnih brojeva prelazi 100 s=0; n=0; while s<100 n = n+1; s = s+n; end n

  22. Naredba if (if – else) • Naredba if izvršit će navedene naredbe ako je uvijet dan izrazom ispunjen

  23. Naredba if, primjer • Napiši program koji ispisuje veći od dva slučajna broja a=rand; b=rand; if a>b a else b end

  24. m-fileovi • Dijelove programskog koda koje često izvršavamo možemo spremiti u datoteku, tzv. m-file • Nije potrebno ukucavati kod svaki puta kada ga želimo izvršavati • Razlikujemo skripte (obične m-fileove) i funkcije

  25. Stvaranje m-filea • Odabirom opcija izbornika (redom): File – New – M-file pojavljuje se prozor tekst editora u koji unosimo naredbe • Naredbe spremamo u datoteku s ekstenzijom m (ime_datoteke.m)

  26. Spremanje m-filea • m-fileove spremamo u putanju (PATH) Matlaba. • PATHčine skup direktorija u kojima matlab traži m-fileove • Ukoliko datoteku spremamo na neko drugo mjesto, potrebno je Matlabu pokazati gdje da traži našu datoteku. Ovo radimo dodavanjem direktorija u koji je datoteka spremljena uPATH

  27. Skripte (obični m-file) • Ako imamo neki duži niz naredbi, koji nam se u radu često ponavlja, možemo ga zapisati u obični m-file. • Pri svakom pozivu imena tog m-filea, izvršit će se niz naredbi iz datoteke • Naredbe se izvršavaju redosljedom kojim su zapisane u datotece • Efekt izvršavanja je isti kao da se u komandnom prozoru uosi naredba po naredba

  28. Funkcijski m-file • Funkcijskim m-fileom kreiramo novu funkciju • Ovako kreirana funkcija ravnopravna je funkcijama ugrađenim u Matlab • Funkciju čineulazni parametri,tijelo funkcije(niz naredbi) ipovratna vrijednost funkcije(ili više njih)

  29. Funkcijski m-file Funkcija sa jednom povratnom vrijednošću function varijabla = ime_funkcije(ulazne varijable) Funkcija sa više povratnih vrijednosti function [v1 v2 ...] = ime_funkcije(ulazne varijable) • Funkcijski m-file spremamo u datoteku istog imena kao i funkcija

  30. Funkcijski m-file, primjer 1 • Napiši funkcijski m-file koji vraća veći od dva broja function v = veci(a, b) if a>b v=a; else v=b; end

  31. Funkcijski m-file, primjer 1 • Pozivanje funkcije x1 = 2 x2 = -3 x3 = veci(x1, x2)

  32. Funkcijski m-file, primjer 2 • Napiši funkcijski m-file koji vraća zbroj i razliku dva broja function [z r] = zb_raz(a, b) z = a+b; r = a-b; • Pozivanje: x1 = 2; x2 = 5; [y1 y2] = zb_raz(x1, x2)

More Related