1. MATLAB Temel Seviye Semineri 速 Yrd.Do巽.Dr. Aslan 聴NAN (Elektrik M端hendislii B旦l端m端) E-posta: inan@yildiz.edu.tr Web: www.yildiz.edu.tr/~inan
2. MATLA B TANITIM MATLAB NED聴R? MATLAB速( MAT rix LAB oratory Matris Laboratuar脹), temel olarak teknik ve bilimsel hesaplamalar i巽in yaz脹lm脹 y端ksek performansa sahip bir yaz脹l脹md脹r. 1970lerin sonunda Cleve Moler taraf脹ndan yaz脹lan Matlab program脹n脹n tipik kullan脹m alanlar脹: Matematiksel (n端merik ve sembolik) hesaplama ilemleri Algoritma gelitirme ve kod yazma yani programlama Lineer cebir,istatistik,Fourier analizi,filtreleme,optimizasyon,say脹sal integrasyon vb. konularda matematik fonksiyonlar 2D ve 3D grafiklerinin 巽izimi Modelleme ve sim端lasyon (benzetim) Grafiksel aray端z oluturma Veri analizi ve kontrol端 Ger巽ek d端nya artlar脹nda uygulama gelitirme eklinde 旦zetlenebilir.
3. MATLAB TANITIM - Matlab, ABD meneli The Mathworks Inc. Natick, MA irketinin tescilli ad脹d脹r. Web adresi: http://www.mathworks.com - Matlabin T端rkiye temsilcisi Bursa merkezli Figes firmas脹d脹r. Web adresi: http://www.figes.com.tr Haber grubu: matlabturk@yahoogroups.com Matlab Kursu: YT 聴nsan Kaynaklar脹 Gelitirme Merkezi Web adresi: http://www.ikgm.yildiz.edu.tr Tel: (0.212) 259 7070 / 2788
4. MATLA B TANITIM MATLAB, matematik-istatistik, optimizasyon, neural network, fuzzy, iaret ve g旦r端nt端 ileme, kontrol tasar脹mlar脹, y旦neylem 巽al脹malar脹, t脹bbi arat脹rmalar, finans ve uzay arat脹rmalar脹 gibi 巽ok 巽eitli alanlarda kullan脹lmaktad脹r. MATLAB, kullan脹c脹ya h脹zl脹 bir analiz ve tasar脹m ortam脹 salar. Matlab program脹n脹 C/C++ diline d旦n端t端rebilir, 20. dereceden bir denklemin k旦klerini bulabilir, 100x100 boyutlu bir matrisin tersini alabilir, Bir elektrik motorunu ger巽ek zamanda kontrol edebilir, Bir otob端s端n s端spansiyon sim端lasyonunu yapabilirsiniz, ..
5. MATLA B TANITIM Matlab, arat脹rma ve m端hendislik alanlar脹nda kar脹la脹lan problemlere pratik ve h脹zl脹 sonu巽lar sunmaktad脹r. Bu nedenle Matlab, t端m d端nyada binlerce end端stri, devlet ve akademik kurumlarda kullan脹lmaktad脹r. zellikle t端m 端niversitelerde yayg脹n olarak kullan脹lmaktad脹r. Matlab kullan脹c脹 irketler aras脹nda D端nyada Boeing, DaimlerChrsyler, Motorola, NASA, Texas Instruments, Toyota ve Saab vb, lkemizde ise Aselsan, Tofa, Ar巽elik, Siemens, Alcatel, Garanti Bankas脹, Deniz Kuvvetleri, vb.. irketler verilebilir.
6. MATLA B TANITIM Matlab ve 巽eitli disiplinlerde kullan脹m脹 端zerine t端m dillerde y端zlerce kitap yaz脹lm脹t脹r. MATLAB ve PROGRAMLAMA, Dr. Aslan 聴NAN, Papatya Yay脹nc脹l脹k, 2004. Matlab 7.04 Simulink ve M端hendislik Uygulamalar脹, Alfa Yay脹nlar脹, Uur Arifolu, 2005. Matlab 聴le Risk Y旦netimi, T端rkmen Kitapevi, Yrd. Do巽. Dr. Uzunolu M./ alar Onar/ Ali K脹z脹l/ Turgay Ge巽er/ A. K脹van巽 Eren, 2005. Matlab ve Simulink'le Modelleme / Kontrol I , Derleyen: Zafer Bing端l, Birsen Yay脹nevi, 2005, Matlab ile Matematiksel Uygulamalar ve M端hendislik Uygulamalar脹, Mithat Uysal, Beta, 2004. M端hendislik ve Fen Uygulamalar脹yla Matlab, mer G端ndodu - Osman Kopmaz - M. Akif Ceviz, Paradigma Akademi,2003. Her Y旦n端 ile MATLAB, Yrd. Do巽. Dr. Mehmet Uzunolu,mer alar Onar,Ali K脹z脹l, T端rkmen Kitapevi, 2003. MATLAB 6.x GUI: Kullan脹c脹 Aray端z端 Tasar脹m脹, Niyazi Ari & Bilal Barkana,Osman Gazi niv. Bas脹mevi, 2003. MATLAB K脹lavuzu, Niyazi Ari & Bilal Barkana, Osman Gazi niv. Bas脹mevi, 2003. MATLAB 6.5, A. Emre etin, Alfa Yay脹nlar脹, 2003. renciler i巽in MATLAB, Doan 聴brahim, Bileim Yay脹nc脹l脹k,2000. Her Y旦n端yle Enstr端mantasyon ve l巽me (LabVIEW ve MATLAB ile,Cihan Ger巽ek,Ayd脹n Bodur, G旦khan Din巽er, Era Bilgi Sistemleri Yay脹nc脹l脹k, 2001. MATLAB ile M端hendislik Sistemlerinin Analizi ve 旦z端m端, 聴brahim Y端ksel, V聴PA , 2000. Lineer Cebir ve Matlab Uygulamalar脹, S.Aynur Uysal ve Mithat Uysal, Beta, 2000.
7. MATLA B TANITIM Matlab program脹 alt脹nda kullanaca脹m脹z temel ara巽lar: - Komut Penceresi - Programlama (M-file *.m) - Grafik (Figure *.fig) - Grafik Aray端zl端 Programlar (GUI *.fig) - Simulink (Model *.mdl) ve Blockset Mod端lleri - Toolbox (Ara巽 Kutusu) Mod端lleri (Fuzzy, Neural,Statistic vb.) - Microsoft Excel Matlab - Matlab Web-Server - xPC Target ve xPC Target Embedded - Stateflow, Real-Time Workshop, Real-Time Windows Target
8. MATLA B TANITIM Matlab program脹 lisansl脹 bir yaz脹l脹md脹r bu nedenle 端cretli olarak sat脹n al脹nmal脹d脹r.Bir 巽ok 端st端nl端klerine ve yayg脹n kullan脹m alanlar脹na oranla iki dezavantaj脹 vard脹r: Yava 巽al脹脹r. Fiyat脹 dier edeerlerine g旦re pahal脹d脹r. (rnein ana program 781 d脹r ve her bir mod端l ve toolbox脹n da ayr脹ca bir fiyat脹 vard脹r) ( http://www.figes.com.tr/tr/urunler/matlab/files/MATLAB_Akademik_Fiyat_Listesi.pdf )
9. MATLA B TEMEL KULLANIM Matlab Kullan脹m脹nda Temel Kurallar: Program脹n dili ve yard脹m bilgileri tamamen ingilizcedir. Komut temelli yaz脹l脹md脹r. K端巽端k-b端y端k harf ayr脹m脹 vard脹r. tot ve Tot farkl脹 alg脹lan脹r. 損 iareti komut promptudur. Komutlar Enter ile y端r端t端l端r.
10. MATLA B TEMEL KULLANIM 聴FADELER : Matematiksel ve metinsel g旦sterimler ile ilemler ifadelerle salan脹r. Say脹lar (Numbers) Deikenler (Variables) 聴le巽ler (Operators) Fonksiyonlar (Functions) Matlabde ifadeler genellikle deiken = ifade veya sadece ifade formundad脹r. rnek olarak >> x=4*sqrt(5) x = 8.9443 ifadesinde x deiken , 4 say脹 , * ile巽 , sqrt, fonksiyondur. Bir ifade = iareti ile bir deikene atanmam脹 ise Matlab otomatik olarak sonucu, ans (answer) ad脹 verilen 旦zel bir deikende saklar.
11. MATLA B TEMEL KULLANIM Bir ifadenin sonuna ; iareti eklediinizde ekrana yaz脹lmaz. Birden fazla ifade tek sat脹rda aralar脹na , ya da ; ko yarak yaz脹labilir . Yaz脹mda bo luk say脹s脹 etkisizdir. Sadece ilgili deiken ad脹n脹 yazarak o deikeni 巽a脹rabilirsiniz.
12. MATLA B TEMEL KULLANIM SAYILAR Ondal脹k say脹lar T端rk巽emizdeki 3,5 yerine 3.5 eklinde g旦sterilir ( 0.0001 veya 9.6 3 / 0.65 yerine .65). Bilimsel notasyon g旦sterimi olan e (veya E) harfi 10nun kuvvetini temsil eder. 2 e 4 = 2 .10 4 =2000 veya 1.6 5 e-20=1.6 5 .10 -20 demektir. Kompleks say脹larda imajiner (sanal) k脹s脹mlar i veya j ekini al脹r. i veya j ile gosterimlerinde bir fark yoktur. ( 1+3i veya 1+3*i veya 1+ i *3 ama 1+ i 3) / 1+ sqrt(3)* j / -5 i Matlabde t端m say脹lar, yakla脹k 2.10 308 ve 2.10 - 308 aras脹nda deiir .
13. MATLA B TEMEL KULLANIM Say脹 Format脹 Bir ilem sonucu varsay脹lan (default) olarak 4 ondal脹k ile g旦sterilir. Say脹 g旦steriminde hane say脹s脹 format fonksiyonu ile deitirilir. >> format xxx format veya format short : 5 rakaml脹 (4 ondal脹k) format long : 15 rakaml 脹 (14 ondal脹k) format bank : 聴 ki ondal脹kl脹 say脹 format rat : Ondal脹k say脹lar脹 rasyonel say脹 olarak g旦sterir.
14. MATLA B TEMEL KULLANIM DE聴KENLER Deikenler, ifadelerin adlar脹n脹 ta脹yan belirte巽lerdir. Deikenlerin sol taraflar脹nda = iareti bulunur. Deiken adlar脹, bir harf ile balamal脹 ve onu takiben herhangi say脹da harfler, rakamlar veya alt巽izgiden ( _ ) oluabilir. Deiken adlar脹 maksimum 63 karakter uzunlu unda olabilir. Deiken ad脹, 63 karakteri ge巽tiinde ilk 63 karakterlik k脹sm脹 ad olarak kabul eder. Deiken adlar脹nda k端巽端k veya b端y端k 巽 脹 旦 端 T端rk巽e karakterlerini kullanmay脹n脹z. K端巽端k-b端y端k harf duyarl脹d脹r: x ve X veya bor ve BOR, farkl脹 deiken adlar脹d脹r.
15. MATLA B TEMEL KULLANIM Deiken 聴lemleri Bir deikeni silmek i巽in Clear deikenad脹 komutunu kullan脹n脹z. al脹ma d端zleminden (workspace) t端m deikenleri silmek i巽in Clear komutunu kullan脹n脹z. Clear komutu bellekteki t端m deikenleri siler. who komutu ile sadece deiken adlar脹n脹z脹; whos komutu ile de deikenlerinizin 旦zelliklerini g旦rebilirsiniz.
16. MATLA B TEMEL KULLANIM Deikenler, skaler, vekt旦r, matris veya metin (string) olabilir. Deiken 旦rnekleri: - a=1; b=-3.2e3; ct=22/5; - metin =Alp Karadeniz; - ve k t 旦 r=[1 2 3]; - matris=[1 2 3; -1 0 1 ]; - hucre={1 2 ; buyuk kucuk};
17. MATLA B TEMEL KULLANIM 聴LELER: 聴lem yapmay脹 salayan sembollerdir. + - * / ^ (端 s alma, a b ) : 2^3 ( Tek t脹rna k aras脹) : Ali (Metin girilerinde kullan脹l脹r) : Transpoze ( ) : 2*(3-4) (聴lem s脹ras脹n脹 belirler) ( ) : sin(x) [ ] : Dizi g旦steriminde kullan脹l脹r. = : x=3 == : x==K ? : Program脹n ileyiini etkilemeyen a巽脹klama sat脹rlar脹n脹 g旦sterir. ! : DOS moduna ge巽er. A ritmetik ilemlerde , ile巽 旦ncelik s脹ras脹 (precision) vard脹r.
18. MATLA B TEMEL KULLANIM FONKS聴YONLAR Fonksiyonlar - built-in (yerleik): abs (mutlak deer), sqrt (karek旦k), mak (maksimum), sin (sinus) - m-file eklinde: sinh, gamma, factorial - user-defined (kullan脹c脹 tan脹ml脹) olmak 端zere 端巽e ayr脹l脹r. F onksiyon adlar脹 da k端巽端k - b端y端k harf duyarl脹d脹r. rnein sin yerine Sin veya SIN eklinde fonksiyon ad脹n脹n kullan脹m脹 hata ver ir . T端m fonksiyon ilemleri parantezler () aras脹nda yap脹l脹r. rnein, sin30 deil sin(30) gibi. >> help elfun veya >> help specfun veya >> help elmat komutlar脹 ile t端m temel fonksiyonlar 脹 g旦rebilirsiniz.
19. MATLA B D聴Z聴LER D聴Z聴LER Dizi, en genel matematiksel tan脹m脹 ile n端merik ve metinsel deerler topluluudur. Matlabde herey bir dizi olarak ileme konur ve en temel veri eleman脹d脹r. Reel ile kompleks say脹lar脹 ifade eden 巽iftkat veya n端merik diziler (double veya numeric array) Metin ifade eden diziler (char array) H端cre diziler (cell veya struct array)
20. MATLA B D聴Z聴LER Bir n端merik dizi, skaler, vekt旦r veya matris olabilir ve t端m n端merik diziler double array format脹ndad脹r. 1x1 dizisi, bir skaler (scaler) g旦sterir. (a=3,b=-6.5) mx1 veya 1xn dizisi, bir vekt旦r (vector) g旦sterir. mxn veya nxm dizisi,bir matris (matrix) g旦sterir. Bu 巽er巽evede 1x1 dizisi sabit matris veya tek elemanl脹 matris, nx1dizisi s端tun matrisi ve 1xn dizisi ise sat脹r matrisi olarak da d端端n端lebilir. Bir dizinin eleman say脹s脹, sat脹r ile s端tun say脹s脹n脹n 巽arp脹m脹d脹r.
21. MATLAB D聴Z聴LER 1 2 3 4 5 6 A = 3x2 matrix 6 elem an b=[1 2 3 4] 1x4 array 4 elem a n, sat脹r ve k t 旦r端 c= 1 3 5 3x1 array 3 elem a n, s端tun vet 旦r端 A (2,1)=3 b(3)=3 c(2)=3 Sat脹r # S端tun #
22. MATLA B D聴Z聴LER Vekt旦rler 1xn veya mx1 eklinde tek boyutlu dizi olan vekt旦rleri oluturman脹n iki temel yolu vard脹r: i) Direkt olarak ( [] ile ) sat脹r vekt旦rleri: >> f = [f1 f2 f3 ... fn] / >> f = [f1, f2, f3, ..., fn] s端tun vekt旦rleri: >> f = [f1; f2; f3; ...; fn] ii) Eit aral脹kl脹 elemanlar kullanarak ( : ile) f = 聴lkDeer : DeiimMiktar脹 : SonDeer Deiim miktar脹 belirtilmezse 聴lkDegerden sonra 1er er art脹m olaca脹n脹 ifade eder.
23. MATLA B D聴Z聴LER Matrisler Matrisleri oluturman脹n en temel yolu [] kullanmakt脹r. mxn boyutundaki bir matrisin genel format脹: F = [F11 F12 ... F1n ; F21 F22 ... F2n ; ..... ; Fm1 Fm2 ... Fmn] veya F = [F11, F12, ... , F1n ; F21, F22, ... , F2n ; ..... ; Fm1, Fm2, ... , Fmn]
24. MATLA B D聴Z聴LER Hem vekt旦rler hem de matrisler Utility fonksiyonlar ( zeros,ones ve rand) kullanarak da oluturulabilir: zeros( 1, n) veya zeros(n ,1 ) zeros(n) zeros(n,m) zeros(size(kd)) ones ( 1, n) veya ones (n ,1 ) ones(n) ones(n,m) ones(size(kd))
25. MATLA B D聴Z聴LER Dizilere fonksiyonlar脹 uygulama: length( kd ) : kd dizisinin eleman say脹s脹n脹 yani uzunluu size( kd ) : kd dizisinin boyutu sum(kd): kd vekt旦r端n端n eleman toplam脹 sum(A): A matrisinin s端tun ba脹na eleman toplam脹 kd(n): kd dizisinin n. eleman deeri A(n,:): A matrisinin sadece n. sat脹r脹 A(:,n): A matrisinin sadece n. s端tunu A: A matrisinin transpozesi yani devrii det(A): A matrisinin determinant脹 inv(A) : A matrisinin tersi diag(A): A matrisinin ana diagonel (巽apraz) elemanlar脹 [v,d]=eig(A): A matrisinin 旦zvekt旦rleri ve 旦zdeerleri Elemanter ilemler eleman elaman ilem demektir ve . 聴leci kullan脹l脹r: arpma: .* , B旦lme: ./ , s alma: .^
26. MATLA B PROGRAMLAMA Bilgisayar programlamas脹nda genel olarak belirli kal脹p ve kurallara uyulur. Bir bilgisayar yaz脹l脹m脹n脹n oluturulmas脹nda genel olarak aa脹da s脹ralanan prosed端re uyulur: Problemin tan脹m脹 (Ne-Ni巽in) 旦z端m y旦nteminin ve ad脹mlar脹n脹n belirlenmesi (algoritma: ak脹 emalar脹 veya pseudo-kod) Kodlama (Programlama diline 巽evirme) S脹nama (Program脹 巽al脹t脹rma) Belgeleme ve G端ncelletirme
27. MATLA B PROGRAMLAMA Matlabde programlama en genel olarak iki yolla yap脹l脹r: - Komut sat脹r脹nda (in-line) programlama - m-dosyalar脹yla (m-files) programlama m-dosyalar脹n脹n da iki t端r端 vard脹r: - D端zyaz脹 (script) m-dosyalar脹 - Fonksiyon (function) m-dosyalar脹 m dosyalar脹 oluturabilmek i巽in bir metin edit旦r端ne ihtiya巽 vard脹r. Bu edit旦r Matlabde Editor/Debugger ortam脹d脹r.
28. MATLA B PROGRAMLAMA Bir program genelde 端巽 aamadan oluur: - Giri Deikenleri / 聴lemler / 脹k脹 G旦sterimi (脹k脹 i巽in genelde disp ve fprintf fonksiyonlar脹 kullan脹l脹r.) Boluk verme: - disp (' ') veya fprintf (' ') Metinsel 巽脹k脹: - disp ('metin') veya fprintf ('metin) Metinle beraber n端merik deiken 巽脹k脹脹: - disp (['metin ' num2str(degisken) ]) - fprintf ('metin %a.bX ,degisken) Burada; a: say脹n脹n (en az) toplam hane say脹s脹n脹,b: say脹n脹n (en fazla) ondal脹k hane say脹s脹n脹 X: say脹n脹n format脹n脹 g旦sterir.d: tamsay脹, f : kayan nokta, e : 端stel, g: en k脹sa form
29. MATLA B PROGRAMLAMA Fonksiyonlar脹n genel yaz脹m format脹 function [out1,out2,... ,outN] = fonksiyon_ad脹 (in1,in2,...,inM) eklindedir. 巽 旦nemli kural脹 vard脹r: function ile balamal脹d脹r. Fonksiyon ad脹 ile dosya ad脹 ayn脹 olmal脹d脹r. Deiken 巽脹k脹lar脹 ekrana yazd脹r脹lmamal脹d脹r. rnein: function [Anapara,faiz] = kredi(P,oran,s端re) function P = fm_mod(V,T) function coklugraf(x,y,n)
30. MATLA B PROGRAMLAMA m-dosyalar脹n脹 listeleme what komutu: Ge巽erli dizindeki yani varsay脹lan 巽al脹ma klas旦r端ndeki t端m dosyalar脹 listeler. dir komutu: Ge巽erli dizindeki sizin tan脹mlad脹脹n脹z dosyalar脹 listeler. lookfor komutu: Bulmak istediiniz bir anahtar kelimenin ge巽tii m-dosyalar脹n脹 listeler. m-dosyalar脹n脹 g旦r端nt端leme ve d端zenleme type m-dosya_ad脹 komutu: m-dosyas脹 komut penceresi ortam脹nda g旦r端nt端lenir. zerinde herhangi bir d端zenleme yap脹lamaz. edit m-dosya_ad脹 komutu: m-dosyas脹 edit旦r penceresi ekran脹nda g旦r端nt端lenir. zerinde her t端rl端 d端zenleme ilemi yapabilir ve yeni hali ile kaydedilir.
31. MATLA B PROGRAMLAMA 聴le巽ler 端巽e ayr脹l脹r: Aritmetik, ilikisel ve mant脹ksal 聴likisel 聴le巽ler: < K端巽端kt端r <= K端巽端k eittir > B端y端kt端r >= B端y端k eittir == Eittir ~= Eit deildir Mant脹ksal 聴le巽ler: ~ NOT (deil) & AND (ve) | OR (veya)
32. MATLA B PROGRAMLAMA ART DEY聴MLER聴 (CONDITIONAL STATEMENTS) elseif (eerbaka) (n art) if mant脹ksal ifade 1 deyim 1 elseif mant脹ksal ifade 2 deyim 2 elseif mant脹ksal ifade n-1 deyim n-1 else deyim n end else (baka) (2 art) if mant脹ksal ifade deyim 1 else deyim 2 end if (eer) (1 art) if mant脹ksal ifade deyim end
33. MATLA B PROGRAMLAMA DNGLER (LOOPS) for D旦ng端s端 Bir for (i巽in) d旦ng端n端n genel format脹 for d旦ng端deikeni=ifade deyimler end while D旦ng端s端 Bir while (s端resince veya iken) d旦ng端s端n端n genel format脹 while ifade deyimler end
34. MATLA B PROGRAMLAMA Yar脹巽ap deerleri 1,2,3,4,5 i巽in k端renin hacmini (H=4/3 r 3 ) hesaplayan bir program yaz脹n脹z? while y旦ntemi: r=0; while r<5 r=r+1; hac =(4/3)*pi*r^3; disp([r, hac ]) e nd for y旦ntemi: for r=1:5 vol=(4/3)*pi*r^3; disp([r, vol]) end elemanter y旦ntem: r=1:5; vol=(4/3)*pi*r.^3; disp([r ; vol]')
35. MATLA B GRAF聴K Matlab, 2D ve 3D bata olmak 端zere 巽ok gelimi grafik ara巽lar脹 sunar: izgi (line) grafikler (plot, plot3, polar) Y端zey (surface) grafikler (surf, surfc) A (mesh) grafikler (mesh, meshc, meshgrid) Contour grafikler (contour, contourc, contourf) ubuk (bar), pasta (pie) vb 旦zel grafikler (bar, bar3, hist, rose, pie, pie3) Animasyonlar (moviein, movie vb komutlar)
36. MATLA B 2D-GRAF聴K 2D Veri Grafikleri x-y dik koordinat d端zleminde grafik 巽izmek i巽in plot(x,y) fonksiyonu kullan脹l脹r ve x vekt旦r端ne kar脹 y vekt旦r端n端n grafiini verir. Yani x deerleri x-ekseninde, y deerleri y-ekseninde yer al脹r. izimin g旦r端n端m端n端 deitirmek isterseniz plot(x,y, s) fonksiyonu kullan脹l脹r. s arg端man脹, 巽izimin rengini, iaretleyici sembol端n端 ve 巽izgi tipini belirler. Bu 端巽 arg端man脹n kullan脹m脹 istee (s脹ras脹 ve say脹s脹) bal脹d脹r. Bu ilemi grafik 端zerinde de yapabilirsiniz.
38. MATLA B 2D-GRAF聴K Tek deikenli fonksiyon ( y=f(x) ) grafikleri 1.yol: izim aral脹脹 belirlenir ve bu aral脹kta x deerleri girilir. Bu x deerlerine kar脹l脹kl y deerleri bulunur ve plot(x,y) kullan脹l脹r. 2.yol: fplot(f(x),[xmin xmax]) veya ezplot (f(x)) (Grafii varsay脹lan -2*pi < x < 2*pi aral脹脹nda 巽izer) fonksiyonlar脹 kullan脹l脹r.
39. MATLA B 2D-GRAF聴K oklu Grafikler Birden fazla grafii (ayn脹 x-ekseni baz olmak 端zere) 端st 端ste 巽izmek i巽in rnein: x,y1,y2,.yn i巽in; 1.yol: plot(x,y1,x,y2,..x,yn) 2.yol: plot(x,y1), hold on, plot(x,y2,..x,yn) oklu grafii etiketlemek i巽in: 1.yol: Grafik 端zerinde metin ekleme yap脹l脹r. 2.yol: legend(1.grafikmetin,2.grafikmetin.) fonksiyonu kullan脹l脹r. Birden fazla grafii farkl脹 pencerelerde (ayn脹 veya farkl脹 x-ekseni baz olmak 端zere) 巽izmek i巽in subplot(m,n,p) fonksiyonu kullan脹l脹r. Bu fonksiyon matris d端zeninde 巽izim alan脹 a巽ar ve grafikler yine plot fonksiyonu ile 巽izilir.
40. MATLA B 2D-GRAF聴K subplot rnei: y=e t ,z=e sint ,w=yz grafiklerini alt alta 巽iziniz. subplot(3,1,1) t = 0:0.01:50; y = exp(t); plot(t,y) legend('e^{t+1}') subplot(3,1,2) z = sin(t); plot(t,z) legend('sin(t)') subplot(3,1,3) w = y.*z; plot(t,w) legend('e^{t+1}sin(t)')
41. MATLA B 3D-GRAF聴K BOYUTLU GRAF聴KLER 巽 boyutlu (3D) grafikler, temel olarak iki boyutlu (2D) grafiklere 端巽端nc端 boyutun yani z-ekseninin eklenmesi ile elde edilir. Matlab 3D grafik konusunda 巽ok gelimi imkanlar sunar. 3D 巽izgi grafikler - 巽 boyutlu uzayda 巽izgi grafikleri 巽izer. (plot3) 3D a grafikler - 巽 boyutlu uzayda tel 巽er巽eveli y端zeyler 巽izer. (mesh, meshc, meshz, waterfall) 3D y端zey grafikler - 巽 boyutlu uzayda mesh gibi renkle doldurulmu patch 巽izer. (surf, shading, surfc, surfl, surfnorm) 3D halka grafikler - contour3, contourf, shading, clabel. 3D hacim grafikler - 巽 boyutlu veri setlerinin g旦steriminde kullan脹l脹r. Komut: slice, isosurface, smooth3, isocaps, isonormals. 3D 旦zelletirilmi grafikler - 巽 boyutlu veri setlerinin g旦steriminde kullan脹l脹r. Komut: ribbon, quiver, quiver3, fill3, stem3, sphere, cylinder.
42. MATLA B 3D-GRAF聴K 3D izgi Grafii: X = [10 20 30 40];Y = [10 20 30 40];Z = [0 230 75 600]; plot3(X,Y,Z); grid on; xlabel('x-ekseni'); ylabel('y- ekseni'); zlabel('z- ekseni'); title('c boyutlu bir dogru'); z=x 2 +y 2 ile tan脹ml脹 3D parabol grafii: x = [-10 : 1 : 10]; y = [-10 : 5 : 10]; [X, Y] = meshgrid(x,y); Z = X.^2 + Y.^2; %端巽 boyutlu parabol mesh(X,Y,Z); xlabel('x-ekseni'); ylabel('y- ekseni'); zlabel('z- ekseni');
43. MATLA B 3D-GRAF聴K t = -2*pi:pi/100:2*pi; [x,y,z] = cylinder(cos(t),20); mesh(x,y,z) axis off t = 0:pi/10:2*pi; [X,Y,Z] = cylinder(2+cos(t)); surf(X,Y,Z)
44. MATLA B-EXCEL Veri Transferi D脹 Ortam Veri 聴lemi Bir Excel (.xls) veri dosyas脹 veya .txt ya da .dat dosyas脹 Matlab ortam脹ndan okunabilir ve 端zerinde Matlab ilemleri uygulanabilir. Benzer olarak bir Matlab program 巽脹k脹脹 da .xls olarak kaydedilebilir. - Excel: degisken =xlsread(xxx.xls) - x=degisken(:,1); %1. s端tun - y=degisken(:,2); %2. s端tun - .txt veya .dat : load xxx.txt - x=xxx(:,1); %1. s端tun - y=xxx(:,2); %2. s端tun
45. MATLAB TOOLBOX MATLAB , toolbox olarak adland脹r脹lan bir 巽ok eklenti yaz脹l脹m mod端llerine sahiptir. Toolboxlar 旦zelletirilmi hesaplamalar yapar. rnek olarak: Signal Processing Image Processing Data Acquisition Curve Fitting Wavelet Control System Fuzzy Logic Neural Network 袖-Analysis and Synthesis Financial Model Predictive Control
46. MATLAB SYMBOLIC TOOLBOX Symbolik kelimesinin anlam脹: sembolik 巽脹k脹 n端merik 巽脹k脹 Matlabde sembolik ilemler yapmak i巽in sembolik deikenler syms a b x komutu ile atan脹r.
47. MATLAB SYMBOLIC TOOLBOX Sembolic 聴ntegral 聴lemi: Sembolik integral alma fonksiyonu int olup genel format脹: int(S), Sin belirsiz integralini al脹r. int(S,v), Sin vye g旦re belirsiz integralini al脹r. int(S,a,b),Sin varsay脹lan sembolik deikene g旦re adan bye kadar belirli integralini al脹r. int(S,a,b,v),Sin vye g旦re adan bye kadar belirli integralini al脹r. eklindedir. 損 syms x 損 int(-2*x^5-4*x+20) ans = -1/3*x^6-2*x^2+20*x
48. MATLAB SYMBOLIC TOOLBOX Sembolik T端rev 聴lemi: T端rev alma ileminde kullan脹lan fonksiyon ad脹 diff olup sembolik ilem mant脹脹 巽er巽evesinde genel format脹: diff(S), S in t端revini al脹r. diff(S,v), S in v ye g旦re t端revini al脹r. diff(S,n), n pozitif bir tamsay脹 olmak 端zere n. dereceden t端revini al脹r. diff(S,'v',n) veya diff(S,n,'v'), S in v ye g旦re n. dereceden t端revini al脹r. eklindedir. T端revin x=pdeki deerini bulmak i巽in 損 subs(turev,x,p) f(x)=5x 3 +ax 2 +bx -14 (a ve b sabit deerdir) fonksiyonunun t端revini bulunuz. 損 syms a b c x 損 f=5*x^3+a*x^2+b*x-14; 損 diff(f) ans = 15*x^2+2*a*x+b
49. MATLAB SYMBOLIC TOOLBOX Denklem Sistemlerinin 旦z端m端: solve fonksiyonu, cebirsel denklemlerin sembolik 巽旦z端m端n端 verir. Genel format脹: solve('denk1','denk2',...,'denkN') eklindedir. f(x)=x 2 -x-6 fonksiyonun 巽旦z端m k端mesini bulunuz. >> solve('x^2-x-6') veya >> syms x, solve(x^2-x-6) ans = [ -2] [ 3] Yani ={-2,3} bulunur.
50. MATLAB SYMBOLIC TOOLBOX x 2 +xy+y=3 x 2 -4x+3=0 denklem sisteminin 巽旦z端m k端mesini bulunuz. 損 [x,y] = solve('x^2 + x*y + y = 3','x^2 - 4*x + 3 = 0') x = [ 1] [ 3] y = [ 1] [ -3/2] ={ (1,1) , (3,-3/2) }
52. MATLAB SYMBOLIC TOOLBOX cosx fonksiyonunu 9. terime kadar Taylor serisine a巽脹n脹z. 損 f=cos(x) 損 T=taylor(f,9) T = 1-1/2*x^2+1/24*x^4-1/720*x^6+1/40320*x^8 serisinin ilk 10 terim toplam脹n脹 bulunuz. 損 seri_top=symsum(1/k^2,1,10) seri_top = 1968329/1270080 eklinde Laplace format脹nda verilen transfer fonksiyonun t-domeni kar脹l脹脹n脹 bulunuz. 損 T = 200/((s+10)*(s^2 + 4*s + 24)); 損 t_domen = ilaplace(T); 損 pretty(t_domen) 50 exp(-10t) - 50 exp(-2t)cos(2 51/2 t) + 40 exp(-2t)51/2 sin(2 51/2 t) 21 21 21
53. MATLAB GUI Graphical User Interface (Grafik Kullan脹c脹 Aray端z端) Visual-C veya Basic gibi g旦rsel programlama dilleri gibi GUI ile de g旦rsel ama巽l脹 (D端meler, Yaz脹 Alanlar脹, Men端ler ile) programlar yaz脹rlayabilirsiniz. GUIde hem Figure penceresi (.fig) hem de m-dosya (.m) programlamas脹 vard脹r. Komut sat脹r脹na guide yazarak GUI edit旦r端n端 a巽abilirsiniz. Grafik ilemleri i巽in gelitirilmi GUI aray端z端 >>funtool d脹r
54. MATLAB S聴MUL聴NK En geni kapsam脹 ile benzetim (Simulation), ger巽ein temsil edilmesi demektir. G端n端m端zde iletmelerin t端m ihtiya巽 ve faaliyet alanlar脹nda kullan脹lan benzetim teknii; bilgisayar kullan脹m脹n脹 gerekli k脹lan matematiksel bir model arac脹l脹脹 ile ger巽ek bir sistemin temsil edilmesini salayan bir tekniktir. Komut sat脹r脹na simulink yazarak ya da ara巽 巽ubuundan t脹klayarak a巽abilirsiniz.
55. MATLAB S聴MUL聴NK Denklem Modelleme : Santigrat dereceden fahrenhayta d旦n端端m yapan bir denklemin modellenmesi Modeli kurmak i巽in belirtilen bloklar脹 alarak aa脹daki modeli kurulur : Sources library Ramp block Math library Gain ve Sum block Sinks library Scope ve Display block
56. MATLAB S聴MUL聴NK S端rekli Sistem Modellemesi: Fiziksel bir sistemin dinamik modellemesi Burada x ve u, zaman脹n fonksiyonlar脹d脹r. u(t) , genlii= 1; frekans脹=1 radian/sec olan bir kara dalgad脹r. Zaman domeninde sistemin modeli ve cevab脹 aa脹da g旦sterilmitir.