You are on page 1of 64

1

T.C GAZ NVERSTES TEKNK ETM FAKLTES ELEKTRONK-BLGSAYAR ETM BLM

MEZUNYET TEZ

KONU MATLAB MATEMATK PROGRAMLAMA DL

TEZ HAZIRLAYANIN

ADI

:Osman

SOYADI :ztrk NO :9661060

BLM:Elektronik retmenlii

NSZ

Herhangi bir sistem iin tasarm, analiz ve sentez ilemleri byk nem tar. Bir sistemde tasarm; genelde izim ilemlerini, analiz; hesaplama ilemlerini ve sentezde hem izim hem de hesaplamalar kapsar. te bir sistemde byk bir nem tayan bu ilevi de en kolay ve en gvenilir ekilde yapabilmek iin farkl dnemlerde farkl teknikler kullanlmtr.

Bilgisayarn gelitirilmesi ve de bir sistemi oluturmak ve o sistemi anlamak iin insanlara kolaylk salayan yazlm programlarnn da gelimesiyle birlikte zellikle mhendislik alannda bilgisayarn etkin biimde kullanm artmtr.

Donanma ynelik teknolojik gelimeler bir bilginin hzl bir ekilde saklanabilmesi ve ilenebilmesi iin nemlidir. Yazlm alanndaki gelimeler ise kolay anlalabilen ve problemlerin kolayca zlebilecei kullan kolay

programlar beraberinde getirmitir.

u anda bilgisayara dayal almalara

- bilgisayar destekli tasarm (CAD) - bilgisayar destekli imalat (CAM) - bilgisayar destekli denetim sistemleri tasarm (CACSD)

rnek olarak verilebilir.

Bu ilemlerin yaplabilmesi iin gnmzde FORTRAN, C ve Pascal gibi yksek seviye programlama dilleriyle; Maple, MATLAB, Mathematica, MathCAD, StatView, SigmaStat, ANSYS gibi kullanm kolay, grsellii zengin paket programlar retilmitir. Bu tezde bugn iin yukarda bahsi geen yaygn ekilde kullanlan paket programlardan MATLAB program ilenmitir.

MATLABn tercih edilmesinin sebebi, saysal hesaplamalar, grafiksel programlamalar ve simulasyon uygulamalar iin gelitirilmi trdelerine gre zel ve stn bir dil olmasdr. MATLABn, bir ana paket program yannda, bunun ile birlikte kullanlan uygulama alanna zel, ek bir deme ile ayrca temin edilebilen ara kutularn (toolbox) iermesi tercih edilmesini bir kat daha arttrmaktadr. MATLAB ayrca kolay program yazlm ve ileri seviyede grafik zellikler de salamaktadr. Hazr fonksiyon dosyalar yardm ile dier programlama dilleriyle satrlarca tutan programlar, MATLAB programcl yolu ile sadece birka satrla hazrlanabilir. Herkes iin yararl olacana inandm bu almamda yardmlarn esirgemeyen Yrd.D.Dr. Haldun GKTAa, arkadalarm M.Sava Malaka ve Hakan Demire teekkr ederim.

Osman ZTRK Ankara2000

NDEKLER

NSZ.....................................................................................................I NDEKLER............................................................................................II ZET......................................................................................................VI ABSTRACT...............................................................................................VI EKL LSTES.......................................................................................VIII TABLO LSTES........................................................................................XI

BLM 1

1. MATLABA GR...................................................................................1 1.1 1.2 1.3 1.4 MATLAB rn ailesi.......................................................................1 MATLAB ara kutular(Toolboxs). ...................................................3 MATLABn kullanm amac ve alan.................................................4 MATLAB kurulumu ve altrlmas................................................4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.5 MATLABn Kurulumu...........................................................4 MATLABn balatlmas.........................................................5 MATLAB komut penceresi.....................................................5 Genel Komutlar...................................................................5 zel Karakterler..................................................................8

MATLAB Komut Penceresi Menleri................................................10 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 File (Dosya) Mens..........................................................11 Edit (Dzen) Mens..........................................................11 Options (Seenekler) Mens..............................................11 Windows Mens...............................................................12 Help (Yardm) mens.......................................................12 ekil Penceresi Menleri.....................................................12

1.5.6.1 File (Dosya)...................................................................12 1.5.6.2 Edit (Dzen) .................................................................12

BLM 2

2. MATRSLER........................................................................................14 2.1 fadeler........................................................................................14 2.2 Deikenler...................................................................................14 2.3 Saylar..........................................................................................15 2.4 Operatrler(saysal ilemciler)..........................................................15 2.5 Komplex Saylar.............................................................................16 2.6 Fonksiyonlar..................................................................................17

BLM 3

3. MATLABDA MATRSLER VE TEMEL MATRS LEMLER.............................19 3.1 Matrisleri Girmek............................................................................19 3.2 Matrislerde Elemanlar.....................................................................20 3.3 Genel Matrisler...............................................................................21 3.4 Matrislerde lemler........................................................................22 3.4.1 Matrislerin Transpozu..............................................................22 3.4.2 Matrislerde Toplam ve Fark lemleri.................................23 3.4.3 Matrislerin arplmas.....................................................24 3.4.4 Matrislerin Blnmesi......................................................25 3.4.5 Matrislerin kuvvetini alma ilemi.......................................26 3.4.6 Marislerin stel Fonksiyonlar...........................................26 3.4.7 Matrislerin Tersini Alma...................................................27

BLM 4

4. MATLABDA GRAFKLER........................................................................29 4.1 2 Boyutlu(2D) Grafikler..............................................................29 4.1.1 2D Grafik Fonksiyonlar...........................................................29 4.1.2 Bir plotun oluturulmas...........................................................35 4.1.3 Grafik iziminde izgi Stilleri, aretler ve Renkler.......................36 4.1.4 Matrislerin izdirilmesi.............................................................37 4.2 3 Boyutlu(3D) Grafikler.............................................................37

4.2.1 3D Grafik Fonksiyonlar..........................................................38 4.2.2 3-Boyutlu Bir Grafie Bak As..................... ................41

BLM 5

5. SIMULINK VE SIMULASYON...................................................................44 5.1 Simulinke giri...................................................................................44 5.2 Simulink Bloklar................................................................................44 5.3 Simulink Modellerinin Oluturulmas ve altrlmas...............................45 5.4 Adm adm rnek bir modelin oluturulmas ve altrlmas......................46

KAYNAKLAR............................................................................................50 EK:MATLAB komutlar...............................................................................51 ZGEM..............................................................................................56

Z E T:

Bu almada, zellikle teknik alanlarda

matematik ve hesaplama algoritma geliimi modelcilik , benzetim ve prototip veri analizi , aratrma ve canlandrma bilimsel ve mhendislik grafikler uygulama geliimi , grafiksel kullanc arabirimi yaps

gibi tasarm ve veri zmlemeleri yapanlar iin nemli bir kaynak tekil edecek ekilde genel ve z bir ekilde MATLAB anlatlmtr.

Tezin be blm iersinde MATLABn kullanm, temel ilemleri, matris uygulamalar, artl deyimler, grafik ve SIMULINK ilemleri arpc rneklerle birlikte ele alnmtr. Buradaki ilemlerde tezden istifade etmek isteyenler iin skc olmayan ve de en ok ihtiya duyulan temel konulara deyinilmitir.

ABSTRACT

In this work especialy in technical areas


Math and computation Algorithm development Modeling, simulation, and prototyping Data analysis, exploration, and visualization Scientific and engineering graphics Application development, including Graphical User Interface building

the ones who are making design and data analysis, this MATLAB has been briefly and generally explained so as to constitute a significant source.

In the five section of the thesis, the use of MATLAB, basic operations conditioned expressions, graphic and SIMULINK oprations have been explained with splendid examples. In these operations the ones who want to make use of this thesis ,the most needed basic subjects have been told in a non-boring way.

EKL LSTES:

ekil1.1-Matlab Ailesi........................................................................2 ekil1.2-Matlab Komut Penceresi........................................................5 ekil4.1-plot fonksiyonuna bir rnek..................................................30 ekil4.2-loglog fonksiyonuna bir rnek...............................................31 ekil4.3-semilog7 fonksiyonuna bir rnek...........................................32 ekil4.4-title fonksiyonuna bir rnek..................................................33 ekil4.5-text fonksiyonuna bir rnek..................................................34 ekil4.6-Bir matrisin izimi...............................................................37 ekil4.7-plot3 fonksiyonuna bir rnek................................................38 ekil4.8-meshc fonksiyonuna bir rnek..............................................39 ekil4.9-meshz fonksiyonuna bir rnek..............................................40 ekil4.10-surface fonksiyonuna bir rnek...........................................41 ekil4.11-3 boyutlu bir grafie bak as...........................................42 ekil4.12-3 boyutlu bir grafiin normal grnm...............................42 ekil4.13-Ayn grafiin farkl bir ynden grnm..............................43 ekil4.14-Ayn grafiin farkl bir ynden grnm.............................43 ekil4.15-Ayn grafiin farkl bir ynden grnm.............................43 ekil5.1-Simulink Bloklar.................................................................44 ekil5.2-Yeni bir simulink alma penceresi........................................45 ekil5.3 Yeni bir simulink alma penceresinin almas........................46 ekil5.4-Bir eleman kmesi..............................................................46 ekil5.5-Elemanlarn tanmas.........................................................47 ekil5.6-Elemanlarn tanm hali.....................................................47 ekil5.7-Multiplexirn ayak saysnn ayarlanmas.................................47 ekil5.8-Balant yapm..................................................................48 ekil5.9-Balantlarn yaplmas.........................................................48 ekil5.10-Bir modelin tamamlanm hali.............................................48 ekil5.11-Bir modelin scope ks......................................................49

