MATLAB Seminer2005

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 57

MATLAB

Temel 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 performansa
sahip bir yazlmdr. 1970lerin sonunda Cleve Moler tarafndan yazlan
Matlab 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 gelitirme
eklinde zetlenebilir.
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, neural
network, fuzzy, iaret ve grnt ileme, kontrol
tasarmlar, yneylem almalar, tbbi aratrmalar,
finans ve uzay aratrmalar gibi ok eitli alanlarda
kullanlmaktadr. MATLAB, kullancya hzl bir analiz ve
tasarm 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,
..
Matlab Semineri-2005 5
MATLAB TANITIM
Matlab, aratrma ve mhendislik alanlarnda karlalan
problemlere pratik ve hzl sonular sunmaktadr.
Bu nedenle Matlab, tm dnyada binlerce endstri, devlet
ve akademik kurumlarda kullanlmaktadr. zellikle tm
niversitelerde 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.
Matlab Semineri-2005 7
MATLAB TANITIM
Matlab program altnda kullanacamz temel
aralar:
- 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 ExcelMatlab
- 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 nedenle
cretli olarak satn alnmaldr.Bir ok
stnlklerine ve yaygn kullanm alanlarna
oranla iki dezavantaj vardr:
- Yava alr.
- Fiyat dier edeerlerine gre pahaldr.
(rnein ana program 781dr ve her bir modl
ve toolboxn da ayrca bir fiyat vardr)
(http://www.figes.com.tr/tr/urunler/matlab/files/MATLAB_Akademik_Fiyat_Listesi.pdf)

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 farkl
alglanr.
iareti komut promptudur.
Komutlar Enter ile 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.
Matlab Semineri-2005 11
MATLAB TEMEL KULLANIM

Bir ifadenin sonuna ; iareti eklediinizde ekrana
yazlmaz.
Birden fazla ifade tek satrda aralarna , ya da ;
koyarak yazlabilir. Yazmda boluk says
etkisizdir.
Sadece ilgili deiken adn yazarak o deikeni
arabilirsiniz.
Matlab Semineri-2005 12
MATLAB TEMEL KULLANIM
SAYILAR
Ondalk saylar Trkemizdeki 3,5 yerine 3.5 eklinde
gsterilir (0.0001 veya 9.63 / 0.65 yerine .65).
Bilimsel notasyon gsterimi olan e (veya E) harfi 10nun
kuvvetini temsil eder.
2e4=2.10
4
=2000 veya 1.65e-20=1.65.10
-20
demektir.
Kompleks saylarda imajiner (sanal) ksmlar i veya j ekini
alr. 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.10
308
ve 2.10
-308

arasnda deiir.
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 63
karakterlik 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.
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 komutunu
kullannz. Clear komutu bellekteki tm
deikenleri siler.
who komutu ile sadece deiken adlarnz;
whos komutu ile de deikenlerinizin zelliklerini
grebilirsiniz.
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};

