Vjezba 1 - osnove matlaba.pdf

16
Predmet:MODELIRANJE I SIMULACIJA I (i) / SOFTVERSKI ALATI U INŽINJERSTVU (i) VJEŽBE 1. OSNOVE MATLABA Univerzite u Tuzli / Mašinski fakultet Tuzla 201213

description

osnove matlaba

Transcript of Vjezba 1 - osnove matlaba.pdf

Predmet:MODELIRANJE I SIMULACIJA I (i) / SOFTVERSKI ALATI U INŽINJERSTVU (i)     

VJEŽBE 1. 

OSNOVE MATLABA         Univerzite u Tuzli / Mašinski fakultet Tuzla 2012‐13 

Matlab je interaktivni program za inženjerske i znanstvene proračune. Služi za rješavanje različitih matematičkih problema, te izračunavanja i simulacije vezane uz identifikaciju, upravljanje i regulaciju sustava.   Uz  osnovni  programski  sustav  postoje  i  brojni dodatni  programski paketi (toolbox‐ovi) koji pokrivaju mnoga područja  inženjerske  djelatnosti:  automatsko  upravljanje,  identifikaciju    sustava,  statističke  analize,  analizu sustava u vremenskoj i frekvencijskoj domeni, simboličku  matematiku, obradu signala i  slike, 2D i 3D grafičke prikaze i brojne druge. Jedan od  značajnijih paketa je Simulink ‐ vizualni alat pomoću kojeg je moguće simulirati kontinuirane    i  diskretne  sustave.  Simulink  koristi  funkcijske  blok  dijagrame  čijim  se  povezivanjem  kreiraju sustavi koje simuliramo. Ovakva primjena programa olakšava rad korisniku jer ne zahtijeva  detaljno poznavanje sintakse programskog jezika.   U Matlabu  je moguće raditi na dva načina. Jedan je direktan, pri  čemu se u glavnom prozoru programa upisuje naredba,  te  program  odmah  vraća  rezultat. Ovaj  način  prikladan  je  kada  radimo  jednostavne  operacije  bez ponavljanja.    Kod drugog načina, korisnik u  tekstualnom editoru  (Matlab editor/debbuger) piše program koji  se  sastoji od slijeda  naredbi  i  pohranjuje  ga  kao  m‐datoteku  (datoteka  s  .m  ekstenzijom).  Kad  u  komandnom  prozoru Matlaba  pozovemo  ime  te  datoteke,  pokrenut    će  se  izvršavanje  programa  tj.  izvršavanje  slijeda  naredbi pohranjenih u datoteci.  

 Standardni izgled MATLAB‐ove radne površine 

   

 Matlabovi prozori 

 

 Primjer grafičkog prozora 

 Primjer prozora za pisanje programa 

 Prozor sistema za pomoć 

Rad u komandnom prozoru  

 

>> 2*(4+3) ans =      14  >> a=5; >> b=3; >> a*b  ans =      15      

>>  Kursor smješten iza komandnog znaka znači da korisnik moze da upiše komandu;  Tačka i zarez%  Znak procenatclc  Brisanje    

Aritmetičke operacije sa sklarima  

 Prioriteti izvršavanja  

Najviši  ZAGRADE (kada imamo više zagrada, prvo se izrčunava unutrašnja zagrada)Drugi po redu STEPENOVANJETreći po redu MNOŽENJE, DIJELJENJE (jednak prioritet)Četvrti po redu SABIRANJE I ODUZIMANJE      

Korištenje MATLAB‐a kao kalkulator  

>> 7+8/2   ans =      11  >> (7+8)/2  ans =      7.5000  >> 4+5/3+2  ans =      7.6667  >> 5^3/2  ans =     62.5000  

>>  27^(1/3)+32^0.2 ans =       5  >> 27^1/3+32^0.2  ans =      11  >> 0.7854‐(0.7854)^3/(1*2*3)+0.785^5/(1*2*3*4*5)... ‐(0.785)^7/(1*2*3*4*5*6*7)  ans =      0.7071 

Upisujemo tri tačke i pritisnemo enter da bismo izraz nastavili u slijedećem redu

 

Format prikaza rezultata  