10

T A B L O L S T E S :

Tablo1.1..........................................................................................8 Tablo1.2..........................................................................................8

Tablo1.3.......................................................................................12 Tablo2.1.......................................................................................15 Tablo2.2.......................................................................................16 Tablo2.3.......................................................................................18 Tablo3.1.......................................................................................21 Tablo3.2.......................................................................................27 Tablo3.3.......................................................................................27 Tablo4.1.......................................................................................35 Tablo4.2.......................................................................................36

11

BLM 1

1. MATLABA GR:

MATLAB; (MATrix LABoratory); ilk defa 1985de C.B Moler tarafndan matematik ve zellikle de matris esasl matematik ortamnda kullanlmak zere gelitirilmi etkileimli bir paket programlama dilidir. lk srmleri FORTRAN diliyle yazlm olmakla beraber son srmleri (2000 yl itibariyle 5.1 dir) C dilinde hazrlanmtr. MATLAB mhendislik alannda; saysal hesaplama, veri zmleri ve grafik ilemlerinde kullanlabilecek genel amal bir program olmakla beraber zel amal modler paketlere de sahiptir. Control Toolbox, Signal Toolbox gibi paket programlar (bilgisayar destekli denetim sistemi tasarm) paketler olup bunlar denetim sistemlerinin tasarmnda ok etkili aralardr. Ayrca WINDOWS ortamnda alan SIMULINK, etkileimli benzetim programlarnn hazrlanmas ve altrlmasnda byk kolaylklar salamaktadr.

Bugn (2000 yl itibariyle) 5.2 srmne ulaan MATLABn deiik bilgisayar sistemlerinde alan ok eitli srmleri vardr. En basiti renci srm olup bu srm Profesyonel MATLAB benzeri zelliklere sahiptir. Yalnz baz snrlamalar vardr.

1.1 MATLAB rn ailesi MATLAB , btn mathworks rnleri iin bir alyapdr. MATLABta , kullanm kolay

olan tek bir ortamda saysal hesaplama , 2-d ve 3-d grafikleri ve dil

12

yeteneklerini birletirilmitir. MATLAB eklentileri, MATLABta

gelitirilen

sistemlerin gerekletirmesini destekleyen seimli aralardrlar . Ara kutular, zel sorunlarn zm iin MATLABa uyarlanan MATLAB ilevlerinin tr kitaplklardr. Ara kutular, ak ve eklenebilir olup; bir

kendi

algoritmalarn ve ekini grebilirsiniz. Simulink, Blok diyagram arayz ile dorusal olmayan simulasyonu ve canl simulasyon yetenekleriyle z saylar, MATLABn grafiklerini ve dil

fonksiyonlarn birletiren bir sistemdir.

MATLAB

SIMULINK

Simulink Eklentileri

Simulink Accelerator Real-Time Workshop Stateflow Blocksetler DSP Fixed-Point Nonlinear Control Design Communications

MATLAB Eklentileri MATLAB Compiler MATLAB C Math Library Arakutular Control System Communications Financial Frequency Domain System Identification Fuzzy Logic Higher-Order Spectral Analysis Image Processing LMI Control Model Predictive Control m-Analysis and Synthesis NAG Foundation Neural Network Optimization Partial Differential Equation QFT Control Design Robust Control Signal Processing Spline Statistics Symbolic Math System Identification Wavelet

1.1 ekil 1.1

13

Simulink eklentileri , simulinkte gelitirilen sistemlerin gerekletirmesini destekleyen seime dayal aralardr. Bloksetler, zgl uygulama alanlarnda kullanm iin tasarlanm smulink blounun toplamlardr.

1.2 MATLAB ara kutular(Toolboxs): MATLABnn kullanlrl ve ok ynll, uygulamalara zg eitli ara-kutular eklemekle gelitirilebilir. Ara kutular, eitli bilimsel alan ve konularda yazlan MATLAB fonksiyon dosyalarndan oluurlar. Aada ksaca aklanan, deiik bilim dallar ile ilgili olarak yazlm hazr arakutular yer almaktadr.

Signal Processing Toolbox (Sinyal leme Ara kutusu): 1boyutlu ve 2-boyutlu saysal sinyal ileme (zaman serilerinin analizi) ile ilgili fonksiyonlardan olumaktadr. Ayrca, saysal filtreler iin gelitirilen analiz ve tasarm fonksiyonlar ile g spektrumu analizine ilikin

fonksiyonlar da iermektedir.

Control Systems Toolbox (Kontrol Sistemleri Ara kutusu): Durum uzay tekniklerini kullanarak kontrol mhendislii ve sistemler teorisi ile ilgili fonksiyonlardan olumaktadr.

System Idendification Toolbox (Sistem Tanmlama Ara kutusu): Parametrik modelleme ve sistem tanmlama ile ilgili

fonksiyonlardan olumaktadr.

Neural Network Toolbox (Yapay Sinir Alar Ara kutusu): Yapay sinir alar iin tasarm Bu ve benzetim (simlasyon) kategoriye

fonksiyonlarndan

olumaktadr.

fonksiyonlar

birka

14

ayrlrlar. Bunlar; 1) a benzetimi iin transfer fonksiyonlarnn belirtilmesi, 2) a parametrelerini gncelletirmek iin kurallarn belirtilmesi, 3) veriler zerinde an ilem yapabilmesi iin fonksiyonlarn belirtilmesi. Baz fonksiyonlar, lineer ve Hapfield alarnn dorudan tasarm iin

kullanlabilirler.

Spline Toolbox (Oluum Ara kutusu): Oluumlar ile ilgili Mdosyalarndan olumaktadr. Oluum ara kutusu fonksiyonel

modellemede kullanlmaktadr. Erilerin modellenmesi, verilere gre eri uydurulmas, kullanldr. fonksiyonel denklemlerin zlmesi vb. iin olduka

Robust-Control Toolbox (Robot Kontrol Ara kutusu): Robot kontrol sistemleri tasarm ile ilgili fonksiyonlardan olumaktadr.

-Analysis and Synthesis Toolbox (p.Analiz ve Sentez Ara kutusu): -Analiz ve sentez tekniklerinin kullanlarak robot ve lineer kontrol sistemlerinin incelenmesi ve tasarlanmas iin yazlm

fonksiyonlardan olumaktadr.

1.3

MATLABn kullanm amac ve alan: tm mhendislik alnnda, saysal hesaplamalar, veri

MATLAB

zmlenmesi ve grafik ilemlerinde kolaylkla kullanlabilen bir program dilidir. FORTRAN ve C dili gibi yksek seviyeli programa dili ile yaplabilen hesaplamalarn pek ounu MATLAB ile yapmak mmkndr. Ayrca bunu yannda dier programlama dillerine gre MATLABta daha az sayda

komutla zm retmek mmkndr. Gerekte MATLAB, M-dosyalar (MFiles) olarak biline pek ok sayda fonksiyon dosyalarndan, alt

programlardan ibarettir. Hazrlanmas dnlen bir program iinde Mdosyalarn mmkndr. kullanmak suretiyle komut saysn ok ksa tutmak

15

MATLABn Kullanm Yerleri: Denklem takmlarnn zm, dorusal ve dorusal olmayan

diferansiyel denklerinin zm, integral hesab gibi saysal hesaplamalar Veri zmleme ilemleri statiksel hesaplamalar ve zmlemeler Grafik izimi ve zmlemeler Bilgisayar destekli denetim sitemi tasarm Devre analizinde dm kol denklemlerinin zm

1.4 MATLAB kurulumu ve altrlmas: 1.4.1 MATLABn Kurulumu MATLAB, gerekli kaynak programn bulunduu disketler ya da CD zerinden KUR.EXE dosyas altrlarak ok rahat bir ekilde sisteme kurulabilir. Kurulum aamasnda kullancya eitli metin ve dier

uyarclar ile yardm edilerek kurulum tamamlanr.

1.4.2 MATLABn balatlmas MATLAB iki ekilde balatmak mmkndr. a-Windows program yneticisinden balatmak:MATLAB dorudan

program yneticisi etkinletirildikten sonra ekranda grnen MATLAB yazl simgeye ift tklayarak balatabiliriz. Bu MATLAB altrarak komut penceresini ekrana getirir.

DOS komut satrndan balatmak: DOS komut satrnda MATLAB altrmak iin BIN alt dizinine gemek en uygunudur. Bu durumda Sadece MATLAB yazmak yeterli olacaktr. Bu komut nce Windowsu ardndan MATLAB balatr.

