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 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

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

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

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

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

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

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

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

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

10

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

11

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.104=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.10308 ve 2.10-308 arasnda
deiir.
Matlab Semineri-2005

12

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

13

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

14

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

15

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

16

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

17

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

18

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

19

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

20

MATLAB DZLER
1 2
A= 3 4
5 6

3x2 matrix 6 eleman

b=[1 2 3 4]

1x4 array 4 eleman, satr vektr

1
c= 3
5

3x1 array 3 eleman, stun vetr

A(2,1)=3
Satr #

b(3)=3

c(2)=3

Stun #

Matlab Semineri-2005

21

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

22

F11

F21

F12 .... F1n

F22 .... F2n

F ... . . ...

... . . ...
F F

m1 m2 . Fmn mxn

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]
Matlab Semineri-2005

23

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

24

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

25

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

26

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

27

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

28

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

29

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 mdosyalarn 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

30

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

31

MATLAB PROGRAMLAMA
ART DEYMLER (CONDITIONAL STATEMENTS)

if (eer)

else (baka)

elseif (eerbaka)

(1 art)

(2 art)

(n art)

if mantksal ifade
deyim
end

if mantksal ifade
deyim 1
else
deyim 2
end

Matlab Semineri-2005

if mantksal ifade 1
deyim 1
elseif mantksal ifade 2
deyim 2

elseif mantksal ifade n-1


deyim n-1
else
deyim n
end

32

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

33

MATLAB PROGRAMLAMA
Yarap deerleri 1,2,3,4,5 iin krenin hacmini (H=4/3r3)
hesaplayan bir program yaznz?

elemanter yntem:

for yntemi:

while yntemi:

r=1:5;
vol=(4/3)*pi*r.^3;
disp([r ; vol]')

for r=1:5
vol=(4/3)*pi*r^3;
disp([r, vol])
end

r=0;
while r<5
r=r+1;
hac=(4/3)*pi*r^3;
disp([r, hac])
end

Matlab Semineri-2005

34

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

35

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

36

MATLAB 2D-GRAFK

Color (Renk)

Indicator

Line style (Cizgi tipi)

Indicator

Blue (Mavi)
Green (Yesil)
Red (Kirmizi)
Cyan (Turkuaz)
Magenta (Mor)
Yellow (sari)
Black (Siyah)
White (Beyaz)

b
g
r
c
m
y
k
w

Solid (Duz cizgi)


Dashed (Kesikli cizgi)
Dotted (Noktali cizgi)
Dash-dot (Kesikli-niktalicizgi)

-:
-.

Matlab Semineri-2005

Marker symbol (Isaretleyici sembolu)


Point (Nokta)
Plus (Arti)
Star (Yildiz)
Circle (Daire)
x-mark (x isareti)
Square (Kare)
Diamond (Elmas)
triangle (down) (Asagi bakan ucgen)
triangle (up) (Yukari bakan ucgen)
triangle (left) (Sola bakan ucgen)
triangle (right) (saga bakan ucgen)
Pentagram (Besgen)
Hexagram (Altigen)

Indicator
.
+
*
o
x
s
d
v
^
<
>
p
h

37

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

38

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

39

MATLAB 2D-GRAFK
subplot 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)')
Matlab Semineri-2005

40

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

41

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 parabol
mesh(X,Y,Z);
xlabel('x-ekseni'); ylabel('y- ekseni'); zlabel('z- ekseni');

Matlab Semineri-2005

42

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

43

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

44

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

45

x 2 dx

x3
3

MATLAB SYMBOLIC TOOLBOX

Symbolik kelimesinin anlam:

sembolik
k

x3
x dx
3
2

x 2 dx

x
3

1
3

nmerik k

Matlabde sembolik ilemler yapmak iin sembolik deikenler


syms a b x
komutu ile atanr.

Matlab Semineri-2005

46

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
Matlab Semineri-2005

47

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)=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
Matlab Semineri-2005

48

MATLAB SYMBOLIC TOOLBOX


Denklem Sistemlerinin zm:
solve fonksiyonu, 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

49

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) }

Matlab Semineri-2005

50

dy
= 1+ y 2
dt

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
Matlab Semineri-2005

51

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
1

1
2

1
3

1
4

...

1
n

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

Matlab Semineri-2005

52

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

53

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

54

MATLAB SMULNK
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 Semineri-2005

55

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

56

MATLAB GUI+SMULNK

Matlab Semineri-2005

57

You might also like