Post on 08-Apr-2018
8/7/2019 Matlab Giris
1/29
MATLABTemel Seviye
Semineri
Yrd.Do.Dr. Aslan NAN(Elektrik Mhendislii Blm)
E-posta: inan@yildiz.edu.tr
Web: www.yildiz.edu.tr/~inan
Matlab Semineri-2005 2
MATLAB TANITIM
MATLAB NEDR?MATLAB(MATrix LABoratory Matris Laboratuar), temel olarak
teknik ve bilimsel hesaplamalar iin yazlm yksek performansasahip bir yazlmdr. 1970lerin sonunda Cleve Moler tarafndan yazlanMatlab programnn tipik kullanm alanlar: Matematiksel (nmerik ve sembolik) hesaplama ilemleri Algoritma gelitirme ve kod yazma yani programlama Lineer cebir,istatistik,Fourier analizi,filtreleme,optimizasyon,saysal
integrasyon vb. konularda matematik fonksiyonlar
2D ve 3D grafiklerinin izimi Modelleme ve simlasyon (benzetim) Grafiksel arayz oluturma Veri analizi ve kontrol Gerek dnya artlarnda uygulama gelitirmeeklinde zetlenebilir.
http://tr.wikipedia.org/wiki/Fourier_analizi8/7/2019 Matlab Giris
2/29
Matlab Semineri-2005 3
MATLAB TANITIM
- Matlab, ABD meneli The Mathworks Inc. Natick,MA irketinin tescilli addr. Web adresi: http://www.mathworks.com
- Matlabin Trkiye temsilcisi Bursa merkezli Figes firmasdr. 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
Matlab Semineri-2005 4
MATLAB TANITIM
MATLAB, matematik-istatistik, optimizasyon, neuralnetwork, fuzzy, iaret ve grnt ileme, kontroltasarmlar, yneylem almalar, tbbi aratrmalar,finans ve uzay aratrmalar gibi ok eitli alanlardakullanlmaktadr. MATLAB, kullancya hzl bir analiz vetasarm ortam salar.
Matlab programn C/C++ diline dntrebilir,
20. dereceden bir denklemin kklerini bulabilir, 100x100 boyutlu bir matrisin tersini alabilir, Bir elektrik motorunu gerek zamanda kontrol edebilir, Bir otobsn sspansiyon simlasyonunu yapabilirsiniz,
..
8/7/2019 Matlab Giris
3/29
Matlab Semineri-2005 5
MATLAB TANITIM
Matlab, aratrma ve mhendislik alanlarnda karlalanproblemlere pratik ve hzl sonular sunmaktadr.
Bu nedenle Matlab, tm dnyada binlerce endstri, devletve akademik kurumlarda kullanlmaktadr. zellikle tmniversitelerde yaygn olarak kullanlmaktadr.
Matlab kullanc irketler arasnda Dnyada Boeing, DaimlerChrsyler, Motorola, NASA, Texas
Instruments, Toyota ve Saab vb,
lkemizde ise Aselsan, Tofa, Arelik, Siemens, Alcatel, Garanti
Bankas, Deniz Kuvvetleri, vb..irketler verilebilir.
Matlab Semineri-2005 6
MATLAB TANITIM
Matlab ve eitli disiplinlerde kullanm zerine tm dillerde yzlerce kitap yazlmtr.
1. MATLAB ve PROGRAMLAMA, Dr. Aslan NAN, Papatya Yaynclk, 2004.2. Matlab 7.04 Simulink ve Mhendislik Uygulamalar, Alfa Yaynlar, Uur Arifolu, 2005.3. Matlab le Risk Ynetimi, Trkmen Kitapevi, Yrd. Do. Dr. Uzunolu M./ alar Onar/ Ali Kzl/
Turgay Geer/ A. Kvan Eren, 2005.4. Matlab ve Simulink'le Modelleme / Kontrol I , Derleyen: Zafer Bingl, Birsen Yaynevi, 2005,5. Matlab ile Matematiksel Uygulamalar ve Mhendislik Uygulamalar, Mithat Uysal, Beta, 2004.6. Mhendislik ve Fen Uygulamalaryla Matlab, mer Gndodu - Osman Kopmaz - M. Akif Ceviz,
Paradigma Akademi,2003.7. Her Yn ile MATLAB, Yrd. Do. Dr. Mehmet Uzunolu,mer alar Onar,Ali Kzl, Trkmen
Kitapevi, 2003.8. MATLAB 6.x GUI: Kullanc Arayz Tasarm, Niyazi Ari & Bilal Barkana,Osman Gazi niv.
Basmevi, 2003.9. MATLAB Klavuzu, Niyazi Ari & Bilal Barkana, Osman Gazi niv. Basmevi, 2003.10. MATLAB 6.5, A. Emre etin, Alfa Yaynlar, 2003.11. renciler iin MATLAB, Doan brahim, Bileim Yaynclk,2000.12. Her Ynyle Enstrmantasyon ve lme (LabVIEW ve MATLAB ile,Cihan Gerek,Aydn Bodur,
Gkhan Diner, Era Bilgi Sistemleri Yaynclk, 2001.13. MATLAB ile Mhendislik Sistemlerinin Analizi ve zm, brahim Yksel, VPA , 2000.14. Lineer Cebir ve Matlab Uygulamalar, S.Aynur Uysal ve Mithat Uysal, Beta, 2000.
8/7/2019 Matlab Giris
4/29
Matlab Semineri-2005 7
MATLAB TANITIM
Matlab program altnda kullanacamz temelaralar:- Komut Penceresi
- Programlama (M-file *.m)
- Grafik (Figure *.fig)
- Grafik Arayzl Programlar (GUI *.fig)- Simulink (Model *.mdl) ve Blockset Modlleri- Toolbox (Ara Kutusu) Modlleri (Fuzzy, Neural,Statistic vb.)- Microsoft Excel Matlab
- Matlab Web-Server
- xPC Target ve xPC Target Embedded
- Stateflow, Real-Time Workshop, Real-Time Windows Target
Matlab Semineri-2005 8
MATLAB TANITIM
Matlab program lisansl bir yazlmdr bu nedenlecretli olarak satn alnmaldr.Bir okstnlklerine ve yaygn kullanm alanlarnaoranla iki dezavantaj vardr:
- Yava alr.
- Fiyat dier edeerlerine gre pahaldr.(rnein ana program 781dr ve her bir modlve toolboxn da ayrca bir fiyat vardr)(http://www.figes.com.tr/tr/urunler/matlab/files/MATLAB_Akademik_Fiyat_Listesi.pdf)
http://www.figes.com.tr/tr/urunler/matlab/files/MATLAB_Akademik_Fiyat_Listesi.pdfhttp://www.figes.com.tr/tr/urunler/matlab/files/MATLAB_Akademik_Fiyat_Listesi.pdf8/7/2019 Matlab Giris
5/29
Matlab Semineri-2005 9
MATLAB TEMEL KULLANIM
Matlab Kullanmnda Temel Kurallar: Programn dili ve yardm bilgileri tamamen
ingilizcedir.
Komut temelli yazlmdr.
Kk-byk harf ayrm vardr. tot ve Tot farklalglanr.
iareti komut promptudur.
Komutlar Enterile yrtlr.
Matlab Semineri-2005 10
MATLAB TEMEL KULLANIM
FADELER : Matematiksel ve metinsel gsterimler ile ilemler ifadelerle salanr. Saylar (Numbers) Deikenler (Variables) leler (Operators) Fonksiyonlar (Functions)
Matlabde ifadeler genellikle deiken = ifade veya sadece ifade formundadr.
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.
8/7/2019 Matlab Giris
6/29
Matlab Semineri-2005 11
MATLAB TEMEL KULLANIM
Bir ifadenin sonuna ; iareti eklediinizde ekranayazlmaz.
Birden fazla ifade tek satrda aralarna , ya da ;koyarak yazlabilir. Yazmda boluk saysetkisizdir.
Sadece ilgili deiken adn yazarak o deikeni
arabilirsiniz.
Matlab Semineri-2005 12
MATLAB TEMEL KULLANIM
SAYILAR
Ondalk saylar Trkemizdeki 3,5 yerine 3.5 eklindegsterilir(0.0001 veya 9.63 / 0.65 yerine .65).
Bilimsel notasyon gsterimi olan e (veya E) harfi 10nunkuvvetini temsil eder.
2e4=2.104=2000 veya 1.65e-20=1.65.10-20 demektir.
Kompleks saylarda imajiner(sanal) ksmlari veya j ekinialr. i veya j ile gosterimlerinde bir fark yoktur.(1+3i veya 1+3*i veya 1+i*3 ama 1+i3) / 1+sqrt(3)*j / -5i
Matlabde tm saylar, yaklak 2.10308 ve 2.10-308
arasnda deiir.
8/7/2019 Matlab Giris
7/29
Matlab Semineri-2005 13
MATLAB TEMEL KULLANIM
Say Format Bir ilem sonucu varsaylan (default) olarak 4
ondalk ile gsterilir. Say gsteriminde hane says format fonksiyonu
ile deitirilir. >> format xxx format veya format short : 5 rakaml (4 ondalk) format long: 15 rakaml (14 ondalk) format bank: ki ondalkl say format rat: Ondalk saylar rasyonel say olarak
gsterir.
Matlab Semineri-2005 14
MATLAB TEMEL KULLANIM
DEKENLER Deikenler, ifadelerin adlarn tayan belirtelerdir. Deikenlerin sol taraflarnda = iareti bulunur. Deiken adlar, bir harf ile balamal ve onu takiben
herhangi sayda harfler, rakamlar veya altizgiden ( _ )oluabilir.
Deiken adlar maksimum 63 karakter uzunluunda
olabilir. Deiken ad, 63 karakteri getiinde ilk 63karakterlik ksm ad olarak kabul eder. Deiken adlarnda kk veya byk Trke
karakterlerini kullanmaynz. Kk-byk harf duyarldr: x ve X veya bor ve BOR,
farkl deiken adlardr.
8/7/2019 Matlab Giris
8/29
Matlab Semineri-2005 15
MATLAB TEMEL KULLANIM
Deiken lemleri Bir deikeni silmek iin Clear deikenad
komutunu kullannz. alma dzleminden (workspace) tm
deikenleri silmek iin Clear komutunukullannz. Clear komutu bellekteki tmdeikenleri siler.
who komutu ile sadece deiken adlarnz;
whos komutu ile de deikenlerinizin zelliklerinigrebilirsiniz.
Matlab Semineri-2005 16
MATLAB TEMEL KULLANIM
Deikenler, skaler, vektr, matris veya metin(string) olabilir.
Deiken rnekleri:
- a=1; b=-3.2e3; ct=22/5;
- metin=Alp Karadeniz;
- vektr=[1 2 3];
- matris=[1 2 3;-1 0 1];
- hucre={1 2 ; buyuk kucuk};
8/7/2019 Matlab Giris
9/29
Matlab Semineri-2005 17
MATLAB TEMEL KULLANIM
LELER: lem yapmay salayan sembollerdir. + - * / \ ^ (s alma, ab) : 2^3 (Tek trnak aras) : Ali (Metin girilerinde kullanlr) : Transpoze ( ) : 2*(3-4) (lem srasn belirler) ( ) : sin(x) [ ] : Dizi gsteriminde kullanlr. = : x=3 == : x==K
? : Programn ileyiini etkilemeyen aklama satrlarn gsterir. ! : DOS moduna geer. Aritmetik ilemlerde, ile ncelik sras (precision) vardr.
Matlab Semineri-2005 18
MATLAB TEMEL KULLANIM
FONKSYONLAR Fonksiyonlar - built-in (yerleik): abs(mutlak deer), sqrt(karekk), mak(maksimum), sin(sinus) - m-file eklinde: sinh, gamma, factorial - user-defined (kullanc tanml) olmak zere e ayrlr.
Fonksiyon adlar da kk-byk harf duyarldr. rnein sin yerineSin veya SIN eklinde fonksiyon adnn kullanm hata verir.
Tm fonksiyon ilemleri parantezler () arasnda yaplr. rnein, sin30 deil sin(30) gibi. >> help elfun veya >> help specfun veya >> help elmat komutlar ile tm temel fonksiyonlar grebilirsiniz.
8/7/2019 Matlab Giris
10/29 1
Matlab Semineri-2005 19
MATLAB DZLER
DZLER Dizi, en genel matematiksel tanm ile nmerik ve
metinsel deerler topluluudur. Matlabde hereybir dizi olarak ileme konur ve en temel verielemandr. Reel ile kompleks saylar ifade eden iftkat veya
nmerik diziler (double veya numeric array)
Metin ifade eden diziler (char array)
Hcre diziler (cell veya struct array)
Matlab Semineri-2005 20
MATLAB DZLER
Bir nmerik dizi, skaler, vektr veya matris olabilirve tm nmerik dizilerdouble arrayformatndadr.
1x1 dizisi, bir skaler (scaler) gsterir. (a=3,b=-6.5) mx1 veya 1xn dizisi, bir vektr (vector) gsterir. mxn veya nxm dizisi,bir matris (matrix) gsterir.
Bu erevede 1x1 dizisi sabit matris veya tekelemanl matris, nx1dizisi stun matrisi ve 1xndizisi ise satr matrisi olarak da dnlebilir.
Bir dizinin eleman says, satr ile stun saysnnarpmdr.
8/7/2019 Matlab Giris
11/29
Matlab Semineri-2005 21
MATLAB DZLER
1 23 45 6
A= 3x2 matrix 6 eleman
b=[1 2 3 4] 1x4 array 4 eleman, satrvektr
c=
135
3x1 array 3 eleman, stun vetr
A(2,1)=3 b(3)=3 c(2)=3
Satr # Stun #
Matlab Semineri-2005 22
MATLAB DZLER
Vektrler1xn veya mx1 eklinde tek boyutlu dizi olan vektrlerioluturmann iki temel yolu vardr:
i) Direkt olarak ( [] ile)
satr vektrleri: >> f = [f1 f2 f3 ... fn] / >> f = [f1, f2, f3, ..., fn]
stun vektrleri: >> f = [f1; f2; f3; ...; fn]
ii) Eit aralkl elemanlar kullanarak (: ile)
f = lkDeer : DeiimMiktar : SonDeer
Deiim miktar belirtilmezse lkDegerden sonra 1er er artmolacan ifade eder.
8/7/2019 Matlab Giris
12/29 1
Matlab Semineri-2005 23
MATLAB DZLER
Matrisler
Matrisleri oluturmann en temel yolu [] kullanmaktr.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]
mxnmn
2n
1n
m2
22
12
m1
21
11
F
...
...
F
F
.
.
.
....
....
F
.
.
F
F
F
...
...
F
F
F
mxnmn
2n
1n
m2
22
12
m1
21
11
F
...
...
F
F
.
.
.
....
....
F
.
.
F
F
F
...
...
F
F
F
Matlab Semineri-2005 24
MATLAB DZLERHem vektrler hem de matrislerUtility 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))
8/7/2019 Matlab Giris
13/29 1
Matlab Semineri-2005 25
MATLAB DZLER
Dizilere fonksiyonlar uygulama: length(kd): kd dizisinin eleman saysn yani uzunluu size(kd): kd dizisinin boyutu sum(kd): kd vektrnn eleman toplam sum(A): A matrisinin stun bana eleman toplam
kd(n): kd dizisinin n. eleman deeri A(n,:): A matrisinin sadece n. satr A(:,n): A matrisinin sadece n. stunu 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 zvektrleri ve zdeerleri Elemanter ilemler eleman elaman ilem demektir ve . leci kullanlr:
arpma: .* , Blme: ./ , s alma: .^
Matlab Semineri-2005 26
MATLAB PROGRAMLAMA
Bilgisayar programlamasnda genel olarak belirli kalp vekurallara uyulur. Bir bilgisayar yazlmnn oluturulmasndagenel olarak aada sralanan prosedre uyulur:
Problemin tanm (Ne-Niin)
zm ynteminin ve admlarnn belirlenmesi (algoritma: akemalar veya pseudo-kod)
Kodlama (Programlama diline evirme)
Snama (Program altrma)
Belgeleme ve Gncelletirme
8/7/2019 Matlab Giris
14/29 1
Matlab Semineri-2005 27
MATLAB PROGRAMLAMA
Matlabde programlama en genel olarak iki yolla yaplr:- Komut satrnda (in-line) programlama
- m-dosyalaryla (m-files) programlama
m-dosyalarnn da iki tr vardr:
- Dzyaz (script) m-dosyalar
- Fonksiyon (function) m-dosyalar
m dosyalar oluturabilmek iin bir metin editrne ihtiyavardr. Bu editr Matlabde Editor/Debuggerortamdr.
Matlab Semineri-2005 28
MATLAB PROGRAMLAMA
Bir program genelde aamadan oluur:- Giri Deikenleri / lemler / k Gsterimi(k iin genelde disp ve fprintf fonksiyonlar kullanlr.)
Boluk verme:- disp (' ') veya fprintf (' \n ')
Metinsel k:- disp ('metin') veya fprintf ('metin)
Metinle beraber nmerik deiken k:- disp (['metin ' num2str(degisken) ])
- fprintf ('metin %a.bX \n,degisken)Burada;
a: saynn (en az) toplam hane saysn,b: saynn (en fazla) ondalk hane saysnX: saynn formatn gsterir.d: tamsay, f: kayan nokta, e: stel, g: en ksa form
8/7/2019 Matlab Giris
15/29 1
Matlab Semineri-2005 29
MATLAB PROGRAMLAMA
Fonksiyonlarn genel yazm formatfunction [out1,out2,... ,outN] = fonksiyon_ad (in1,in2,...,inM)
eklindedir. nemli kural vardr: function ile balamaldr.
Fonksiyon ad ile dosya ad ayn olmaldr.
Deiken klar ekrana yazdrlmamaldr.
rnein:
function [Anapara,faiz] = kredi(P,oran,sre)
function P = fm_mod(V,T) function coklugraf(x,y,n)
Matlab Semineri-2005 30
MATLAB PROGRAMLAMA
m-dosyalarn listeleme what komutu: Geerli dizindeki yani varsaylan alma klasrndeki
tm dosyalar listeler.
dir komutu: Geerli dizindeki sizin tanmladnz dosyalar listeler.
lookfor komutu: Bulmak istediiniz bir anahtar kelimenin getii m-dosyalarn listeler.
m-dosyalarn grntleme ve dzenleme type m-dosya_ad komutu: m-dosyas komut penceresi ortamnda
grntlenir. zerinde herhangi bir dzenleme yaplamaz.
edit m-dosya_ad komutu: m-dosyas editr penceresi ekranndagrntlenir. zerinde her trl dzenleme ilemi yapabilir ve yeni haliile kaydedilir.
8/7/2019 Matlab Giris
16/29 1
Matlab Semineri-2005 31
MATLAB PROGRAMLAMA
leler e ayrlr: Aritmetik, ilikisel ve mantksallikisel leler: < Kktr
Byktr
>= Byk eittir
== Eittir
~= Eit deildir
Mantksal leler:
~ NOT (deil) & AND (ve)
| OR (veya)
Matlab Semineri-2005 32
MATLAB PROGRAMLAMA
ART DEYMLER (CONDITIONAL STATEMENTS)
if (eer)(1 art)
if mantksal ifade
deyim
end
else (baka)(2 art)
if mantksal ifade
deyim 1
else
deyim 2
end
elseif (eerbaka)(n art)
if mantksal ifade 1
deyim 1
elseif mantksal ifade 2
deyim 2
elseif mantksal ifade n-1
deyim n-1
else
deyim n
end
8/7/2019 Matlab Giris
17/29 1
Matlab Semineri-2005 33
MATLAB PROGRAMLAMA
DNGLER (LOOPS) for DngsBir for (iin) dngnn genel format
for dngdeikeni=ifadedeyimler
end
while DngsBir while (sresince veya iken) dngsnn genel format
while ifadedeyimler
end
Matlab Semineri-2005 34
MATLAB PROGRAMLAMA
Yarap deerleri 1,2,3,4,5 iin krenin hacmini (H=4/3 r3)
hesaplayan bir program yaznz?
elemanter yntem:
r=1:5;
vol=(4/3)*pi*r.^3;disp([r ; vol]')
for yntemi:
for r=1:5
vol=(4/3)*pi*r^3;disp([r, vol])
end
while yntemi:
r=0;
while r
8/7/2019 Matlab Giris
18/29 1
Matlab Semineri-2005 35
MATLAB GRAFK
Matlab, 2D ve 3D bata olmak zere ok gelimi grafikaralar sunar:
izgi (line) grafikler(plot, plot3, polar) Yzey (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)
Matlab Semineri-2005 36
MATLAB 2D-GRAFK
2D Veri Grafikleri
x-y dik koordinat dzleminde grafik izmek iin plot(x,y)
fonksiyonu kullanlr ve x vektrne kar y vektrnn grafiini verir.Yani x deerleri x-ekseninde, y deerleri y-ekseninde yer alr.
izimin grnmn deitirmek isterseniz plot(x,y,s)
fonksiyonu kullanlr. s argman, izimin rengini, iaretleyici sembolnve izgi tipini belirler. Bu argmann kullanm istee (sras ve says)baldr. Bu ilemi grafik zerinde de yapabilirsiniz.
8/7/2019 Matlab Giris
19/29 1
Matlab Semineri-2005 37
MATLAB 2D-GRAFK
Line style (Cizgi tipi) Indicator
Solid (Duz cizgi) -
Dashed (Kesikli cizgi) --
Dotted (Noktali cizgi) :
Dash-dot (Kesikli-niktalicizgi) -.
Marker symbol (Isaretleyici sembolu) Indicator
Point (Nokta) .
Plus (Arti) +
Star (Yildiz) *
Circle (Daire) o
x-mark (x isareti) x
Square (Kare) s
Diamond (Elmas) d
triangle (down) (Asagi bakan ucgen) v
triangle (up) (Yukari bakan ucgen) ^
triangle (left) (Sola bakan ucgen)
Pentagram (Besgen) p
Hexagram (Altigen) h
Color (Renk) Indicator
Blue (Mavi) b
Green (Yesil) g
Red (Kirmizi) r
Cyan (Turkuaz) c
Magenta (Mor) m
Yellow (sari) y
Black (Siyah) k
White (Beyaz) w
Matlab Semineri-2005 38
MATLAB 2D-GRAFK
Tek deikenli fonksiyon ( y=f(x) ) grafikleri
1.yol: izim aral belirlenir ve bu aralkta x deerleri girilir. Bu xdeerlerine karlkl y deerleri bulunur ve plot(x,y) kullanlr.
2.yol:
fplot(f(x),[xmin xmax])
veya
ezplot (f(x)) (Grafii varsaylan -2*pi < x < 2*pi aralnda izer)
fonksiyonlar kullanlr.
8/7/2019 Matlab Giris
20/29 2
Matlab Semineri-2005 39
MATLAB 2D-GRAFK
oklu Grafikler Birden fazla grafii (ayn x-ekseni baz olmak zere) st ste izmek iinrnein: x,y1,y2,.yn iin;
1.yol: plot(x,y1,x,y2,..x,yn)
2.yol: plot(x,y1), hold on, plot(x,y2,..x,yn)
oklu grafii etiketlemek iin:1.yol: Grafik zerinde metin ekleme yaplr.2.yol: legend(1.grafikmetin,2.grafikmetin.) fonksiyonu kullanlr.
Birden fazla grafii farkl pencerelerde (ayn veya farkl x-ekseni baz olmakzere) izmek iin
subplot(m,n,p)
fonksiyonu kullanlr. Bu fonksiyon matris dzeninde izim alan aar ve grafikleryine plot fonksiyonu ile izilir.
Matlab Semineri-2005 40
MATLAB 2D-GRAFKsubplot rnei: y=et,z=esint,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)')
8/7/2019 Matlab Giris
21/29 2
Matlab Semineri-2005 41
MATLAB 3D-GRAFK
BOYUTLU GRAFKLER boyutlu (3D) grafikler, temel olarak iki boyutlu (2D) grafiklerenc boyutun yani z-ekseninin eklenmesi ile elde edilir. Matlab 3Dgrafik konusunda ok gelimi imkanlar sunar. 3D izgi grafikler- boyutlu uzayda izgi grafikleri izer. (plot3) 3D a grafikler- boyutlu uzayda tel ereveli yzeyler izer.
(mesh, meshc, meshz, waterfall)
3D yzey grafikler- boyutlu uzayda mesh gibi renkle doldurulmupatch izer. (surf, shading, surfc, surfl, surfnorm)
3D halka grafikler - contour3, contourf, shading, clabel. 3D hacim grafikler - boyutlu veri setlerinin gsteriminde kullanlr.
Komut: slice, isosurface, smooth3, isocaps, isonormals.
3D zelletirilmi grafikler- boyutlu veri setlerinin gsterimindekullanlr. Komut: ribbon, quiver, quiver3, fill3, stem3, sphere, cylinder.
Matlab Semineri-2005 42
MATLAB 3D-GRAFK 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=x2+y2 ile tanml 3D parabol grafii:x = [-10 : 1 : 10];y = [-10 : 5 : 10];[X, Y] = meshgrid(x,y);
Z = X.^2 + Y.^2; % boyutlu parabolmesh(X,Y,Z);
xlabel('x-ekseni'); ylabel('y- ekseni'); zlabel('z- ekseni');
8/7/2019 Matlab Giris
22/29 2
Matlab Semineri-2005 43
MATLAB 3D-GRAFK
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)
Matlab Semineri-2005 44
MATLAB-EXCEL Veri Transferi
D Ortam Veri lemi Bir Excel (.xls) veri dosyas veya .txt ya da .dat dosyas Matlab
ortamndan okunabilir ve zerinde Matlab ilemleri uygulanabilir. Benzerolarak bir Matlab program k da .xls olarak kaydedilebilir.
- Excel: degisken =xlsread(xxx.xls)
- x=degisken(:,1); %1. stun
- y=degisken(:,2); %2. stun
- .txt veya .dat : load xxx.txt
- x=xxx(:,1); %1. stun
- y=xxx(:,2); %2. stun
8/7/2019 Matlab Giris
23/29 2
Matlab Semineri-2005 45
MATLAB TOOLBOX
MATLAB
, toolbox olarak adlandrlan bir ok eklenti yazlmmodllerine sahiptir. Toolboxlar zelletirilmi hesaplamalaryapar. rnek olarak: Signal Processing Image Processing Data Acquisition Curve Fitting Wavelet Control System Fuzzy Logic Neural Network -Analysis and Synthesis
Financial Model Predictive Control
Matlab Semineri-2005 46
MATLAB SYMBOLIC TOOLBOX
Symbolik kelimesinin anlam:
3
32 xdxx
3
32 xdxx
3
32 xdxx
3
1
3
1
0
31
0
2 xdxx
sembolik
k
nmerik k
Matlabde sembolik ilemler yapmak iin sembolik deikenlersyms a b x
komutu ile atanr.
8/7/2019 Matlab Giris
24/29 2
Matlab Semineri-2005 47
MATLAB SYMBOLIC TOOLBOX
Sembolic ntegral lemi: Sembolik integral alma fonksiyonu int olup genel format: int(S), Sin belirsiz integralini alr. int(S,v), Sin vye gre belirsiz integralini alr. int(S,a,b),Sin varsaylan sembolik deikene gre adan bye
kadar belirli integralini alr. int(S,a,b,v),Sin vye gre adan bye kadar belirli integralini alr.
eklindedir.
syms x int(-2*x^5-4*x+20)ans =
-1/3*x^6-2*x^2+20*x
dxxx )2042( 5
Matlab Semineri-2005 48
MATLAB SYMBOLIC TOOLBOX
Sembolik Trev lemi: Trev alma ileminde kullanlan fonksiyon ad diff olup sembolik ilem mant
erevesinde genel format: diff(S), Sin trevini alr. diff(S,v), Sin vye gre trevini alr. diff(S,n), npozitif bir tamsay olmak zere n. dereceden trevini alr. diff(S,'v',n) veya diff(S,n,'v'), Sin vye gre n. dereceden trevini alr.
eklindedir. Trevin x=pdeki deerini bulmak iin subs(turev,x,p)
f(x)=5x3+ax2+bx -14 (a ve b sabit deerdir) fonksiyonunun trevini 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
8/7/2019 Matlab Giris
25/29 2
Matlab Semineri-2005 49
MATLAB SYMBOLIC TOOLBOX
Denklem Sistemlerinin zm: solvefonksiyonu, cebirsel denklemlerin sembolik zmn verir. Genel
format:
solve('denk1','denk2',...,'denkN')
eklindedir.
f(x)=x2-x-6 fonksiyonun zm kmesini bulunuz.
>> solve('x^2-x-6') veya >> syms x, solve(x^2-x-6)
ans =
[ -2]
[ 3]
Yani ={-2,3} bulunur.
Matlab Semineri-2005 50
MATLAB SYMBOLIC TOOLBOX
x2+xy+y=3
x2-4x+3=0
denklem sisteminin zm kmesini 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) }
8/7/2019 Matlab Giris
26/29 2
Matlab Semineri-2005 51
MATLAB SYMBOLIC TOOLBOX
Diferansiyel Denklem zm diferansiyel denklemini znz.
dsolve('Dy=1+y^2')ans =
tan(t+C1)
y(0)=0, y'(0)=0 artlar altnda y''+6y'+13y=10sin5t ikinci derecedendiferansiyel denklemin zmn bulunuz. Q=dsolve('D2y+6*Dy+13*y=10*sin(5*t)','y(0)=0','Dy(0)=0','t') pretty(simple(Q))
25 10 25 125
- -- cos(5t) - -- sin(5t) + -- exp(-3t)cos(2 t) + --- exp(-3t)sin(2t)
87 87 87 174
2+1= y
dt
dy
2+1= y
dt
dy
Matlab Semineri-2005 52
MATLAB SYMBOLIC TOOLBOX
cosx fonksiyonunu 9. terime kadar Taylor serisine anz. 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 toplamn bulunuz.
seri_top=symsum(1/k^2,1,10)
seri_top =1968329/1270080
eklinde Laplace formatnda verilen transfer fonksiyonun t-domeni karln bulunuz.
T = 200/((s+10)*(s^2 + 4*s + 24)); t_domen = ilaplace(T); pretty(t_domen)
50exp(-10t) - 50exp(-2t)cos(2 51/2 t) + 40exp(-2t)51/2 sin(2 51/2 t) 21 21 21
)ss)(s(
)s(T24+4+10+
200=
2
2222
1...
4
1
3
1
2
11
n
8/7/2019 Matlab Giris
27/29 2
Matlab Semineri-2005 53
MATLAB GUI
Graphical User Interface (Grafik Kullanc Arayz) Visual-C veya Basic gibi grsel programlama dilleri gibi GUI
ile de grsel amal (Dmeler, Yaz Alanlar, Menler ile)programlar yazrlayabilirsiniz.
GUIde hem Figure penceresi (.fig) hem de m-dosya (.m)programlamas vardr.
Komut satrna guide yazarak GUI editrn aabilirsiniz.
Grafik ilemleri iin gelitirilmi GUI arayz >>funtool dr
Matlab Semineri-2005 54
MATLAB SMULNK
En geni kapsam ile benzetim (Simulation), gerein temsiledilmesi demektir. Gnmzde iletmelerin tm ihtiya vefaaliyet alanlarnda kullanlan benzetim teknii; bilgisayarkullanmn gerekli klan matematiksel bir model aracl ilegerek bir sistemin temsil edilmesini salayan bir tekniktir.
Komut satrna simulink yazarak ya da ara ubuundan
tklayarak aabilirsiniz.
8/7/2019 Matlab Giris
28/29 2
Matlab Semineri-2005 55
Denklem Modelleme: Santigrat dereceden
fahrenhayta dnm yapan bir denkleminmodellenmesi
Modeli kurmak iin belirtilen bloklar alarak aadaki modeli kurulur:1.Sources library Ramp block
2.Math library Gain ve Sum block
3.Sinks library Scope ve Display block
MATLAB SMULNK
Matlab Semineri-2005 56
MATLAB SMULNKSrekli Sistem Modellemesi:Fiziksel bir sistemin dinamik modellemesi
Burada x ve u, zamann fonksiyonlardr.u(t) , genlii= 1;frekans=1 radian/sec olan bir kara dalgadr. Zamandomeninde sistemin modeli ve cevab aadagsterilmitir.
8/7/2019 Matlab Giris
29/29
Matlab Semineri-2005 57
MATLAB GUI+SMULNK