1.4.3 MATLAB komut penceresi

16

MATLAB aldnda karmza gelen pencere (ekil1) MATLABn komut penceresidir. Komut penceresi kullanc ile MATLAB komut yorumlaycs arasnda iletiimi salayan bit ara yzdr. Yorumlayc hazr hale

geldiinde (>>) iletisi karmza gelir. Bu ileti MATLABa komut ya da komut dizileri girilebileceini gsterir.

1.2 ekil 1.2

1.4.4 Genel Komutlar Demo komutu(demo): Eer MATLAB ilk defa kullanlyor ya da belli komutlarn almasn merak ediliyorsa demo komutu ile demostrasyon listesini grntlenebilir. Listeden yapacanz bir seimle setiimiz ilevin icraatlarn adm adm izleme imkan bulabilirsiniz.

Aklama [rose'm1]: Osman! Komut Penceresi Yazmay Unutma

Saklama ve geri arma komutlar(save-load): Bilgisayarnzda MATLAB ile alrken bilgisayarnz kapatmay

arzulayabilirsiniz. Daha sonra geri dnerek kaldnz yerden etmek isteyebilirsiniz. te bunu baarmak iin kullanyor olduunuz btn deikenleri yeniden ayarlamadan bilgisayarnz kapatmadan nce >>save komutunu kulann.

Bu komut kullanmda olan MAT dosyasn alt dizininde veya MATLAB dosyanzda MATLAB.mat diye yapar veya stne yazar. Sonra

17

MATLAB.mat da yer alan alma alann yeniden arma ihtiyac duyduunuzda >>load komutunu girmelisiniz. MATLAB.mat haricinde baka bir isim ile de deikenleri saklayabilirsiniz. rnein >>save dosyam Bunun yannda >>load dosyam komutu ile de saklam olduunuz deikenleri geri arabilirsiniz.

Byk ve Kk harf duyarll(casesen off,casesen): MATLAB byk ve kk harf karakterlerine dutarl bir dildir. Yani yan simla verilmi fakat karakterlerin durumu bakmnda fakllk arzeden isimler farklym gibi alglanr. rnein dscrite, DSCRITE ve Dscrite atamalar farkl ekilde alglanr. Bu durumda bir isme birden fazla deer atamak mmkndr. Eer istenirse casesen off komutu ile bu durum sona erdirilebilir. Bylece byk-kk harf duyarl ortadan kalm olur.

Deikenlerin ve Matrislerin durumu(who, whos, what, size): MATLABda; deikenlerin kullanc ve tarafndan program iinde tanmlanan iin

matrislerin

durumunu

gzden

geirmek

who,whos,what,size gibi kullanl komutlar bulunmaktadr. who;komutu kullanc tarafndan tanmlanan deikenlerin lsitesini grntler, whos;komutu bu deikenleri boyutlar ile birlikte ve bu

deikenlerin sfr olamayan sanal ksmlar olup olmadn da grntler, what;komutu kullanc diskinin halihazr dizininde mevcut M-

dosyalar listesini verir.

18

Yardm Komutu(help): Yardm imkan MATLABta en nemli bir kaynaktr. alma ortamnda help komutu ile yardm alnabilecek

dosyalarn bulunduu dizinler ve sonrada yardm alnabilecek komutlar grntlenir.Ardndan help komutunun ardna yardm istedii konuyu

pei sra yazarak istedii konuda yadm alabilir. rnek olarak >>help sin komutu girilerek SIN SIN(X) is the sine of the elements of X

eklinde sins ile ilgili bir yardm alnabilir.

Yazm(type): type komutu ile bir dosyann ieriini grntler. Mdosyalarnn grntlenmesinde dosya adndan sonra M uzantsnn

yazlmasna gerek yoktur. rnein type

device

komutu device.m Buna karlk type

dosyasnda yazl olan tm satrlar grntler.

device.m komutu ise device dosyasnda yer alan % iareti ile belirlenmi aklama satrlar grntler.

Ksaca verilmitir.

genel

komutlarn

isimleri ve

aklamalar

Tablo

1.1

de

Tablo.1.1 Tablo.1
Komut help who whos what size lenght clear quit save lev MATLAB'n operatr ve fonksiyonlarn tanmlar Deikelerin isimlerini listeler Deikenlerin simlerini ve boyularn listeler Diskinizdeki M-dosyalarn listeler Argmanlarn boyutlarn verir Argmanlarn maksimum boyutlarn verir alma ortamndaki tm deikenleri temizler MATLAB ortamn sona erdirir MATLAB ama ortamnda bir MAT-dosyasn saklar

1.4.5 zel Karakterler

19

MATLABda ifadeler formunda veya MATLAB kontroln kullanabilmeniz iin zel karakterlere sahiptir. Tablo 1.2de bu karakterlerin bir zeti verilmitir.
Aklama [rose'm2]: Osman! Komut Penceresi Yazmay Unutma

[ ]:Keli parantezler, vektrleri ve matrisleri biimlendirmek iin kullanlr. rnein [5.45 9.3 sqrt(-6)] elemanlar boluklarla ayrlm
Tablo 1.2
Karakter Fonksiyon [ ] Matris ve vektrleri tanmlar ( ) Kontrol ilemi stnl Matris indislerini ve fonksiyon argmanlarn ayrmak iin kullanlr ; Matislere ait sarlar sona erdirir % Aklama eklemek iin kullanlr : Stun iareti veya vektr ! Sistem fonksitonlarn yerine getirir(MS-DOS))

elemanl bir vektrdr. Bunun yannda [5 6 45;12 91 2], satr ve stundan ibaret 3x3 lik bir matrisi gsterir. Burada noktal virgl (;) matris oluturulmasnda bir satr sona erdirip bunu izleyen satrn olumasn salar. A=[ ] biiminde bir bildirim bo bir matrisi A deienine atar.

):MATLAB da normal parantez eitli almalarla eitli yerlerde

kullanlr. En nemlisi; aritmetik deyimlerin stnln belirmek ve fonksiyon argmanlarn kapatmak iin kullanlr. Eer X ve Y bir vektr ise X(Y) de bir vektrdr ve [X(Y(1)),X(Y(2)),...,X(Y(N))] eklinde ifade edilir.

.:Kesir

ayrma iaretidir. 1452/10, 1.452 ve .1452e1 ayn anlama

gelir. Bu iaret ayn zamanda elemen elemana arpma ve blme ileminde de kullanlabilir. Buna gre kullan biimleri .*, .^, ./, .\ veya .. eklindedir. ...:Bir tek satra smayan ifadelerin devam ettiini belirmek iin kullanlr.

20

;:Bu iaret bir bildirimde elde edilen sonularn programn icras sonunda akranda grntlenmesini engellemek iin kullanlr.

%:Aklama yaplaca zaman ilgili satrlara bu iretle balanarak yaplr. % iareti ile balayan MATLAB tarafndan dikkate alnmaz ve

icraya da sokulmaz.

!:Herhangi bir yaz DOS ilemi grr. Bylece MATLAB ierisinde iken DOS komutlar ile allabilir.

::aret stun iareti olarak kullanlr ve her yerde kullanlabilir.


rnein; J:K dan balayarak 1 er ler K ya kadar artan bir dizi oluturur ve [J, J+1,...,K] ile ayn anlama gelir.

:Trnak
matrisinin

iareti matrislerin transpozunun alnmasn salar. M, M elenik transpozonu M. ise elenik olmayan

karmak

transpozunu sonulandrr. Devam

lgili rnekler: Aadaki deyimlere gre syms a b c d; A = [a b; c d]; A*A/A A*A-A^2 Entere bastmzda [ a, b] [ c, d] sonucu alnr.

Aadaki deyimlere gre syms a11 a12 a21 a22 b1 b2;

21

A = [a11 a12; a21 a22]; B = [b1 b2]; X = B/A; x1 = X(1) x2 = X(2) Entere bastmzda x1 = (a21*b2-b1*a22)/(-a11*a22+a12*a21) x2 = (-a11*b2+a12*b1)/(-a11*a22+a12*a21) sonucu alnr.

1.5 MATLAB Komut Penceresi Menleri: Bir ok programda olduu gibi MATLABda da komut penceresi menleri byk kolaylklar salar. Buna gre MATLABdaki menler ve ilevleri u ekildedir.

1.5.1 File (Dosya) Mens: File mens dosya veya dosyalarn oluturulmas ve yazdrma

ileminin ayarlamalarnn olduu komutlar ierir. New:Bu komut u seenekleri ierir. M-File, yeni M-dosyas oluturmak iin bo bir pencere aar. Figure, yeni bir ekil penceresi oluturur. Model,ywni bit SIMULINK penceresi oluturur. Open M-File: Bir dosya seebileiniz pencere ekrana getirerek dosya ad girilmesini veya gereken dosyann seilmesini ister ve ardnda seilen yada ismi yazlan dosya metin dzenleyici program altrlarak alr. Open Selected:Komut penceresinde seilerek belirtilen bir M-

dosyasn varsaylan dzenleyiciyi altrarak aar. Save Workspace As...:alma alann kaydetmek iin bir iletiim kutusu grntlenir, yeni bir dosya ad girmeniz gerekmektedir.