Matlab Semineri-2005 17
MATLAB TEMEL KULLANIM
LELER: lem yapmay salayan sembollerdir.
+ - * / \
^ (s alma, a
b
) : 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 yerine
Sin 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.
Matlab Semineri-2005 19
MATLAB DZLER
DZLER
Dizi, en genel matematiksel tanm ile nmerik ve
metinsel deerler topluluudur. Matlabde herey
bir dizi olarak ileme konur ve en temel veri
elemandr.
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 olabilir
ve tm nmerik diziler double array formatndadr.
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 tek
elemanl matris, nx1dizisi stun matrisi ve 1xn
dizisi ise satr matrisi olarak da dnlebilir.
Bir dizinin eleman says, satr ile stun saysnn
arpmdr.
Matlab Semineri-2005 21
MATLAB DZLER
1 2
3 4
5 6
A= 3x2 matrix 6 eleman
b=[1 2 3 4] 1x4 array 4 eleman, satr vektr
c=
1
3
5
3x1 array 3 eleman, stun vetr
A(2,1)=3 b(3)=3 c(2)=3
Satr # Stun #
Matlab Semineri-2005 22
MATLAB DZLER
Vektrler
1xn veya mx1 eklinde tek boyutlu dizi olan vektrleri
oluturmann 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 artm
olacan ifade eder.
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]
mxn
(
(
(
(
(
(

=
mn
2n
1n
m2
22
12
m1
21
11
F
...
...
F
F
.
.
.
....
....
F
.
.
F
F
F
...
...
F
F
F
mxn
(
(
(
(
(
(

=
mn
2n
1n
m2
22
12
m1
21
11
F
...
...
F
F
.
.
.
....
....
F
.
.
F
F
F
...
...
F
F
F
Matlab Semineri-2005 24
MATLAB DZLER
Hem vektrler 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))
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 ve
kurallara uyulur. Bir bilgisayar yazlmnn oluturulmasnda
genel olarak aada sralanan prosedre uyulur:

Problemin tanm (Ne-Niin)
zm ynteminin ve admlarnn belirlenmesi (algoritma: ak
emalar veya pseudo-kod)
Kodlama (Programlama diline evirme)
Snama (Program altrma)
Belgeleme ve Gncelletirme
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 ihtiya
vardr. Bu editr Matlabde Editor/Debugger ortamdr.
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 saysn
X: saynn formatn gsterir.d: tamsay, f: kayan nokta, e: stel, g: en ksa form
Matlab Semineri-2005 29
MATLAB PROGRAMLAMA
Fonksiyonlarn genel yazm format
function [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 ekrannda
grntlenir. zerinde her trl dzenleme ilemi yapabilir ve yeni hali
ile kaydedilir.
Matlab Semineri-2005 31
MATLAB PROGRAMLAMA
leler e ayrlr: Aritmetik, ilikisel ve mantksal
likisel leler:
< Kktr
<= Kk eittir
> 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
Matlab Semineri-2005 33
MATLAB PROGRAMLAMA
DNGLER (LOOPS)
for Dngs
Bir for (iin) dngnn genel format

for dngdeikeni=ifade
deyimler
end

while Dngs
Bir while (sresince veya iken) dngsnn genel format

while ifade
deyimler
end
Matlab Semineri-2005 34
MATLAB PROGRAMLAMA
Yarap deerleri 1,2,3,4,5 iin krenin hacmini (H=4/3tr
3
)
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<5
r=r+1;
hac=(4/3)*pi*r^3;
disp([r, hac])
end
Matlab Semineri-2005 35
MATLAB GRAFK
Matlab, 2D ve 3D bata olmak zere ok gelimi grafik
aralar 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 semboln
ve izgi tipini belirler. Bu argmann kullanm istee (sras ve says)
baldr. Bu ilemi grafik zerinde de yapabilirsiniz.
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) <
triangle (right) (saga 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 x
deerlerine 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.
Matlab Semineri-2005 39
MATLAB 2D-GRAFK
oklu Grafikler
Birden fazla grafii (ayn x-ekseni baz olmak zere) st ste izmek iin
rnein: 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 olmak
zere) izmek iin
subplot(m,n,p)
fonksiyonu kullanlr. Bu fonksiyon matris dzeninde izim alan aar ve grafikler
yine plot fonksiyonu ile izilir.
Matlab Semineri-2005 40
MATLAB 2D-GRAFK
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)')
Matlab Semineri-2005 41
MATLAB 3D-GRAFK
BOYUTLU GRAFKLER
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 ereveli yzeyler izer.
(mesh, meshc, meshz, waterfall)
3D yzey 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 gsteriminde kullanlr.
Komut: slice, isosurface, smooth3, isocaps, isonormals.
3D zelletirilmi grafikler - boyutlu veri setlerinin gsteriminde
kullanlr. 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=x
2
+y
2
ile tanml 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');
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. Benzer
olarak 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

Matlab Semineri-2005 45
MATLAB TOOLBOX
MATLAB, toolbox olarak adlandrlan bir ok eklenti yazlm
modllerine 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


Matlab Semineri-2005 46
MATLAB SYMBOLIC TOOLBOX
Symbolik kelimesinin anlam:
3
3
2
x
dx x =
}
3
3
2
x
dx x =
}
3
3
2
x
dx x =
}
3
1
3
1
0
3
1
0
2
= =
}
x
dx x
sembolik
k
nmerik k
Matlabde sembolik ilemler yapmak iin sembolik deikenler
syms a b x
komutu ile atanr.
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




}
+ dx x x ) 20 4 2 (
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), n pozitif 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)=5x
3
+ax
2
+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
Matlab Semineri-2005 49
MATLAB SYMBOLIC TOOLBOX
Denklem Sistemlerinin zm:
solve fonksiyonu, cebirsel denklemlerin sembolik zmn verir. Genel
format:
solve('denk1','denk2',...,'denkN')
eklindedir.

f(x)=x
2
-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
x
2
+xy+y=3
x
2
-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) }
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 dereceden
diferansiyel 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

) s s )( s (
) s ( T
24 + 4 + 10 +
200
=
2

2 2 2 2
1
...
4
1
3
1
2
1
1
n
+ + + + +
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 temsil
edilmesi demektir. Gnmzde iletmelerin tm ihtiya ve
faaliyet alanlarnda kullanlan benzetim teknii; bilgisayar
kullanmn gerekli klan matematiksel bir model aracl ile
gerek bir sistemin temsil edilmesini salayan bir tekniktir.
Komut satrna simulink yazarak ya da ara ubuundan
tklayarak aabilirsiniz.


Matlab Semineri-2005 55
Denklem Modelleme: Santigrat dereceden
fahrenhayta dnm yapan bir denklemin
modellenmesi
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 SMULNK
Srekli 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. Zaman
domeninde sistemin modeli ve cevab aada
gsterilmitir.
Matlab Semineri-2005 57
MATLAB GUI+SMULNK

You might also like