>> help format     >> 290/7  ans =     41.4286  >> format long >> 290/7  ans =    41.428571428571431 

Elementarne matematičke funkcije 

 

>> sqrt(64)  ans =       8  >> sqrt(50+14*3)  ans =      9.5917  >> sqrt(54+9*sqrt(100))  ans =      12  >> (15+600/4)/sqrt(121)  ans =      15 

 

>> sin(30)  ans =     ‐0.9880  >> sind(30)  ans =      0.5000 

 

Definisanje skalarnih promjenljivi  

>> x=15  x =      15  >> x=3*x‐12  x =      33 

>> a=12 a =      12  >> B=4  B =       4  >> C=(a‐B)+40‐a/B*10  C =     18 

>> a=12; >> B=4; >> C=(a‐B)+40‐a/B*10  C =      18 

>> a=12; B=4; C=(a‐B)+40‐a/B*10 C =      18 

Pravila o imenima promjenljivih Mogu imati do 63 oznake  Mogu sadržati slova, cifre i podvlake  Moraju počinjati slovom  MATLAB pravi razliku između velikih i malih slova 

Izbjegavati korištanje ugrađenih funkcija (sin, exp, sqrt itd..) Unaprijed definirane promjenljive

 

>> who Your variables are:  B    C    a    ans  b    x      >> whos   Name      Size            Bytes  Class     Attributes    B         1x1                 8  double                 C         1x1                 8  double                 a         1x1                 8  double                 ans       1x1                 8  double                 b         1x1                 8  double                 x         1x1                 8  double 

Korisne komande za rad s promjenljvim

PRIMJERI 

 

Primjer 1.1. Data je trigometrijska jednačina  

 Ukoliko je  

 Provjeriti  da  li  je  formula  ispravna  tako  što  će  te izračunati obje strane jednačine 

>> x=pi/5;>> LHS=cos(x/2)^2  LHS =      0.9045  >> RHS=(tan(x)+sin(x))/(2*tan(x))  RHS =      0.9045  

Primjer 1.2. Četri  kružnice  su  smještene  kao na  slici. U  svakoj tački dodira kružnice  su  tangente  jedna na drugu. Odrediti  rastojanje  između  centra  C2  i  C4. Poluprečni  kružnica  su:  R1=16mm,  R2=6,5mm, R3=12mm, R4=9,5mm.  

Linije  koje  povezuju  centre  kružnica  čine  četri trougla, poznate su dužine svih stranica dva  takva trougla C1 C2 C3  i C1 C3 C4  . Taj podatak se koristi za izračunavanje  uglova  γ1  i  γ2  pomoću  kosinusne teoreme.  

 Zatim se izračuna stranica C2 C4 i pomoću trougla C1 C2 C4  (kosinusna  teorema  –  poznate  su  dužine  C1 C2i C1 C3 a ugao γ3 je zbir uglova γ1 i γ2) 

 

%Program za izracunavanje zadatka 2 R1=16; R2=6.5; R3=12; R4=9.5; C1C2=R1+R2; C1C3=R1+R3; C1C4=R1+R4; C2C3=R2+R3; C3C4=R3+R4; Gama1=acos((C1C2^2+C1C3^2-C2C3^2)/(2*C1C2*C1C3)); Gama2=acos((C1C3^2+C1C4^2-C3C4^2)/(2*C1C3*C1C4)); Gama3=Gama1+Gama2; C2C4=sqrt(C1C2^2+C1C4^2-2*C1C2*C1C4*cos(Gama3)) >> zadatak2 C2C4 = 33.5051

  

Primjer 1.3. Tijelo  početne  temperature  T0 smješteno  je  u  trenutku  t=0  u prostoru konstnatne temperature Ts,  temperatura  tijela  će  se mijenjati prema jednačini: 

 Gdje  je  T  temperatura  tijela  u trenutku  t  a  k=const.  Konzerva osvjezavajuceg  pica  temperature 120oF  stavljena  je  u  frizider unutrasnje  temperature  38oF. Izracunati  temperaturu poslije  tri sata, k=0,45. 

%Zadatak 3 Ts=38; T0=120; k=0.45; t=3; %Ts je konstantna tempereatura T=round(Ts+(T0-Ts)*exp(-k*t))  >> zadatak3  T =      59