22

Run M-File: Dosya Yneticisinin altr... komutuna benzer. Bir Mdosyas ad girmeniz veya semeniz iin bir iletiim kutusu grntlenir ve belirtilen M-dosyasn altrr. Look for Selected: MATLABin lookfor komutunu altrr.

MATLABin arama yolunda bulunan tm M-dosyalarnn iindeki yardm metinlerinin ilk aklama satrlarn tarayarak komut penceresi iinde seilen katar aratrr ve sonucu ekranda grntler. Print...: Komut Penceresinde seilen metni o in ykl bulunan bir

yazcya dker. Eer seilen metin yoksa, tm MATLAB oturumu boyunca girilen metni yazdrr. Printer Setup...: O andaki yazc ayarlarn ve seeneklerini(renk tonu gibi) deitirmek iin bir iletiim kutusunu grntler. Exit MATLAB: MATLAB oturumunu kapatr.

1.5.2 Edit (Dzen) Mens: Edit (Dzen) mens komutlar kullancya dzenleme fonksiyonlarn uygulamak iin byk kolaylklar salarlar. Cut: Komut Penceresinde seilen metni keser ve ortamda saklar. Copy: Komut Penceresinde seilen metni kopyalar ve ortamda saklar. Paste: O andaki pano ieriini komut satrna yaptrr. Clear Session: Komut penceresinin ieriini siler. Bu komut, clc komutu ile ayn grevi icra eder.

1.5.3 Options (Seenekler) Mens: Bu men; MATLABda pencere seeneklerini ayarlamak, varsaylan dzenleme programn semek ve MATLABin format ve echo komutlarnn ilevlerini deitirmek iin kullanlr. Numeric Format: Ekran kt biimlerini deitirmek iin bu komutu kullanabilirsiniz. Bu komut u seeneklerden olumaktadr.

23

Turn Echo On/Off (Yansma Ak/Kapal): Yansma durumu iin ak ve kapal arasnda gei yapar. Echo on ise verilen bir komutun sonucu ekranda grntlenmesini salar. Enable/Disable Background Process: Artalan ilemlerinin olup olmamas arasnda geii salar. Font...: Yaz fontlar iletiim kutusunu aarak buradan komut

penceresinde kullanlan font ve artalan rengini seebiliriz.


Tablo1.3
Komut Short Long Hex Bank Etki Sabit-noktal saylar 5 haneli olarak gsterir (varsaylan). Sabit-noktal saylar 15 haneli olarak gsterir. Onaltl gsterim biimini seer. Dolar ve sent (Lira ve Kuru) gsterim biimlerini seer. Saylarn nne pozitif, negatif veya sfr olma durumlarna gre +, veya boluk koyar. Kompleks saylarda sanal ksm dikkate alnmaz. Kayan-noktal saylar 5 haneli olarak yazar. Kayan-noktal saylar 15 haneli olarak yazar. Gerel saylar, tamsaylarn oran olarak verir. Katsaylar, matrisin nnde satr-atla karakteri ile birlikte grntler. Katsaylar, matrisin nnde satr-atla karakteri olmadan grntler.

Plus Short e Long e Rational Loose Compact

Editor istendiinde

Preference...: gereken

Bir

metin

dzenleme program

komutu

iletilmek olarak

metin

dzenleyici

varsaylan

belirtmemizi salar.

1.5.4 Windows Mens: Windows (Pencereler) mens, MATLAB komut penceresi ve dier ekil pencerelerini listeler. Bu menden bir enin seilmesi, o enin etkin olmasn salar.

1.5.5 Help (Yardm) mens:

24

Help (Yardm) mens, MATLABe ait etkileimli yardm programna eriimi salar. Bu men, aadaki komutlardan olumaktadr. Table of Contents (indekiler Tablosu): MATLAB iin yardm almak mmkn olan konularn listesini grntler. Index (Dizin): Yardm almak mmkn olan MATLAB fonksiyonlarn alfabetik bir liste olarak grntler. Help Selected (Seilen iin Yardm): Komut penceresinde seilen bir e iin yardm aratrr. About... (Hakknda...): MATLAB iin tantc bilgiler ieren Hakknda kutusunu grntler.

1.5.6 ekil Penceresi Menleri MATLAB, tm grafik ktlarn ekil penceresi olarak adlandrlan ayr grafik pencerelerinde grntler. Bu pencerelerin zelliklerini, MATLAB komut ve fonksiyonlar ile kontrol etmek mmkndr. MATLAB,

kullanclarn, istedikleri kadar (sistem kaynaklar ile snrl olabilir) ekil pencereleri oluturmalarna ve komut penceresinden iletilen komutlarla grafiklerin bu pencereler iinde izdirilmelerini salar.

1.5.6.1 File (Dosya): ekil pencerelerinin almas, kapatlmas, oluturulmas ve yazc ktlarnn alnmas komutlarn ierir. Komutlarn kullanmlar yukarda verilmitir. 1.5.6.2 Edit (Dzen) Bu men aadaki seeneklerden oluur. Copy to Metafile ekil penceresinin ieriini Panoya Windows metafile (.wmf) biiminde kopyalar.

25

Copy to Bitmap ekil penceresinin ieriini Panoya Windows bitmap (.bmp) biiminde kopyalar. Clear Figure ekil penceresinin ieriini siler. Bu komut, clf komutu ile edeerdir.

26

BLM 2

2.MATRSLER:

2.1 fadeler: MATLAB dier programlama dillerine gre daha vantajldr. Bir ok programlama dilinden farkl matematiksel ifadeler sunar ve bu ifadeler btn matrisleri ierirler . fadelerin temel bloklar Deikenler Saylar Operatrler Fonksiyonlardr.

2.2 Deikenler: MATLABda, herhangi bir tip tanmlamas veya boyut ifadesine gerek yoktur. MATLAB, yeni bir deiken ismi ile karlatnda, otomatik

olarak ans isminde bir deiken oluturur ve uygun bir bellek miktar ayrr. Eer deiken zaten varsa, MATLAB gerekli bir bellek ayrdnda ierii deiir. rnein,

ogrenci_say=51 ogrenci_say diye isimlendirilen 1x1 matrisi olutur ve 21i ykle.

Deiken isimleri; bir harfden, saydan veya alt izgiden oluur. saysnn tarafndan takip edilen harftan oluurlar. MATLAB, sadece

deiken isminin ilk 31 karakterini

kullanr. MATLAB, byk ve kk

harfe duyarldr, byk harf ile kk harfi ayrdeder. A ve a deikenleri ayn deildir.

27

2.3 Saylar: MATLABda saylar yaygn olarak kullanlan onluk tabanda ifade edilirler. Bunun yansra onluk tabanda stel olarak veya i veya J olarak kompleks say biimlerinde de ifade edilebilirler. rnek olarak,

3 9.6397238 1i

-99 1.60210e-20 -3.14159j

0.0001 6.02252e23 3e5i

saylar gsterilebilir.

Saylarn duyarlln belirtmek iin kullanlan eps

says

onluk

tabanda 16 basamakl olarak gsterilmekte ve yaklak olarak 10-308 den 10-308 e kadar olan tm saylar kapsayabilmektedir.

2.4 Operatrler(saysal ilemciler): Matematiksel ifadeleri oluturmak iin operatrler ve nceden

tanmlanm sembolleri kullanabilirsiniz. Operatrler zetle unlardr:


Tablo 2.1
lem Toplama karma arpma Blme Sola Blme s Alma Cebirsel Biimi MATLAB Karl a+b a-b axb a/b b/a a+b a-b a*b a/b a\b a^b

ab

ki dz (skaler) say atasndaki aritmetiksel ilemler Tablo2.1de gsterilmitir. Bir deyim aada olduu gibi deer atanarak belli bir deer iinde saklanabilir. x=a + b Bu ifadede a ve b nin topland ve x deikeni iinde sakland

28

belirtilmektedir. Bu atama ilemini; a iindeki bir deerin b iindeki bir deerle toplanarak bu toplamn x deikenine atanaca eklinde

yorumlamak mmkndr. Eer b,r atama ilemi bu ekilde yorumlanacak olursa, aada verilen bir MATLAB bildirimi de geerli olur.

say = say + 1;

Ak bir ekilde bu bildirim geerli bir cebirsel bildirim olamaz, fakat MATLAB iindeki 1in say iindeki bir deere ilave edileceini ve sonucun tekrar say iinde saklanacan belirtir. Sonuta say iindeki deerin her seferinde 1 artacann belirtilmesine denktir.

Belli bir deiken tanmlamadan girilen deyimlerin icrasnda ans isimli bir deiken iinde otomatik olarak saklanr. Her defasnda ans iindeki deer bir ncekinin yerini alr. Burada ans ngilizce cevap anlamna gelen answer kelimesinin ksaltlm eklidir.

Matrislerle yaplan ilemlerde blme ilemi iin iki farkl sembol kullanlmaktadr. Bunun yannda eer saylar skaler ise iki blme ileminin sonucu da ayn deeri gsterecektir. rnein 3/2 ile 2\3 ifadelerinin sonular ayn olup 1.5dir.

Aritmetiksel lemlerde ncelik Durumu:Tek bir aritmetiksel durum iinde birden fazla durum bir arada bulunabildiine gre hangi ilemin ncelik hakkna sahip olunduunun bilinmesi yerinde olacaktr. Aada MATLABda kullanlan ilemlerde ilemlerin ncelik listesi

verilmitir.

29

Tablo 2.2

ncelik 1 2 3 4

lem Parantez s alma, soldan saa doru arpma ve blme, soldan saa doru Toplama ve karma, soldan saa doru

2.5 Komplex Saylar: MATLABda kompleks saylar, tm ilemlerde ve fonksiyonlarda i ve j zel fonksiyonlar ile ifade edilir. rnein; z=2+5i, z=1+1.83j, z=1+3j

Kompleks matrisleri girerken dikkat edilmesi gereken nokta deerler arasnda braklacak boluun yeridir. deer retir. rnein 3+ 4i ifadesi, iki farkl

2.6 Fonksiyonlar: MATLABn ok gl ve ok kapsaml bir fonksiyon yaps vardr. MATLABda baz fonksiyonlar daha nceden yerletirilmi bazlar ise sonradan dardan yerletirilmi M-dosyalarndan oluan MATLAB

ktphanelerinde tanmlanmlardr. Bunun yannda zel uygulamalar iin kullanclarn oluturmas kendi fonksiyonlarn Kullanc yazarak tanml kendi ktphanelerini da dier

mmkndr.

fonksiyonlar

fonksiyonlar gibi kullanlabilirler. MATLABda mevcut analitik fonksiyonlar genel olarak aadaki kategorilere ayrabiliriz.

1. Temel matematiksel fonksiyonlar 2. zel fonksiyonlar 3. Temel matrisler ve matris ilemleri 4. Matrisleri arpanlarna ayrma 5. Veri analizleri 6. Polinomlar 7. Diferansiyel denklem zmleri

30

8. Lineer olmayan denklemler ve optimizasyon 9. Saysal integral hesaplamalar 10. Sinyal ileme

Btn fonksiyonlarn grevini yazmak bu tezi snrlarn aacandan burada sadece baz temel matematiksel fonksiyonlarn aklamalar

verilecektir. Ayrca dier nemli fonksiyonlar da tezin sonundaki eklerde verilmitir.


Tablo 2.3
Fonksiyon abs angle sqrt real imag conj round fix floor ceil sign rem Aklama Mutlak deer hesaplar ve karekterleri sayya dntr. faz asn radyan cinsinden hesaplar saylarn karekkn hesaplar bir karmak saynn gerek ksmn hesaplar bir karmak saynn sanal ksmn hesaplar karmak elenik sayy hesaplar en yakn tamsayya tamamlar en yakn tamsayy sfra dor yuvarlar en yakn tamsayy eksi sonsuza doru yuvarlar en yakn tamsayy art sonsuza kadar yuvarlar bir say veya matris elemanlarnn sfrdan byk veya kk olup olmadn tespit eder bir blme ileminde kalan hesaplar

MATLAB, standart basit matematiksel fonksiyonlardan abs, sqrt, expin ve sin gibi saylar iermektedir. Karekk veya negatif saynn logaritmasn alarak hatasz, uygun karmak sonucu otomatik olarak retir. MATLAB, ok gelimi matematiksel fonksiyonlar kapsayan bessel ayn zamanda salar ve gama fonksiyonunu yerine getirir. bu fonksiyonlarn ou karmak tartmalar olursa: >>rem(12,7) ans=5 >>exp(1) ans=2.7183 >>fix(3.5) ans=3 kabul ederler. Temel fonksiyonlar rnek verilecek

31

>>ceil(3.5) ans=4 >>round(3.5) ans=4

32

BLM 3

3. MATLABDA MATRSLER VE TEMEL MATRS LEMLER:

Her ne kadar 4. versiyondan itibaren MATLABa The Symbolic Toolbox ilave edilerek sembolik matematiksel ilem yapma olanaklar salanm ise de MATLAB elemanlar kompleks olabilen drtgensel boyutlu saysal

matrislerle alan bir programdr. Baz durumlarda zel olarak bu matris 1x1 boyutunda olabilir. Benzer ekilde tek satr veya tek stundan oluan vektrler olabilirler. MATLABn matrisler ile almas demek; verileri matrisler biiminden deerlendirmesi ve zmleri matris esasna gre yapmas ve sonular da matris biiminde dzenlenmesi demektir.

3.1 Matrisleri Girmek: Matrisler girilirken keli parantez kullanlarak ([ ]) ve aadaki yollardan biri kullanlarak girilir. Elemanlar bir tam liste olarak girmek Yerleik deyim ve fonksiyonlar kullanarak matrisler retmek M-dosyalarn kullanarak matrisler oluturmak D veri dosyalarndan matrisleri yklemek

Bunlarn arasndan en kolay olan tam liste olarak yazmaktr. Buna gre bir matrisi girerken ,

1. Elemanlar, batan ve sondan keli parantezlerle kapatlr. 2. Elemanlarn arasna boluk veya virgl konulur. 3. Matris satrlarn ayrmak iin de noktal virgl kullanlr. kurallarna dikkate alnmaldr. rnein,

33

A = [1 2 3; 4 5 6]; A = 1 2 3 4 5 6 eklinde veriler matrisler biiminde tanmlanr. MATLAB daha sonra kullanlmak zere verileri A matrisinde saklar.

Byk matrisleri girerken noktal virgl yerine satr atlama karakteri kullanlabilir. Yukarda A matrisi farkl bir ekilde aada gsterildii gibi de girilebilir.

A =[1 2 3 4 5 6] Sonu olarak ayn deerler elde edilir.

3.2 Matrislerde Elemanlar: Matris elemanlar rasgele rakamlardan oluabilecei gibi MATLABn deyimlerinden de oluabilir. rnein, a=[-1.3 sqrt(3) a= -1.3000 1.7321 4.8000 (1+2+3)*475]

Kk

matrisleri

eleman

olarak

kullanp

daha

byk

matrisler

oluturmak mmkndr. rnein, M=[1 3 5 7 8 9]

matrisine aada gsterildii ekilde bir satr eklemesi yapabilir. M=[M;[10 13 15]] Bu durumda M matrisi M=[1 3 5

34

10 13 15] durumunu alr.

Bunun yannda iki nokta st ste (:) kullanarak byk matrislerin belli bir ksmn kullanabiliriz ya da dier ifade ile bu matrisi kltebiliriz. rnein, M=M(1:2,:) bildirimi M matrisinin ilk iki satrn alarak M matrisi olarak saklar. Bylece bataki orijinal M matrisi elde edilmi olur.

3.3 Genel Matrisler: MATLABda kullanc verileri kendi oluturaca matrisler ile

tanmlayabilecei gibi MATLABn kendi zel matrislerinden de istifade edilebilir. Bunlarn nemlileri ones, eye, zeros, magic, rand, randn olup ilevleri u ekildedirler:
Tablo 3.1 zeros Ones Rand randn

Tm elemanlar sfr olan bir matris oluturur Tm elemanlar 1 olan bir matris oluturur Dzgn dalml rasgele saylar veya matrisler oluturur Normal dalml rasgele saylar veya matrisler oluturur Bir birim matris oluturur Sihirli kare matris oluturur

Eye Magic

MATLABn drt temel matrisi ile ilgili birka rnek: rnek:1 Z = zeros(2,4);% 2 satrdan oluan ve btn elemanlar 0 olan bir matris retir

35

Z = 0 0 0 0 0 0 0 0

rnek:2 F = 5*ones(3,3);%3x3 lk oluacak tm elemanlar 1 olan matris 5 ile arplmtr F = 5 5 5 5 5 5 5 5 5

rnek:3 N = fix(10*rand(1,10)); N = 4 9 4 4 8 5 2 6 8 0

rnek:4 R = randn(4,4); R = 1.0668 0.0593 -0.0956 -0.8323 0.2944 -1.3362 0.7143 1.6236 -0.6918 0.8580 1.2540 -1.5937 -1.4410 0.5711 -0.3999 0.6900

3.4 Matrislerde lemler: MATLABn temelini matris ilemler oluturur. Matris ilemlerinin tmn MATLABta uygulamak mmkndr. Yalnzca baz karakterlerde kstlama sz konusu olabilir.

3.4.1 Matrislerin Transpozu:

36

Bir matrisin transpozu satrlarla stunlarn yer deitirdii baka bir matristir.. Genelde tranpoz st indis olarak T olarak ifade edilir. rnein bir A matrisi, A=[1 2 3; 4 5 6; 6 7 8] transpozu olan A , AT=[1 4 7; 2 5 8; 3 6 9] eklindedir.
T

eklinde tanmlarsak bu A matrisinin

Buradaki yaplan ilem (i,j) konumunda bir deerin (j,i) konuma aktarlmasdr.

MATLABda bir matrisin transpozu () stten virgl karakteri ile ifade edilir. Yani A matrisinin transpozu gsterilirken A eklinde yazlr. Bilindii zere kare matrisin dndaki matrislerin transpozesi farkl boyuta sahip yeni bir matristir.

Eer A matrisi karmak saylardan oluuyorsa A da karmak elenik transpozedir. Elenik olmayan bir transpoze elde etmek iin ya A. ya da conj(A) komutlar kullanlmaldr.

rnekler: rnek:1 X = 6 0 3 2 0 1 8 0 4 Y = X' Y = 8 3 4 1 5 9 6 7 2 rnek:2 z = [1+2i 3+4i] z'=

37

12i 34i z.'= 1+2i 3+4i

3.4.2 Matrislerde Toplam ve Fark lemleri: MATLABda toplama ve karma ilemleri iin + ve sembolleri kullanlr. Bu ilemler ancak boyutlar ayn olan ilemler iin tanmldr. rnein K ve L gibi farkl boyutta iki matris gznne alrsak, K+L Toplam hata sonucunu verir. nk matrislerin boyutlar farkldr. Fakt A ve B gibi eit boyutlu matrisleri C=A+B eklinde toplarsak sonuta hata olmaz, A ve B matrisleri toplanr ve bu deer C ye atanr. rnein, A=[1 2 3;4 5 6;7 8 9] ve B=[1 4 7; 2 5 8; 3 6 0] matrisleri iin C=A+B toplamnn sonucu C=[2 6 10;6 10 14; 10 14 0] olur. Toplama ve karma ilemlerini ilenenlerden biri skaler olduunda da geerlidir. Skaleri 1x1 boyutunda bir matrsi olarak dnebiliriz. Bu durumda skaler deer, matrislerdeki tm deerler ile ayr ayr ve tek tek ileme tbi tutulur. rnekler: A = 1 1 1 1 2 3 1 3 6 B = 8 1 6 3 5 7

38

4 9 2 X = A + B X = 9 2 7 4 7 10 5 12 8 Y = X A Y = 8 1 6 3 5 7

matrisleri iin

sonular alnr.

3.4.3 Matrislerin arplmas: Matrislerde arpma ilemi iin * sembol kullanlr. Bu ilem ilenen matrislerden her ikisinin i boyularnn ayn olduu durumlarda geerlidir. Yani, A*B arpmnda ann stun says ile Bnin satr says eit ise hesaplama yaplr aksi taktirde hata sonucu kar.

Ayrca matris arpm matrislerin karlk gelen elemanlarnn arpm yolu ile hesaplanamaz. Byle bir durumda eer MATLABda C=B*A komutu verilecek olursa , C does not exist (C mevcut deildir) eklindeki bir uyar mesaj alnr.

A ve B eklinde iki matrisin matris arpmnn sonucu olan C matrisinin C(i,j) konumundaki deer aada gsterilen toplam denkleminde ifade edildii gibi birinci matrisin inci satr ile ikinci matrisin Jinci stunun nokta arpmdr.
N

Ci,j=

aikbjk

k=1

rnekler:

39

rnek:1 A = [1 2; 3 4]; B = [5 6; 7 8]; C = A * B C = 19 43 22 50

3.4.4 Matrislerin Blnmesi: MATLABta daha nce akland gibi blme ilemi iin iki farkl (/ ve \) blme ilemcisi vardr. Eer A deeri, tekil olmayan bir kare matris ise A\B ve B/A ifadeleri B matrisi ile A matrisinin soldan ce sadan arpmlar yani, inv(A)*B ve B*inv(A) anlamna gelir. Bunun yarine MATLABda sonucu dorudan elde etmek mmkndr. Buna gre; X=A\B matris denklemi AX=B zmn gsterir. X=B/A matris denklemi XA=B zmn gsterir.

Soldan blme, A/B; B matrisi ile A matrisi satr saylar ayn ise tanmldr. Eer A bir kare matris ise, A/B ifadesi Gauss elimasyonu yardmyla faktrlere ayrlr. Bu faktrler, AX(:,j)=B(:,j) denklemlerinin zmnde kullanlr. Buradaki B(:,j) ifadesi B matrisinin j stununu gstermektedir. Bulunan X matrisi B ile ayn boyutta olan bir matris olur. Eer A bir kare matris deilse A\B ifadesi Householder

ortogonelletirilmesi kullanlarak faktrlere ayrlr. Bu faktrler en kk kareler ynteminde hesaplanacak denklemler altnda kullanlr. Sonu mxn boyutlu bir matristir. Burada m; A matrisinin stun saysnn ve n; B matrisinin stun saysnn ifadesidir.

40

Sadan

blme,

B/A;

B/A=(A\B)

eklinde

soldan

blmede

kullanlan terimlerle tanmlanabilir.

3.4.5 Matrislerin kuvvetini alma ilemi: Bir A matrisinin kuvvetini almak iin A.^p deyimini kullanmak yeterlidir. Bu ilem A matrisi iindeki her bir elemann teker teker p. kuvvetini alr. Burada A bir kare matris, p ise bir skaler saydr.

Bir kare matrisin karesi (A^2) A*A ilemine denktir. Benzer ekilde A^4 deyimi de A*A*A*A ilemine denktir. Buna karlk A^2.5 gibi kesirli st lama ilemi z deerleri ve z vektrleri de iine alan daha karmak bir ilem gerektirir.

ki matris arpmnn yaplabilmesi iin birinci matriste bulunan satr saysnn ikinci matrisin stun saysna eit olmas gerektiine gre, bir matrisinin kuvvetinin alnabilmesi iin de satr saynn stun saysna eit olmas dolaysyla kare matris olmas gerekir.

3.4.6 Marislerin stel Fonksiyonlar: Bir A matrisinin stel fonksiyonu eA eklinde ifade edilir ve eitli hesaplamalarda nemli yer tutar. MATLABta bu fonksiyonlar exp(A) eklinde bir komutla hesaplanr. Bu komut Ann herbir eleman zerinde eleman elemana ilemine icra eder. Buna karlk Ann matrisi eklinde stel ifadesi ise expm(A)komutu ile hesaplatlr. MATLABtaki temel matris fonksiyonlar unlardr:

Tablo 3.2

Poly Det

Kkleri belirten karakterisitik bir polinom oluturur Bir matrisin determinantn hesaplar

41

Trace Kron MATLAB

Bir matrisin izini hesaplatr Bir Kronecter arpmn hesaplar ayn zamanda ileri dzey matris fonksiyonlarn da

iermektedir. rein matrissel s ve matrissel logaritma hesaplamalar gibi. expm(A) ve sqrtm(A) fonksiyonlarnda olduu gibi fonksiyon adlarnn sonunda m harfi bulunan fonksiyonlar ileri matris fonksiyonlar olarak hesaplanr. MATLABta tanml baz yerleik ileri matris fonksiyonlar:
Tablo 3.3

expm logm sqrtm

e tabanna gre bir matrisin ssn hesaplar Bir matrisin doal logaritmasn hesaplar Bir matrisin karekkn hesaplar

3.4.7 Matrislerin Tersini Alma: Tanma gre bir kare matris olan Ann A-1 olup AA-1 ve A-1A arpmlarn her ikisinin de birim matrise eit olmas gerekir. Yani, A A-1 = A-1 A = I dir. Normalde bir matrisin tersini alma ilemleri olduka skc olmakla beraber MATLABda bu ilem tek bir komutla (inv) zmlenir. Aada verilen rnek ile bir A matrisinin tersinin alnmas ve bu matrisin tersi ile arpmn nasl birim matrise eit olduu gsterilmitir. A=[2 3;4 1] A= 2 3 B=inv(A) B= -0.1000 0.4000 0.3000 -0.2000 3 1

A*B ans= 1.0000 -0.0000

42

0.0000 B*A

1.0000

ans= 1.0000 0.0 -0.0000 1.0000

43

BLM 4

4. MATLABDA GRAFKLER:

MATLAB grafik sistemi, verilerin hazrlanmasnda ve grselletirilmesinde ok deiik ve kendine has zellikleriyle bir kullanclara byk kolaylk salamaktadr.

MATLAB

3.5 ve daha altndaki srmlerinde; x-y grafikleri, kutupsal

grafikler, ubuk grafikler, yzey grafikleri 3-D yzey network meshi oluturmak mmkndr. Bunun yannda MATLAB 4.0 ve daha yukar srmlerinde grafiksel zellikler ok daha fazla artrlm ve yukardaki bahsedilen zelliklere ilaveten x-y-z grafikleri de dahil olmak zere her trl 3 boyutlu izgi ve yzey grafikleri oluturmak mmkn hale gelmitir.

4.1 2 Boyutlu(2D) Grafikler: MATLABta verilerin 2 boyutlu olarak izdirilmesi ve bu grafiklerin dzenlenmesi ile ilgili bir takm hazr fonksiyonlar mevcuttur. Aada bu fonksiyonlar aklanarak rnekler verilmitir.

4.1.1 2D Grafik Fonksiyonlar: x-y dzleminde oluturulan pek ok grafikte x ve y eksenlerinin eit aralklarla blnd varsaylr. Ve bu tr grafiklerde lineer grafik adn alr. Baz istisnai durumlarda ya tek eksen zerinde ya da her iki eksen (x,y) zerinde de logaritmik leklendirme kullanlabilir. x ve y vektrlerinin lineer ve logaritmik fonksiyonlar aada

verilmitir (eksenler veri saysna gre leklendirilirler).

44

Plot ama: 2-D lineer izim kullanm: plot(Y) plot(X1,Y1,...) plot(X1,Y1,izgitr,...) plot(...,'zellikismi,zellikDeeri,...) h = plot(...) aklama: x ve y eksenlerini lineer olarak leklendirir ve verilerin grafiini izer. Burada xler bamsz deiken yler ise baml deikeni gstermektedir. rnek: X = 0:pi/15:4*pi; Y = exp(2*cos(X)); plot(X,Y,'b+') herbir veri noktasna mavi art iareti koyarak izer

7 6

4 3

2 1

10

12

14

ekil 4.1

Loglog ama: Log-log lei izmek kullanm: loglog(Y)

45

loglog(X1,Y1,...) loglog(X1,Y1,izgiTr,...) loglog(...,'zellikismi', zellikDeeri,...) h = loglog(...)plot(Y) aklama: Hem x ekseni hem de y ekseni iin logaritmik leklendirme kullanarak x ve y deerlerinin grafiini oluturur. rnek: Kare iaretlerle basit bir loglog izimi oluturalm. x = logspace(-1,2); loglog(x,exp(x),'-s') grid on
10
50

10

40

10

30

10

20

10

10

10

10

-1

10

10

10

ekil 4.2

Semilogx ve semilogy ama: Semi-logaritmik grafik izmek kullanm: semilogx(Y) semilogx(X1,Y1,...) semilogx(X1,Y1, izgiTr,...) semilogx(...,'zelliksmi',zellikDeeri,...) h = semilogx(...)

46

semilogy(...) h = semilogy(...)

aklama: semilogx, x eksenini logaritmik y eksenini lineer olarak leklendirir ve verilerin grafiini izer. semilogy, x eksenini lineer y eksenini dorusal olarak leklendirir ve verilerin grafiini izer. rnek: rnek bir semilogy plotu: x = 0:.1:10; semilogy(x,10.^x)
10
5

10

10

10

10

10

0.5

1.5

2.5

3. 5

4.5

ekil 4.3

MATLABda ana grafik fonksiyonlarnn yannda izilen grafikleri zerine yaz yazdrabileceimiz etiket komutlar da vardr.Belli bal etiket

komutlar ve aklamalar aada verilmitir. Title ama:Hali hazrdaki grafie balk eklemek kullanm: title('balkyazs')

47

title(fismi) title(...,'zelliksmi',zellikDeeri,...) h = title(...) aklama: Halihazrdaki grafiin en st ksmna merkezleyerek trnak iindeki kelime ya da kelime grubunu yazdrr. rnek: 2 peryotlu bir sins sinyali izdirerek zerine sins sinyali diye

yazlmas: t = 0:pi/100:2*pi; y = sin(t); plot(t,y)


s ins siny ali 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1

ekil 4.4

xlablel ve ylablel ama: x ve y eksenleri iin etiket tanmlamak kullanm: xlabel('yaz') xlabel(fismi) xlabel(...,'zelliksmi',zellikDeeri,...) h = xlabel(...)

48

ylabel(...) h = ylabel(...)

aklama: xlabel,Halihazrdaki grafiin x ekseni iin etiket yazdrr. ylabel,Halihazrdaki grafiin y ekseni iin etiket yazdrr.

Text ama: x ve y eksenleri iin etiket tanmlamak kullanm: text(x,y,'yaz') text(...'zelliksmi',zellikDeeri...) h = text(...)

aklama: Halihazr grafikten alnan eksenleri kullanarak (x,y) koordinatlar yolu ile belirlenen grafik ekseni zerine bir etiket yazdrr. rnek: plot(0:pi/20:2*pi,sin(0:pi/20:2*pi)) text(pi,0,' \leftarrow sin(\pi)','FontSize',18)

49

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1

sin( )

ekil 4.5

Gtext ama: Fare yardmyla grafik zerine metin yerletirme kullanm: gtext('metin') h = gtext('metin')

aklama: Bu komut grafik ekran zerinde fare veya ok tular ile gsterilen noktada bir metin veya metinler yazar. rnek: gtext('Bu nota dikkat et!')

Grid ama: Izgara izgilerini gsterme kullanm: grid on grid off grid aklama: Bu komut zerinde allan grafik iin yatay-dikey leklendirme

50

izgilerini(grid=zgara) izdirir. grid on, zerinde allan alanda zgaralar aktif hale getirir. grid off, aktif olan zgaralar geri kaldrr.

4.1.2 Bir plotun oluturulmas: Eer y bir vektr ise plot(y) fonksiyonu ynin elemanlarn indislerine gre lineer olarak izdirir. Argman olarak iki vektr belirtilirse plot(x,y) fonksiyonu xe gre ynin lineer fonksiyonunu izer.

Bu fonksiyon ile oklu veri kmelerini izimin zelliklerini belirterek izdirmek mmkndr.

Bir plot oluturulurken izlenecek admlar ve ilgili rnekler:


Tablo 4.1

Admlar
1.Verinin hazrlanmas

lgili rnek
x = 0:.2:12; y1 = bessel(1,x); y2 = bessel(2,x); y3 = bessel(3,x);

2.Pencereyi ve izdirilecek pozisyonunu figure(1) subplot(2,2,1) seilmesi 3.izim fonksiyonunu girilmesi 4.izgi ve iaret zelliklerinin seilmesi h = plot(x,y1,x,y2,x,y3); set(h,'izgigenilii',2,{'izstili'},{'; ':' ;'-.'}) set(h,{'Renk'},{'r';'g';'b'})

5.Eksen snrlar, tick izleri ve izgilerinin belirlenmesi

zgara axis([0 12 -0.5 1]) grid on

6.Eksen etiketi, aklayc bilgi ve text ile xlabel('Zaman') ylabel('Ykselme') grafie notlarn dlmesi legend(h,'Birinci','kinci,'nc') title('Bessel Fonksiyonlar') [y,ix] = min(y1); text(x(ix),y,'First Min \rightarrow',... 'HorizontalAlignment','right') 7.Grafik kts al print -dps2

51

4.1.3 Grafik iziminde izgi Stilleri, aretler ve Renkler: plot(x,y) komutu x ve y vektrleri ile temsil edilen noktalar izgi dilimleri ile birletirerek bir izgi grafii oluturur. Kesikli, noktal, noktal - kesikli gibi dier izgi trlerini de semek mmkndr. Dier taraftan bir izgi grafii yerine bir nokta grafii de izdirmek mmkndr.

Aadaki tabloda izgi ve iaret tiplerinin bir listesi verilmitir.


Tablo 4.2

Sembol Y M C R G B W K

Renk(RGB) sar(110) magenta(101 ciyan(011) krmz(100) yeil(010) mavi(001) beyaz(111) siyah(000)

izgi stili . O X + * S D V ^ < > P H

Sembol nokta yuvarlak arp iareti art iareti yldz karekk baklava gen(aa) gen(yukar) gen(sola) gen(saa) pentagram hexagram

Nokta stili : -. -izgi Noktal izgili ve noktal kesik izgili

rnek: plot(x,y,r*) fonksiyonu girildiinde izilen grafik krmz renkte(r) ve yldz (*) iaretleriyle izilmi olur. 4.1.4 Matrislerin izdirilmesi: plot fonsiyonu argman olarak tek bir matris alrsa plot(y) y matrisinin her birisi ayr ayr izdirilir. X-ekseni ise, 1:me kadar olan (m:satr says) indis vektr ile etiketlendirilir. rnein

52

z =peaks iki deikeli fonksiyonu deerlendirerek grafii izer.


10 8 6 4 2 0 -2 -4 -6 -8

49x49 luk matristen oluan

10

15

20

25

30

35

40

45

50

ekil 4.6

4.2 3 Boyutlu(3D) Grafikler: MATLABta verilerin 3 boyutlu olarak izdirilmesi ve bu grafiklerin dzenlenmesi ile ilgili bir takm hazr fonksiyonlar mevcuttur. Bunlar, yzeylerin ve kafes erevesi eklindeki a grafiklerin izdirilmesinde kullnlmaktadr. Aada baz temel 3D grafik fonksiyonlar aklanarak rnekler verilmitir(dier grafik fonksiyonlar tezin sonundaki ekte

verilmitir).

4.2.1 3D Grafik Fonksiyonlar: plot3 ama: 3-D lineer izim kullanm: plot3(X1,Y1,Z1,...) plot3(X1,Y1,Z1, izgitr,...) plot3(...,'zellikismi',zellikDeeri,...) h = plot3(...)

53

aklama: 3 boyulu uzayda noktalarn ve izgilerin grafiini oluturu. plot(x,y,z) komutu 3 boyutlu uzayda koordinatlar x,z ve znin elemanlar olan noktalardan geen tek bir izgi grafii oluturur. Burada x,y ve znin ayn boyutta vektrler olmas gerekir. izer. rnek: boyutlu helezonun izilmesi: t = 0:pi/50:10*pi; plot3(sin(t),cos(t),t) grid on; axis square

40

30

20

10

0 1 0.5 0 -0.5 -1 -1 -0.5 0.5 0 1

ekil 4.7

Mesh,meshc,meshz ama: A izimlerini oluturmak kullanm: mesh(X,Y,Z) mesh(Z) mesh(...,C) meshc(...) meshz(...) h = mesh(...) h = meshc(...) h = meshz(...) aklama:

54

mesh , meshc ve meshz , matris elemanlarnn 3 boyulu olarak br perspektifinin izdirirler. rnek1: Birleme an ret ve tepe noktalarn kenar iziminin yaplamas. [x,y] = meshgrid(-3:.125:3); Z = peaks(X,Y); meshc(X,Y,Z); axis([-3 3 -3 3 -10 5])

ekil 4.8

rnek2: Tepe noktalar fonksiyonu iin perde iziminin retilmesi . [X,Y] = meshgrid(-3:.125:3); Z = peaks(X,Y); meshz(X,Y,Z)

55

ekil 4.9

Pcolor ama: Renkleri matris elemanlaryla hesaplana bir drtgensel hcre dizisinin izdirilmek. kullanm: pcolor(C) pcolor(X,Y,C) h = pcolor(...) aklama: pseudocolor izimi , C tarafndan belirlenmi renkler ile hcrelerin dikdrtgen biiminde sralanmasdr .

Surface ama: Yzey nesnesi oluturmak kullanm: surface(Z) surface(Z,C) surface(X,Y,Z)

56

surface(X,Y,Z,C) surface(...'PropertyName',PropertyValue,...) h = surface(...) aklama: surface, yzey nesnesi oluturmak iin dk seviyeli bir fonksiyonudur . rnek: load clown surface(peaks,flipud(X),... 'FaceColor','texturemap',... 'EdgeColor','none',... 'CDataMapping','direct') colormap(map) view(-35,45) grafik

ekil 4.10

4.2.2 3-Boyutlu Bir Grafie Bak As: MATLAB, grafiin ynn kontrol etmenizde kolaylk salar. MATLABn bir grafik iin gr asn belirtebilir, yn ve grnn izdmn ekil penceresinde grebilirsiniz. zellikleri grerek bunlar bir takm grafik fonksiyonlar yoluyla kontrol edebilirsiniz. view fonksiyonu, kresel koordinatlarda eksenlerin merkezine gre (orjine) alk ve ykselti alar belirtilerek bak noktasn ayarlar.

57

Aklk, x-y dzleminde saat ynnde pozitif deerli kutupsal adr. Ykselti ise bak noktasnn x-y dzleminin zerinde(pozitif) veya altnda(negatif)olmasn belirleyen derece cinsinden bir adr. Aadaki izim, koordinat sistemini gsterir. Oklar, pozitif ynleri ifade

etmektedir.
Bak Noktas

Grafik merkezi

Ykselti

Aklk

ekil 4.11

MATLAB , 2-D veya 3-D izimlerini belirlenmi gr asn otomatik olarak seer. Buna gre 2-D izimler iin, aklk=0o ve ykselti=90o 3-d izimler iin, aklk=-37.5o ve ykselti=30o

rnek:Aada peaks matrisinin izdirilmesinden elde edilen grafiin drt farkl grnm yer almaktadr. 1. Aklk=-37.5o ve ykselti=30o iin grafiin izimi: [X,Y] = meshgrid([-2:.25:2]); Z = X.*exp(-X.^2 -Y.^2); surf(X,Y,Z)

0.5

-0.5 2 1 0 -1 -2 -2 -1 1 0 2

ekil 4.12

58

2. Aklk=180o, ykselti=0o ve z=0 iin grafiin izimi: view[180,0]


0.5 0.4 0.3 0.2 0.1 0 -0.1 -0.2 -0.3 -0.4 -0.5

1.5

0.5

-0.5

-1

-1.5

-2

ekil 4.13

3. Aklk=-37.5 , ykselti=30o iin grafiin izimi: view([-37.5 -30])

0.5

-0.5 -2 -1 0 1 2 2 1 0

-2 -1

ekil 4.14

4.Aklk=-90 , ykselti=0o iin grafiin izimi: view([-37.5 -30])


0. 5 0. 4 0. 3 0. 2 0. 1 0 -0. 1 -0. 2 -0. 3 -0. 4 -0. 5

1. 5

0.5

-0.5

-1

-1.5

-2

ekil ekil 4.15

59

BLM 5

5.SIMULINK VE SIMULASYON:

5.1 Simulinke giri: Simulink, modelcilik, simule etme ve zmleyi dinamik sistemler iin yazlm paketidir. Srekli zamanda modellenilen dorusal ve dorusal olmayan sistemleri destekler. Sistemler,ayn zamanda ok dereceli

olabilirler, farkl dereceli denilen veya gncelletirilen farkl paralara sahip olabilirler .

Modelcilik iin, simulink, blok izimleri, kullanma tkla ve ta fare operasyonlar ile modelleri ina etmek iin grafiksel kullanc arabirimi salar.

Simulink modellerinin benzetimi diferansiyel denklem takmlarnn saysal integrasyonu ile ilgilidir. Simulink iinde bu tr denklemlerin simulasyonunda kullanlan eitli integrasyon yordamlar mevcuttur.

Aada simulink bloklar verilmitir. (Kullanmlar ve zellikleri iin Bkz. MATLAB/HELP)

5.2 Simulink Bloklar:

ekil 5.1

60

1.Sources blocks(kaynaklar bloklar) 2.Sinks blocks 3.Discrite blocks 4.Linear blocks 5.Nonlinear blocks 6.Connections blocks

5.3 Simulink Modellerinin Oluturulmas ve altrlmas: Simulink, bir dinamik sistemin modellenmesi iin blok emalar sunar. Bir sistemin modellenmesinde kullanlan blok elemanlar dorudan

simulink blok ktphanelerinden seilir. Bunun iin MATLAB alma ortamnda >>simulink komutu girmek yeterlidir. Bu durumda ilk karmza kan eitli blok ktphanelerini temsil eden kutu eklindeki emalardr. (ekil 5.1) Daha sonra simulink Fileden New seilerek yeni ve bo bir sitem penceresi alr(ekil 5.2). Bu pencere simulink alma ve ve dinamik model
Aklama [rose'm4]: ismini yaz Aklama [rose'm3]: yakurdaki eklin ismini gireceksin

oluturma ortamdr ve ayn zamanda isimlendirilmemi (untitled) bir dosyadr. Modelimiz iin gerekli bloklar, blok ktphanelerinden srklebrak yada kopyalama ile tanr.

ekil 5.2

Bir blok ktphanesinde ne trden blok elemanlar olduunu anlamak iin fare ile ift tklamak sureti ile bu ktphaneyi amak yeterlidir. Bu

61

elamanlardan modelimiz iin gerekli olanlar fare ile srklenerek alma ortamna tanr.

alma ortamna yaplmak istenen model iin gerekli elemanlar tandktan sonra bu elemanlar uygun biimde balant yerlerinden birbirlerine balanr. aret verici kaynak (source) bloklar yalnzca k balant ucuna, iaret gsterici bloklar yalnzca giri balant ucuna ve dier bloklar ise hem giri hem de k balant ucuna sahiptir.

Arzu edilen biimde model oluturulduktan sonra .m uzantl bir isim verilerek (rnein modelim.m) uygun bir dizin altnda saklanabilir. Model oluturma penceresindeki menden simulation/start komutu seilmek suretiyle modelin simulasyonu altrlr. Scope gibi iret alc bloklar kullanmak sureti ile sonular annda alnabilir. Ayrca zm sonular bir dosyada saklanarak MATLAB ortamnda grafikleri elde edilebilir.

5.4

Adm

adm

rnek

bir

modelin

oluturulmas

ve

altrlmas:

1.Adm: Yeni bir alma ortam yukarda anlatld gibi oluturulur.

ekil 5.3

2.Adm:Modelimizde bulunur.

kullanacamz

elemanlar

ilgili

bloklardan

62

ekil 5.3

3.Adm:Eleman, bulunduu pencereden alma ortamna fare ile srklenerek yerletirilir.

ekil 5.4

4.Adm:Ve ayn metotla modelin dier elemanlar da alma ortamna tanr.

ekil 5.5

63

5.Adm:Modelde bulunan multiplexirin giri ularndan sadece 2sini kullanacamzdan girii ikiye indirebilmek iin Mux. zerine ift

ekil ekil 5.6

tklayarak parametere penceresine erimeliyiz. Ve bu penceredeki 3 deerini 2 yapmalyz. 6.Adm:Artk balant ilemine geerek uygun ekilde gsterildii gibi adm adm balantlar yaplr. aada

ekil 5.7

ekil 5.8

64

ekil 5.9

7.Adm:Ve son ilem modeli altrmaktr. Bunun iin penceredeki mende bulunan simulasyon/start vermeliyiz. Eer scopenin zerine ift tklanrsa modelin sonucunu grebilmek iin bir pencere ile karlarz.

ekil 5.10