sgdf

Page 1

EBE_250 DERS

Kaynak Kitaplar

DERS N SORUMLUSU: Yrd. Doç. Dr. smail ATACAK

A_MATLAB MATLAB -HER YÖNÜ LE MATLAB (Yrd.Doç.Dr.Mehmet UZUNO LU Ali KIZIL Ömer Ça lar ONAR ) -A'dan Z'ye MATLAB ile ÇALI MAK (Doç. Dr. Do an brahim) -Matlab ve Programlama", Papatya Yay nc l k, Dr. Aslan NAN -MATLAB LE LER MÜHEND SL K S STEMLER N N ANAL Z VE ÇÖZÜMÜ ( brahim YÜKSEL )

PROTEUS -Proteus ISIS & ARES (yazar:Hikmet ahin ) -Proteus le Bask Devre (Derleyenler: Gökhan Dinçer - Cihan Gerçek )

B_PROTEUS

1

2

Dersin çeri i

Dersin çeri i

MATLAB

PROTEUS I.PROTEUS’ giri

I. MATLAB'A G R II. MATR SLER ve VEKTÖRLER III.MATLAB'DA MATR SLER VE LEMLER IV. VER TÜRLER IV. MATLAB'DA GRAF KLER V.M_DOSYA PROGRAMCILI I

TEMEL

ISIS II.ISIS ELEKTRON K DEVRE VE S MÜLASYON PROGRAMI TANITIMI III. ISIS ile GENEL LEMLER IV. ISIS PROGRAMINDA BULUNAN ÖLÇÜ ALETLER ve ÖNEML KOMPONENTLER V. YEN KOMPONENT (SEMBOL) OLU TURMAK veya DE T RMEK VI. GRAF K TABANLI S MÜLASYON VII. ISIS UYGULAMALARI

MATR S

3

4


Dersin çeri i

Matlab nedir? MATLAB, teknik hesaplamalar ve matematiksel problemlerin çözümü ve analizi için tasarlanm bir yaz l m geli tirme arac yada paket programd r. “MATrix LABoratoty” kelimesinin k saltmas olan MATLAB, ad nda da anla laca üzere matrisler (matrix) yani di er bir deyi le diziler (array) ile çal r. Özellikle mühendislik alan ndaki sistemlerin analizinde kullan lan MATLAB, görüntü i leme (image processing), yapay sinir a lar (artificial neural networks), say sal i aret i leme (signal processing), optimizasyon (optimization), veri elde etme (data acquisation), veritaban (database), süzgeç tasar m (fitler design), bulan k mant k (fuzzy logic), sistem kimliklendirme (system identification), dalgac klar (wavelets) gibi araçlar ile sizler için mükemmel bir ortam sunar.

ARES VIII. ARES PROGRAMININ TANITILMASI IX. TASARIM AYARLARI X. ARES ile GENEL LEMLER XI. YEN SEMBOL (PCB KILIF) OLU TURMAK XII. ARES UYGULAMALARI XIII. ARES ‘den ÇIKTI ALMAK

5

Matlab nedir?

6

Matlab nedir? MATLAB’in nas l bir yaz l m oldu unu anlamak için onu çok geli mi özellikleri olan, programlanabilen bir bilimsel hesap makinesine benzetebiliriz. MATLAB’de yaz lan programlar, MATLAB’in kendine özgü dili kullan larak yaz l r ve MATLAB içinden çal t r l r. Ayr ca yazd n z programlar DLL ve EXE olarak olu turabildi iniz gibi C/C++ kodlar na da çevirebilirsiniz. Problemlerinizi MATLAB’de komut sat r nda çal an programlar yazarak çözebildi iniz gibi MATLAB GUI geli tirme arac n kullanarak, formlar ve butonlar gibi nesnelerden olu an görsel yaz l mlar geli tirebilirsiniz. MATLAB’in u an için Windows ve Linux ortamlar nda çal an versiyonlar mevcuttur. Bugün için geli tirilen en son sürüm matlab 2007b versiyonudur.

7

8


Matlab’ In Kullan m Alanlar

MATLAB ürün ailesi

Çok farkl alanlarda kullan labilen çok geni bir ürün yelpazesine sahip MATLAB, teknik hesaplamalarda kullan lan yüksek ba ar l dil olarak tan mlanmaktad r. MATLAB n belli ba l kullan m alanlar ; z z z z z z z z

Matematiksel (nümerik ve sembolik) hesaplama i lemleri Algoritma geli tirme ve kod yazma yani programlama Lineer cebir,istatistik,Fourier analizi,filtreleme,optimizasyon,say sal integrasyon vb. konularda matematik fonksiyonlar 2D ve 3D grafiklerinin çizimi Modelleme ve simülasyon (benzetim) Grafiksel arayüz olu turma Veri analizi ve kontrolü Gerçek dünya artlar nda uygulama geli tirme

eklinde özetlenebilir. Bugün 500.000 den fazla akademisyen, ara t rmac , bilim adam ve ö renci taraf ndan kullan lan MATLAB, içinde gömülü pek çok ara yüzü ile bilgisayar dünyas n n en geli mi teknik ve bilimsel problem çözme ve uygulama geli tirme arac d r.

9

MATLAB ürün ailesi

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

MATLAB Eklentileri •MATLAB Compiler •MATLAB C Math Library Araçkutular •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 •Wave 10

MATLAB ürün ailesi

MATLAB , Bütün mathworks ürünleri için bir alt yap d r. MATLAB , kulan m kolay olan tek bir ortamda say sal hesaplama imkan sa layan, 2-d ve 3-d grafikleri ve dil yeteneklerin birle tirildi i bir yap y te kil eder. MATLAB eklentileri, MATLAB’ ta geli tirilen sistemlerin uygulamas n destekleyen araçlard r. Araç kutular , özel sorunlar n çözümü için MATLAB’a uyarlanan MATLAB i levlerinin bir tür kitapl klar d r. Araç kutular ,aç k ve eklenebilir olup; kendi algoritmalar n ve ekini görülebilir.

11

Simulink, Blok diyagram arayüzü ile do rusal olmayan simulasyonu ve "canl “ simulasyon yetenekleriyle öz say lar , MATLAB' n grafiklerini ve di er fonksyonlar n birle tiren bir sistemdir. Simulink eklentileri,simulinkte geli tirilen sistemlerin gerçekle tirilmesini destekleyen seçime dayanan araçlard r. Bloksetler,özgül uygulama alanlar nda kulan m için tasarlanm simulink blo unun toplamlar d r.

12


MATLAB araç kutular (Toolboxs)

MATLAB araç kutular (Toolboxs)

Araç kutular , çe itli bimsel alan ve konularda yaz lan MATLAB fonksiyon dosyalar ndan olu urlar. A a da k saca aç klanan, de i ik bilim dallar ile ilgili olarak yaz lm haz r araç-kutular yer amaktad r.Bunlardan baz lar a a da verilmi tir. •Signal Processing Toolbox (Sinyal lem Araç kutusu): 1-boyutlu ve 2-boyutlu say sal sinyal i leme (zaman serilerinin anaizi) ile ilgili fonksiyonlardan olu maktad r. Ayr ca, say sal filtreler için geli tirilen analiz ve tasar m fonksiyonlar ile güç spektrumu analizine ili kin fonksiyonlar da içermektedir.

• Control Systems Toolbox (Kontrol Sistemleri Araç kutusu):Durum uzay tekniklerini kullanarak kontrol mühendisli i ve sistemleri teorisi ile ilgili fonksiyonlardan olu maktad r. • System Idendification Toolbox (Sistem Tan mlama Araç kutusu): Parametrik modelleme ve sistem tan mlama ile ilgili fonksiyonlardan olu maktad r.

13

14

MATLAB' n ba lat lmas

MATLAB araç kutular (Toolboxs)

MATLAB' iki ekide ba latmak mümkündür.

•Neural

Network Toolbox (Yapay Sinir A lar Araç kutusu): Yapay sinir a lar için tasar m ve benzetim (simülasyon) fonksiyonlar ndan olu maktad r. Bu fonksiyonlar birkaç kategoriye ayr l rlar. Bunlar; 1) a benzetim için transfer fonksiyonlar n n belirtilmesi, 2) a parametrelerini güncele tirmek için 'kurallar n belirtilmesi, 3) veriler üzerinde a n i lem yapabilmesi için fonksiyonlar n belirtilmesi. Baz fonksyonlar, lineer ve Holpfield a lar n n do rudan tasar m için kulan labirler.

A-Windows Masa üstünden matlab ikonunu çift t klayarak veya ba latÆprogramlar-->matlabÆmatlab7 ikonunu t klayarak. B-Dos ortam Matlab klasörü içerisindeki bin klasörüne girdikten sonra komut sat r nda matlab7 yaz larak matlab’a girilebilir. MATLAB aç ld nda kar m za gelen pencere (Sekil1) MATLAB' n komut penceresidir. Komut penceresi; kullan c ile MATLAB komut yorumlay c s aras nda etkile imi sa layan bir ara yüzdür. Yorumlay c haz r hale geldi inde (>>) i areti kar m za gelir. Bu i aret MATLAB’ a komut ya da komut dizilerini girebilece inizi gösterir. 15

16


MATLAB' n ba lat lmas

MATLAB' n ba lat lmas

Komut penceresinde;

{Menüden

{Tüm

komutlar ve fonksiyonlar harf duyarl d r. (Küçük / Büyük Harf) {Ancak baz komutlar n büyük harf versiyonlar da tan ml d r. >> date Komut penceresinin solunda iki küçük pencere vard r. Bu pencerelerden üstteki pencere Çal ma Alan (Workspace),

alttaki pencere ise (Command History)’ ni gösterir.

Komut

Geçmi i

Çal ma Alan , belli bir anda geçerli olan de i kenlerin izlenebildi i bir penceredir. Örnek : >> a = 10 >> b = 20

“Edit / Clear Workspace” seçilirse veya; {Komut sat r ndan, >> clear all yaz l rsa;De i kenler temizlenir. {Who komutu, çal ma alan n n görevini görür.

17

MATLAB' n ba lat lmas

18

MATLAB komut penceresi

Komut geçmi i penceresi, Komut penceresine yaz lan tüm komutlar n bir kayd n tutar. Bu pencereden, Daha önceden yaz lm olan komutlara çift t klayarak bunlar yeniden çal t r labilir. MATLAB kapat lsa dahi komut geçmi i silinmez.

19

20


Matlab Kullan m nda Temel Kurallar:

MATLAB ile çal mak MATLAB` gözünüzde canland rman n en kolay yolu, onu tüm niteliklerle donat lm , programlanabilir bir hesap makinesi gibi dü ünülmesidir. Basit bir hesap makinesinin yapt toplama, ç karma, çarpma ve bölmeden ibaret dört i lemi kolayl kla yapar. Bunlara ilaveten teknik bir hesap makinesinde bulunan karma k say lar, karekök, ve üst alma ve sinüs, kosinüs ve tanjant gibi geometrik i lemlerde kolayl kla yürütülebilirsiniz. Ayr ca programlama dillerinde oldu u gibi komut kümeleri yazarak her hangi bir propleme çözüm bulabilirsiniz.

{Program n

dili ve yard m bilgileri tamamen ingilizcedir. {Komut temelli yaz l md r. {Küçük-büyük harf ayr m vard r. tot ve Tot farkl alg lan r. {» i areti komut prompt’udur. {Komutlar Enter ile yürütülür.

lk a amada matlab bir hesap makinas gibi kullanmay görelim; >>(45+34)*28-56+52*sin(pi/4) enter Ans= 3457 Örnekte görüldü ü üzere; i lem herhangi bir de i kene atanmaz ise; bu i lemin sonucu matlab n kendi içerisinde tan mlanm de i keni olan “Ans” de i kenine atanacakt r. 21

MATLAB ile çal mak

22

MATLAB ile çal mak

Bunun d nda, programlanabilir bir hesap makinesinde oldu u gibi veri saklama ve geri yükleme gibi i lemler ile önemli bir sorunun hesaplamas n otomatik hale getirmek için komut sat rlar n olu turabilir, icra edebilir veya saklayabiliriz. Ayr ca çok güçlü bir hesap makinesinde oldu u gibi çok çe itli yollardan veri grafiklerinin olu turulmas , matris aritmeti inin icras , polinomlar n incelenmesi, fonksiyonlar n integre edilmesi, denklemlerim sembolik olarak kullan lmas v.b. i lemlerin yap lmas na mümkün k lar. Gerçekte, MATLAB çok daha fazla özelliklere sahip olup, herhangi bir hesap makinesinden daha çok yönlüdür. MATLAB matematik hesaplamalar yapmaya yarayan bir araçt r. FORTRAN, BASIC, PASCAL, C gibi bilgisayar programlama dillere göre kullan m daha kolay ve daha geli kin niteliklere sahip bir programlama dilidir.

23

Genel komutlar -Yard m Komutu(help,helpwin): Yard m imkan MATLAB’ta en önemli bir kaynakt r. Çal ma ortam nda help komutu ile yard m al nabilecek dosyalar n bulundu u dizinler ve sonrada yard m al nabilecek komutlar. >>help sin komutu girilerek SIN SIN(X) is the sine of the elements of X eklinde sinüs ile ilgili bir yard m al nabilir. 24


MATLAB ile çal mak

MATLAB ile çal mak Genel komutlar

Genel komutlar -Demo komutu(demo): E er MATLAB ilk defa kullan l yor ya da belli komutlar n çal mas n merak ediliyorsa demo komutu ile demostrasyon listesini görüntülenebilir. Listeden yapaca n z bir seçimle seçti imiz i levin icraatlar n ad m ad m izleme imkan bulabilirsiniz. >>demo matlab graphics

-Saklama

ve geri ça rma komutlar (save-load): Bilgisayar n zda MATLAB ile çal rken bilgisayar n z kapatmay arzulayabilirsiniz. Daha sonra geri dönerek kald n z yerden etmek isteyebilirsiniz. te bunu ba armak için kullan yor oldu unuz bütün de i kenleri yeniden ayarlamadan bilgisayar n z kapatmadan önce >>save komutunu kulan n. Bu komut kullan mda olan MAT dosyas n alt dizininde veya MATLAB dosyan zda MATLAB.mat diye yapar veya üstüne yazar. Sonra MATLAB.mat da yer alan çal ma alan n yeniden ça rma ihtiyac duydu unuzda >>load komutunu girmelisiniz. MATLAB.mat haricinde ba ka bir isim ile de de i kenleri saklayabilirsiniz. Örne in >>save dosyam Bunun yan nda >>load dosyam komutu ile de saklam oldu unuz de i kenleri geri ça rabilirsiniz.

25

26

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB ile çal mak Genel komutlar

FADELER : Matematiksel ve metinsel gösterimler ile i lemler ifadelerle

sa lan r.

-what;komutu kullan c diskinin halihaz r dizininde mevcut M-dosyalar listesini verir.

z

>> what MAT-files in the current directory C:\Program Files\MATLAB\R2006b\work ism matlab ss

z

z z

Say lar (Numbers) De i kenler (Variables) leçler (Operators) Fonksiyonlar (Functions)

{Matlab’de

ifadeler genellikle de i ken = ifade veya sadece ifade formundad r.

-who;komutu kullan c taraf ndan tan mlanan de i kenlerin listesini görüntüler, -whos;komutu bu de i kenleri boyutlar ile birlikte ve bu de i kenlerin s f r olamayan sanal k s mlar olup olmad n da görüntüler, -clc ekran temizler -clear haf zadaki de i kenleri siler. -Quit matlabtan ç kar r.

Örnek olarak >> x=4*sqrt(5) x= 8.9443 ifadesinde x de i ken , 4 say , * i leç , sqrt, fonksiyondur. {Bir

ifade = i areti ile bir de i kene atanmam ise Matlab otomatik olarak sonucu, ans (answer) ad verilen özel bir de i kende saklar.

27

28


MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

{Bir

SAYILAR {Ondal k say lar Türkçemizdeki 3,5 yerine 3.5 eklinde gösterilir (0.0001 veya 9.63 / 0.65 yerine .65).

ifadenin sonuna ; i areti ekledi inizde ekrana yaz lmaz. {Birden fazla ifade tek sat rda aralar na , ya da ; koyarak yaz labilir. Yaz mda bo luk say s etkisizdir. {Sadece ilgili de i ken ad n yazarak de i keni ça rabilirsiniz.

{Bilimsel notasyon gösterimi olan e (veya E) harfi 10’nun kuvvetini temsil eder. 2e4=2.104=20000 veya 1.65e-20=1.65.10-20 demektir. {Kompleks

say larda imajiner (sanal) k s mlar i veya j ekini al r. i veya j ile gosterimlerinde bir fark yoktur. (1+3i veya 1+3*i veya 1+i*3 ama 1+i3) / 1+sqrt(3)*j / -5i

tüm say lar, yakla k 2.10308 ve 2.10-308 aras nda de i ir. {Matlab’de

29

30

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

Say Format {Bir i lem sonucu varsay lan (default) olarak 4 ondal k ile gösterilir. {Say gösteriminde hane say s format fonksiyonu ile de i tirilir. >> format xxx {format veya format short : 5 rakaml (4 ondal k) {format long: 15 rakaml (14 ondal k) {format bank: ki ondal kl say {format rat: Ondal k say lar rasyonel say olarak gösterir.

DE KENLER {De i kenler,

ifadelerin adlar n ta yan belirteçlerdir. sol taraflar nda = i areti bulunur. {De i ken adlar , bir harf ile ba lamal ve onu takiben herhangi say da harfler, rakamlar veya altçizgiden ( _ ) olu abilir. {De i ken adlar maksimum 63 karakter uzunlu unda olabilir. De i ken ad , 63 karakteri geçti inde ilk 63 karakterlik k sm ad olarak kabul eder. {De i ken adlar nda küçük veya büyük ç ö ü Türkçe karakterlerini kullanmay n z. {Küçük-büyük harf duyarl d r: x ve X veya bor ve BOR, farkl de i ken adlar d r. {De i kenlerin

31

32


MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

De i ken lemleri {Bir de i keni silmek için Clear de i kenad komutunu kullan n z. {Çal ma düzleminden (workspace) tüm de i kenleri silmek için Clear komutunu kullan n z. Clear komutu bellekteki tüm de i kenleri siler. {who komutu ile sadece de i ken adlar n z ; whos komutu ile de de i kenlerinizin özelliklerini görebilirsiniz.

{De i kenler,

skaler, vektör, matris veya metin (string) olabilir. {De i ken örnekleri: - a=1; b=-3.2e3; ct=22/5; - metin=’Alp Karadeniz’; - vektör=[1 2 3]; - matris=[1 2 3;-1 0 1]; - hucre={1 2 ; ’buyuk’ ’kucuk’};

33

34

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

sabitler MATLAB programlar nda kullan labilen skalar de erler a a da tan mlanm t r.Bu de i kenlerin içerikleri MATLAB komut sat r nda yaz l p, enter’a bas larak görüntülenebilir. pi(S) S de eri pi ad alt nda otomatik olarak saklanm t r. Programlar içinde kullan lan pi kelimesi do rudan S de erine kar l k gelir. i,j() i, j harfleri do rudan de erine ayarlanm t r. nf (f) Bu kelime MATLAB’ta sonsuz de eri için atanm bir de i kendir ve s f ra bölme i lemlerinde ortaya ç kar. E er s f ra bölme i lemi görüntülenmek istenirse bir uyar mesaj al n r ve sonuç f i areti eklinde görüntülenir veya bas l r. NaN Bu de er Not-a-Number (rakam de il) anlam na gelir ve s f r bölü s f r bölümünde oldu u gibi tan mlanmam deyimlerde ortaya ç kar. eps Bu de er fonksiyon, kullan lmakta olan bilgisayar için floatingpoint (virgüllü say lar) taml n içerir. Bu epsilon taml 1.0 ve bunu izleyen enbüyük decimal (onlu say lar) aras ndaki farkt r. ans

Operatörler(say sal i lemciler): Matematiksel ifadeleri olu turmak için operatörler ve önceden tan mlanm sembolleri kullanabilirsiniz. Operatörler özetle unlard r:

35

le m T o p la m a

C e b irs e l B iç im i a

+

b

M A T L A B

K a r l

a + b

Ç k a r m a

a

- b

a -b

Ç a rp m a

a

x

a * b

b

B ö lm e

a

/

b

a /b

S o la

b

/

a

a \b

Ü s

B ö lm e

A lm a

a

b

a ^b

36


MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

Aritmetiksel lemlerde Öncelik Durumu:

Disp FONKS YONU MATLAB’da bir matematiksel ifadeyi argüman olarak al p bu ifadenin sonucunu ekrana aktaran bir fonksiyon mevcuttur bu da disp fonksiyonudur. Ancak disp fonksiyonunu kullanmaks z n sadece ifadeyi yazarsak ta sonucu görebiliriz: » 2+8 ans = 10 » disp(2+8) 10

Tek bir aritmetiksel durum içinde birden fazla durum bir arada bulunabildi ine göre hangi i lemin öncelik hakk na sahip olundu unun bilinmesi yerinde olacakt r. A a da MATLAB’da kullan lan i lemlerde i lemlerin öncelik listesi verilmi tir.

Ö n c e lik 1 2 3 4

le m P a ra n t e z Ü s a lm a , s o ld a n s a a d o ru Ç a rp m a ve b lm e , s o ld a n s a a d o ru To p la m a ve Ç k a rm a , s o ld a n s a a d o ru 37

38

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

, SEMBOLÜ

; SEMBOLÜ ; Sembolü, aralar nda yerle tirildi i iki skaleri iki farkl sat ra yazar. » disp([4;8]) 4 8 » ; sembolü ayr ca ilerde görülece i gibi matrislerde sat r ayrac olarak kullan l r.

Dizi ya da matris elemanlar aras na ayraç olarak yerle tirilir; bu sembol yerine bo luk sembolü kullan lmas da ayn etkiyi sa lar; » [5,7] ans = 5 7 » disp( [3,4] ) 3 4 » disp( [3 4] ) 3 4 » Karakter türü veriler ‘' sembolleri içine al n r; disp fonksiyonu ile a a daki gibi görüntülenirse biti ik olarak ekrana aktar l rlar: » disp([3 4]) 3 4

» disp(['a' 'c']) ac

39

40


MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

: SEMBOLÜ

AYNI UZUNLUKLARDAK VEKTÖRLER ÜZER NDE LEMLER -TOPLAMA VE ÇIKARMA

:Sembolü ba lang ç ve son de erleri belirten bir say dizisini 1’er art mlarla üretilir; ba lang ç ve son de erler yan nda bir de art m de erleri üçüncü parametre olarak verilirse bu durumda da belirten art m kullanarak bir say dizisi üretir. Üç parametre kullan l rsa ilk parametre ba lang ç, ikinci parametre art m ve üçüncü parametre ise son de erdir. » 1:6 ans = 1 2 3 4 5 6 » disp(2:5) 2 3 4 5 ve ayn zamanda » 2:3:18 ans = 2 5 8 11 14 17 » 0.4:0.7:10

41

+ ve – sembolleri iki vektör aras nda da kullan labilir; av b üçer elemanl iki vektör olsun: » a=[2 1 -1] a= 2 1 -1 » b=[4 -2 3] b= 4 -2 3 » a+b ans = 6 -1 2 » a-b ans = -2 3 -4 yukardaki örneklerde görüldü ü gibi, toplama ve ç karma i lemlerinde bilinen 42 vektör toplam ve fark i lemi gerçekle tirilecektir.

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

ÇARPMA VE BÖLME E it uzunlukta iki vektör için * ve / operatörleri kullan l rken dikkatli olunmal d r. » a=[4 5] a= 4 5 » b=[3 -2] b= 3 -2 » c=a*b ??? Error using ==> * Inner matrix dimensions must agree.

ÇARPMA VE BÖLME

43

Burada Matlab için * sembolü matris çarp m sembolüdür ve a ve b çarp labilecek tipte matrisler olmad klar için yukar daki hata mesaj n al nmaktad r. .* sembolü, elemanlar , iki vektörün kar l kl elemanlar n çarp m ndan olu an ayn uzunlukta yeni bir vektör üretecektir: » c=a.*b c= 12 -10 Benzer biçimde ./ ve .\ operatörleri de geçerlidir. A a da örneklerde inceleyelim: » a=[4 5] a= 4 5 » b=[3 -2] b= 3 -2 » d=a./b d= 1.3333 -2.5000 » e=a.\b e= 0.7500 -0.4000 44 »


MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

E T UZUNLUKTA K VEKTÖR ARASINDA ^ OPERATÖRÜ

B R VEKTÖR VE SKALER ARASINDAK LEMLER : TOPLAMA VE ÇIKARMA LEMLER : A a da örneklerde görüldü ü gibi, bir skaler ile bir vektör operatörü ile i leme sokulursa, skaler vektörün her iki bile eni ile de toplan r: » 4+[2 -2] ans = 6 2 » operatörü için de ayn ey söz konusudur: » 7-[2 -1] ans = 5 8

» a=[4 5] a= 4 5 » b=[3 -2] b= 3 -2 » h=a^b ??? Error using ==> ^ Matrix dimensions must agree. » Yukar da görüldü ü gibi iki vektör aras nda ^ i lemi tan ms zd r. .^ sembolü geçerlidir ve birinci vektörün bile enleri taban ve ikinci vektörün bile enlerini de üst kabul ederek üst alma i lemi sonucu ayn boyutta yeni bir vektör olu turacakt r. A a da örne i inceleyelim: » h=a.^b h= 64.0000 0.0400

45

46

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

MATLAB’DA SKALER , VEKTÖR VE MATR S LEMLER NE G R

B R VEKTÖR VE SKALER ARASINDAK LEMLER : ÇARPMA VE BÖLME

B R VEKTÖR VE SKALER ARASINDAK LEMLER : ÇARPMA VE BÖLME

Bir skaler ile bir vektör operatörü ile i lem sokulursa sonuçta bile enleri skaler ile vektörün bile enlerinin ayr ayr çarp lmas ile olu an yeni bir vektör elde edilir: » 3*[2 -1] ans = 6 -3 Bir skalerin bir vektöre bölümü ise tan ms zd r ( / sembolü ile): » 3/[2 -1] ??? Error using ==> / Matrix dimensions must agree. » Ters bölme ( \ ) sembolü kullan l rsa vektörün bile enlerinin skaler ile bölünmesinden elde edilen iki say yeni bir vektör olu turacakt r: » 2\[4 8] ans = 2 4 Oysa bir vektörün bir skalere bölünmesi tan ml d r ve bile enleri vektörün bile enlerinin skalere bölünmesinden elde edilen yeni bir vektör elde edilecektir: 47 » [4 -8]/2

Bir skaler ile bir vektör operatörü ile i lem sokulursa sonuçta bile enleri skaler ile vektörün bile enlerinin ayr ayr çarp lmas ile olu an yeni bir vektör elde edilir: » 3*[2 -1] ans = 6 -3 Bir skalerin bir vektöre bölümü ise tan ms zd r ( / sembolü ile): » 3/[2 -1] ??? Error using ==> / Matrix dimensions must agree. Ters bölme ( \ ) sembolü kullan l rsa vektörün bile enlerinin skaler ile bölünmesinden elde edilen iki say yeni bir vektör olu turacakt r: » 2\[4 8] ans = 2 4 Oysa bir vektörün bir skalere bölünmesi tan ml d r ve bile enleri vektörün bile enlerinin skalere bölünmesinden elde edilen yeni bir vektör elde edilecektir: » [4 -8]/2

48


Ebe 250 DERS

MATR SLER

DERS N SORUMLUSU: Dr. smail ATACAK

MATR SLER N TANIMLANMASI

26.02.2007

Birden fazla sat r ve sütuna sahip vektörlere matris denir. Noktal virgül (;) i areti ile kolonlar ve virgüle i areti ya da bo luk b rakarak da bir s radaki elemanlar ay rabiliriz. Bu elemanlar n yaz m kö eli parantez "[ ]" içindedir. Matematiksel olarak;

A

ª3 «7 « «¬ 11

4 8 12

5 6 º » 9 10 » 13 14 »¼

Olarak verilen bir matris matlabta

49

50

MATR SLER

MATR SLER Yada;

Ya;

» A=[ 3 4 5 6 7 8 9 10 11 12 13 14]

» A=[ 3 4 5 6; 7 8 9 10; 11 12 13 14] A= 3 4 5 6 7 8 9 10 11 12 13 14

A= 3 4 5 6 7 8 9 10 11 12 13 14 Olarak tan mlanacakt r.

51

52


MATR SLER

MATR SLER Matrislerin Bile tirilmesi Bir matris, ba ka bir matrisin tekrar ndan olu uyorsa; repmat fonksiyonu kullan labilir.

Matrislerin Bile tirilmesi Bir matris ba ka matrislerin bile iminden olu abilir.

>>A = [1 2 3;4 5 6;7 8 9] >>B=[A 10*A;-A [1 0 0;0 1 0;0 0 1]] B= 1 2 3 10 20 30 4 5 6 40 50 60 7 8 9 70 80 90 -1 -2 -3 1 0 0 -4 -5 -6 0 1 0 -7 -8 -9 0 0 1

>> a = [1 2; 3 4] a= 12 34 >> repmat(a,2,3) ans = 121212 343434 121212 343434 53

54

MATR SLER

MATR SLER

Alt indisinin(eleman n n) temsili Matristeki herhangi bir elemana direk ula mak için a a daki gösterim yeterlidir.

Alt indisinin(eleman n n) temsili

>>A(i,j) A= 3 4 5 6 7 8 9 10 11 12 13 14

A a daki gösterim sat r elemanlar n temsilinde kullan l r. >>A(i,:) » A(2,:) Ans=

A= 3 4 5 6 7 8 9 10 11 12 13 14

7

» A(2,3) Ans= 9 A a daki gösterim sutun elemanlar n temsilinde kullan l r. >>A(:,j) » A(:,3) Ans= 5 9 13

8

9

10

: kullan larak belli bir aral ktaki sat r yada sutunlar gösterilebilir. >>A(i:n,:) A(2:3,:) Ans= 7

8

9 12

11

10 13 14

>>A(:,j:n) >>A(:,2:3) Ans= 4 8 12

55

5 9 13

56


MATR SLER

MATR SLER

Matrise sat r sutun ekleme ve eksiltme Ekleme(sutun) >> A(:,j)=[a1 . . .] A= 1 -3 7 4 5 8 >> A(:,4)=[-7 3] A= 1 -3 7 -7 4 5 8 3

Matrise sat r sutun ekleme ve eksiltme Ekleme(sat r) >> A(i,:)=[a1…] A= 1 -3 7 4 5 8 >> A(3,:)=[-1 -3 0] A= 1 -3 7 4 5 8 1 -3 0

57

MATR SLER

58

MATR SLER

Matrise sat r sutun ekleme ve eksiltme Eksiltme(sutun) >> A(:,j)=[] A= 1 -3 7 4 5 8 -2 -7 -11 >> A(:,3)=[] A= 1 -3 4 5 -2 -7

Matrise sat r sutun ekleme ve eksiltme Eksiltme(sat r) >> A(i,:)=[] A= 1 -3 7 4 5 8 -2 -7 -11 >> A(2,:)=[] A= 1 -3 7 -2 -7 -11

59

60


MATR SLER

MATR SLER

Bir eleman n de erini de i tirme

Özel Matrisler: » A=zeros(3,2) A= 0 0 0 0 0 0 3x2 boyutunda 0 » B=zeros(3) B= 0 0 0 0 0 0 0 0 0 » C=ones(2,4) C= 1 1 1 1 1 1 2x4 boyutunda 1 » D=ones(3) D= 1 1 1 1 1 1 1 1 1

>> A(i,j)=a A= 1 -3 7 4 5 8 -2 -7 -11 >> A(2,3)=-22 A= 1 -3 7 4 5 -22 -2 -7 -11

matrisi olu turur.

1 1 matrisi olu turur.

62

61

MATR SLER

MATR SLER

Özel Matrisler: “eye” fonksiyonu ile nxn boyutunda identity( birim) matrisi olu turulabilir. » e=eye(3) e= 1 0 0 0 1 0 0 0 1 Matlab, size ve length komutlar yard m ile size matrisinizin boyutlar n söyler. » a=[ 2 3 4 5 6 7 8 9 10 11]; » s=size(a) s= 2 5 » b=[ 17 11 0 30 40 50]; » k=length(b) k= 6

63

Matris lemleri:

Öncelikle iki ayr matrisimiz olsun. » A=[1 2 3; 4 5 6]; » B=[7 8 9; 10 11 12]; A ve B toplam : » TOPLAM=A+B TOPLAM = 8 10 12 14 16 18 64


MATR SLER

MATR SLER

Matris lemleri:

Matris lemleri:

» A=[1 2 3; 4 5 6]; » B=[7 8 9; 10 11 12]; A’ y B’ den ç karmak; » FARK=A-B FARK = -6 -6 -6 -6 -6 -6 Transpose i lemi; » C=B' C= 7 10 8 11 9 12

>>A=[1 2 3; 4 5 6]; » B=[7 8 9; 10 11 12]; » C=[7 10;8 11;9 12]; Çarpma i lemi: » CARPIM=A*C CARPIM= 50 68 122 167 Elemanlar birebir çarpma i lemi(Eleman elemana): » ECARPIM= A.*B ECARPIM = 7 16 27 40 55 72 By snnkeskin

65

MATR SLER

66

MATR SLER Matris lemleri: Verilen bir X matrisi için: » X=[ 2 -1; 5 8]; Tersini alma i lemi: » Y=inv(X) Y= 8/21 1/21 -5/21 2/21 Bir Z matrisi için: » Z=[1 2; -2 4] Bölme i lemi ayn tersini alma i lemini yap p çarpma i lemi gibi sonuç verir. »K=Z/X K= -2/21 5/21 -12/7 2/7

Matris lemleri:

Verilen bir X matrisi için: » X=[ 2 -1; 5 8] X= 2 -1 5 8 Determinant: » DETERMINANT=det(X) DETERMINANT= 21 67

68


MATR SLER

MATR SLER

Matris lemleri: Verilen bir X matrisi için: » X=[ 2 -1; 5 8]; » Z=[1 2; -2 4] »K=Z/X

Matrislerle Do rusal Denklem Çözümü: 2x+y-z=5 X-2y+3z=-6 -x+y-z=2 eklindeki örnek denklem için öncelikle yap lmas gerekenler: 1) x,y,z nin katsay lar n bir A matrisinde yazal m. » A=[ 2 1 -1 1 -2 3 -1 1 -1]; 2) E itli in ikinci taraf n bir B matrisine yazal m. » B=[ 5 -6 2]; K=[x y z] A.K=B=> K=A^-1*B

» K=Z*inv(X) K= -2/21 5/21 -12/7 2/7 Eleman elemana bölme i lemi: » EK=Z./X EK = 1/2 -2 -2/5 1/2

69

70

MATEMAT KSEL FONKS YONLAR:

MATR SLER Fonksiyon

Matrislerle Do rusal Denklem Çözümü: 3) lemimizi uygulayal m… » K=inv(A)*B K= 1 2 -1 kinci bir gösterim sola bölme ile de olabilir. » K=A\B K= 1 2 -1 4) Denklemin çözümünün x=1, y=2 ve z=-1 oldu u anla l r.

71

Tan m

abs(x)

x’in mutlak de erini al r

sqrt(x)- sqrtm(x)

x’in karekökünü al r

ceil(x)

+ sonsuz yönünde yuvarlar

floor(x)

- sonsuz yönünde yuvarlar

round(x)

En yak n tam say ya tamamlar

exp(x)-expm(x)

x’in Exponential de erini al r

log(x)- logm(x)

x’in e taban nda logaritma de eri

sign(x)

x’in i areti

rem(x,y)

x/y den kalan verir

72


MATEMAT KSEL FONKS YONLAR: Fonksiyon

MATEMAT KSEL FONKS YONLAR:

Tan m

real(x)

karma k say n n gerçel k sm

imag(x)

karma k say n n sanal k sm

conj(x)

karma k say n n e leni i

fix(x)

s f ra doru yuvarlama

log10(x)

10 taban na göre logaritma

log2(x)

2 taban na göre logaritma

sin(x)

x’in sin de eri(radians)

cos(x)

x’in cos de eri(radians)

tan(x)

x’in tan de eri(radians)

asin(x)

x’in arcsin de eri(radians)

acos(x)

x’in arccos de eri(radians)

atan(x)

x’in arctan de eri(radians)

» x=[-2.25 4 -9i 3+4i] x= -2.2500 4.0000 0-9.0000i 3.0000+4.0000i » abs(x) ans = 2.2500 4.0000 9.0000 5.0000 » angle(x)*180/pi ans = 180.0000 0 -90.0000 53.1301 Sonucun derece cinsinden bulunmas için 180/pi ile çarp ld n not ediniz. 73

MATEMAT KSEL FONKS YONLAR:

74

MATEMAT KSEL FONKS YONLAR:

» sqrt(x) ans = 0+1.5000i 2.0000 2.1213-2.1213i 2.0000+1.0000i » real(x) ans = -2.2500 4.0000 0 3.0000 » imag(x) ans = 0 0 -9 4 » conj(x) ans = -2.2500 4.0000 0+9.0000i 3.0000-4.0000i

» k=[2 -3 4.1 -4.1 4.4 -4.4 4.5 -4.5 4.9 -4.9 4.999]; » round(k) ans = 2 -3 4 -4 4 -4 5 -5 5 -5 5 » fix(k) ans = 2 -3 4 -4 4 -4 4 -4 4 -4 4 » floor(k) ans = 2 -3 4 -5 4 -5 4 -5 4 -5 4 » ceil(k) ans = 2 -3 5 -4 5 -4 5 -4 5 -4 5 » sign([1 2 0 -4 -2.44]) ans = 1 1 0 -1 -1

75

76


MATEMAT KSEL FONKS YONLAR:

MATEMAT KSEL FONKS YONLAR:

» m=[4 5]; b=[2 3]; » rem(m,b) ans = 02 4 ü 2 ye bölünce 2 ç kar 0 kal r, 5 i 3 e bölünce 1 ç kar 2 kal r. Benzer bir fonksiyon mod olup detaylar için help mod komutundan yararlanabilirsiniz. » x=[0 0.5 1 2 ] » exp(x) ans = 1.0000 1.6487 2.7183 7.3891

» exp(-x) ans = 1.0000 0.6065 0.3679 0.1353 » p=[0.25 1 exp(1) 10 1e2] p= 0.2500 1.0000 2.7183 10.0000 100.0000 » log(p) ans = -1.3863 0 1.0000 2.3026 4.6052 » log10(p) ans = -0.6021 0 0.4343 1.0000 2.0000

77

MATEMAT KSEL FONKS YONLAR:

78

MATEMAT KSEL FONKS YONLAR:

» d=[0 30 60 90 120 150 180]; » r=pi/180*d; » sin(r) ans = 0 0.5000 0.8660 1.0000 0.8660 0.5000 0.0000 » cos(r) ans = 1.0000 0.8660 0.5000 0 -0.5000 -0.8660 -1.0000 » tan([0 30 60 120 150 180]*pi/180) ans = 0 0.5774 1.7321 -1.7321 -0.5774 0.0000

» s=[0 1 -1 0.5 3^0.5/2]; » 180/pi*asin(s) ans = 0 90.0000 -90.0000 30.0000 60.0000 » 180/pi*acos(s) ans = 90.0000 0 180.0000 60.0000 30.0000 » 180/pi*atan(s) ans = 0 45.0000 -45.0000 26.5651 40.8934

79

80


MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

[ ] Kö eli parantezler, vektörleri ve matrisleri biçimlendirmek için kullan l r. Örne in [6.9,9.64, sqrt(-1) ] elemanlar virgüllerle (veya bo luklarla) ayr lm üç elemanl bir vektördür. Buna kar l k [11 12 13;21 22 23], iki sat r ve üç sütundan ibaret 2x3 lük bir matrisi gösterir. Burada noktal virgül ";"matris olu turulmas nda bir sat r sona erdirip bunu izleyen sat r n olu mas n sa lar. Böylece mxn boyutundaki bir matrisi kolayca olu turmak mümkündür. Vektör ve matrisler [ ] kö eli parantez içinde gösterilir. Örne in bir A matrisinin sat r say s B matrisinin sat r say s na e it ve B nin sat r say s ve A n n sütun say s art B nin sütun say s C nin sütun say s na e it ies [A B; C] biçiminde yeni bir matris olu turmakta mümkündür. A=[ ] Biçiminde bir bildirim bo bir matrisi A de i kenine atar.

( ) MATLAB içinde normal parantez çe itli amaçlarla çe itli yerlerde kullan l r. Ola an yoldan; aritmetik deyimlerin üstünlü ünü belirtmek ve fonksiyon argümanlar n (arguments) kapatmak için kullan l r. Daha genel anlamda da vektör ve matrislerin indislerini kapatmak için kullan l r. E er X ve V bir vektör ise X(V) de bir vektördür ve [ X( V(1) ), X( V(2) ) , . . . . . , X( V(N) ) ] eklinde gösterilir. V'nin elemanlar en yak n tamsay ya yuvarlat larak indisler olarak kullan l r. E er bu tür bir indisin de eri 1 den küçük veya X'in boyutundan küçük olacak olursa hata ortaya ç kar. Baz örnekler verecek olursak; X(3) X vektörünün 3'ncü elaman n gösterir. X( [1 2 3] ) ve benzer ekilde X( [sqrt(2), sqrt(3), 4*atan(1)] )

81

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

82

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

( ) X vektörünün ilk üç eleman n göstermek için kullan l r. E er X'in N adet eleman varsa X( N:-1:1 ) komutu yukar daki i lemi ters çevirir. Benzer ekilde dolayl indisleme matrislerde de kullan l r. Örne in V'nin M eleman ve W'nun N eleman mevcut olsun. Bu durumda A(V,M) A'n n elemanlar ndan olu mu MxN boyutlu bir matrisdir. Burada !'n n indisleri V ve W nun elemanlar d r. Örnek olarak; A( [1,5],: ) =A( [5,1] ),: ) fadesi A matrisinin 1 ve 5'nci sat rlar aras nda yer de i tirme sa lar. . Kesir ay rma i areti. 314/100, 3.14 ve .314e1 ayn anlama gelir. Nokta i areti ayn zamanda eleman elemana çarpma ve bölme i leminde de kullan l r. Kullan l biçimleri; .*, .^, ./, .\ veya .'. eklindedir. Örne in, C=A./B elemanlar c(i,j)=a(i,j)/b(i,j) olan bir matrisdir.

83

... Bir tek sat ra s mayan ifadelerin bir alttaki sat rda devam etti ini gösterir. , Matris indislerini ve fonksiyon argümanlar n ay rmak için kullan l r. Virgül i areti ayn zamanda bir sat ra birden fazla bildirim yaz lmas halinde bildirim komutlar n ay rmak için de kullan l r. ; Noktal virgül bir bildirimde elde edilen sonuçlar n program icras sonunda ekranda görüntülenmesini önlemek için kullan l r. Ayr ca kö eli parantezler içinde matrislere ait sat rlar sona erdirmek için de kullan l r.

84


MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

% Yüzde i areti aç klama sat rlar için kullan l r. Ba nda % i areti bulunan sat rlar icra edilmez. Bir çizgi üzerinde bulunan % i areti, çizginin mant ksal bir sonu oldu unu gösterir. ! '!' i aretini izleyen herhangi bir yaz DOS komutu i lemi görür. Böylece MATLAB içinde DOS komutlar n çal t rma imkan sa lan r.

: Sütun i areti; indislerde, FOR iterasyonlar nda ve muhtemelen her yerde kullan labilinir. Belli ba l kullan m biçimleri a a da oldu u gibidir. J:K, J den ba layarak 1 er 1 er K ya kadar artan bir dizi olu turur. Ve [ J, J+1 ... , K] ayn anlama gelir. J:K da J>K ise bo bir vektörü sonuçland r r. J:I:K J ile ba layan I aral nda artarak K' ya kadar giden bir dizi olu turur ve [ J, J+1, J+2I, . . ., K] ifadesi ile ayn anlama gelir. J:I:K ifadesinde I>0 ve J>K veya I<0 ve J<K olacak olursa bo bir matris sonuçlan r. Sütun i areti ayn zamanda vektörlerin ve matrislerin seçilen sat rlar n , sütunlar n ve elemanlar n ay rmak için de kullan l r. Bu durum a a daki örneklerle de gösterilmi tir. A(:) Tek bir sütun olarak A n n tüm elemanlar d r. Atanan bir bildirimin sol taraf nda A(:) önceki biçimini koruyarak A y doldurur. A( : , J ) A'n n J'inci sütunu ile ayn d r. A( : , J+1) A'n n J'den itibaren birer birer artarak K ya kadar giden elemanlar n gösterir ve A(J), A(J+1), ..., A(K) ile ayn d r. A( :, J : K) Benzer ekilde A( : , J), A( :, J+1), ... ,A( :, K ) ile ayn d r.

85

86

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

‘ T rnak i areti matrislerin transpozesini almay sa lar. X' , X matrisinin karma k e lenik transpozesini ve X.' se e lenik olmayan transpozesini sonuçland r r. Ayr ca 'ANY TEXT' eklindeki aktar m i lemlerinde karakterler için elemanlar ASCII kodlar nda bir vektörü göstermek için kullan l r.

+ Toplama, X+Y iki matrisin toplam n al r. Bu toplam n gerçeklenebilmesi için matrislerin ayn boyutlarda olmas gerekir. Yaln zca matrislerden birisi skalar oldu unda toplam gerçeklenebilir. Bir skalar herhangi bir eye eklenir.

-

* Matrisyel çarp m i lemcisi. X*Y X ve Y matrislerinin matris çarp m n gösterir. Herhangi bir skalar (1x1elemanl matris) her ey ile çarp labilinir. Aksi takdirde X matrisinin sütun say s Y matrisinin sat r say s na e it olmal d r.

.* Eleman elemana çarp m i lemcisi. X.*Y eleman elemana çarpma i lemini gösterir. Birisi skalar olmad kça, X ve Y matrislerinin eleman say lar e it olmal d r. Yaln z bir skalar her ey ile çarp labilinir.

Ç karma, X-Y X matrisinden Y matrisini ç kar r. Burada da toplama i lemindeki benzer ko ullar n gerçeklenmesi gerekir.

87

88


MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

\

/

Matrisyel soldan bölme i lemcisi. A\B B matrisinin A matrisine bölümünü gösterir ki bu da hemen hemen inv(A)*B i lemi ile ayn d r. Yaln z hesaplama biçimleri farkl d r. E er A NxN elemanl bir matris ve B de N elemanl Sütun vektörü ise X=A\B ifadesi Gaussian eliminasyonu yoluyla hesaplanan A*X=B denklemi için bir çözümdür. E er A matrisi kötü bir ekilde ölçeklendirilmi veya hemen hemen tekil ise bir uyar mesaj al n r. A\eye(A) ifadesi A'n n tersini sonuçland r r. E er A mxn olacak ekilde m x n elemanl bir matris ve B de m elemanl sütun vektörü ise X=A\B en küçük kareler cinsinden alt nda ve üstünde saptanan sistem denklemlerinin, A*X=B bir çözümdür.

Matrisyel sa bölme i lemcisi. B/A B matrisinin A matrisine bölümünü gösterir ki bu da hemen hemen B*inv(A) ile ayn d r. Yaln z hesaplama yöntemleri bak m ndan farkl l k gösterir. Di er bir biçimi ile B/A=(A'\'B) d r.

.\ Skalar veya eleman elemana soldan bölme i lemcisi. A.\B deyimi; elemanlar B( i, J)\A(i, J) olan bir matrisdir. Yaln z burada A ve B 'nin ayn boyutta olmas gerekir.

./ Eleman elemana bölme i lemcisi. B./A eleman elemana bölme i lemini gösterir. Bu durumda A ve B matrisinin ayn boyutta olmas gerekir. Yaln z birini skalar olmas halinde buna gerek yoktur. Çünkü bir skalar her ey ile bölünebilir. 3./A ile 3 ./A ayn i lem olmad na dikkat etmek gerekir. Çünkü birinci ifadede nokta 3 rakam n n kesir i aretini gösterdi inden matris bölme i lemini yapt r r ve ikinci ifade de ise nokta eleman elemana bölme i lemini i aret eder.

89

90

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

^

<

Matrisyel kuvvet alma i lemcisi. Z=X^y ifadesi y'nin skalar olmas halinde X'in Y'inci kuvvetini ald r r. E er y birden büyük bir tam say ise kuvvet alma i lemi tekrarl çarpma yolu ile hesaplan r. y'nin di er de erleri için hesaplama özde erler ve özvektörler yolu ile gerçeklenir. Z=x^Y ifadesinde x'in Y'inci kuvvetinin al nmas nda e er Y bir matris ve x bir skalar ise hesaplama i lemi özde erler ve özvektörler kullan larak yap l r. Z=X^Y de X ve Y'nin her ikisinin de matris olmas halinde hata olu ur.

...den küçük ba nt i lemcisi. "<=" ...den küçük veya e ittir i lemcisi. C=A<B bildirimi A ve B matrisleri aras nda eleman elemana kar la t rma yapar ve ayn boyutta bir matrisi sonuçland r r. C matrisinin elemanlar ; ba nt n n gerçek olmas halinde bir ve gerçek olmamas halinde de s f r olarak atan r. A ve B matrisleri ayn boyutta olmal d r. Yaln z birinin skalar olmas halinde bu arta gerek yoktur. Çünkü bir skalar ile kar la t r labilir. Di er ba nt i lemcileri; >, >= , = = , ~ = eklindedir.

.^

>

Eleman elemana kuvvet alma i lemcisi. Z=X.^Y ifadesi eleman elemana kuvvet alma i lemini gösterir. Ancak birinin skalar olmas halinde bu ko ul aranmaz. Çünkü bir skalar ile i lem görebilir.

...den büyük ba nt i lemcisi. ">=" ...den veya e ittir i lemcisi.

= Bildirimleri atamak için kullan l r.

91

92


MATLAB'TA KULLANILAN BELL BA LI KOMUT ARETLER

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

== Mant ksal e ittir ba nt (relational) i lemcisi.

& Mant ksal AND (ve): C=A & B bildiriminde; A ve B matrislerinin her ikisi de s f rdan farkl elemanlara sahip oldu unda 1 ve sadece bir tanesi s f r elemana sahip oldu unda da s f r elemanl bir matris sonuçland r r. A ve B ayn oldu unda da s f r elemanl bir matris sonuçland r r. A ve B nin ayn boyutta matrisler olmas gerekir. Yaln z birinin s f r olmas halinde bu ko ula gerek yoktur.

| Mant ksal OR (veya): C=A | B bildirimi A ve B matrisleri s f rdan farkl elemana sahip oldu unda, 1 ve her ikisinden birisi s f r oldu unda s f r elemanl bir matris sonuçland r r.

~ Mant ksal tamamlay c (complemet) NOT (de il) i lemcisi ~ = : E it de ildir i lemcisi. B~= bildiriminde; A matrisi bir s f r eleman na sahip oldu unda 1 ve s f rdan farkl elemanlara sahip oldu unda 1 ve s f rdan farkl elemanlara sahip oldu unda da s f r elemanl bir matrisi sonuçland r r. 93

MATLAB ortam nda çe itli veri türü tan mlanm t r. Dizi (array) eklinde tan mlanan bu veri türleri a a da maddeler halinde gösterilmi tir. Dizi, MATLAB ortam nda bir adet de i ken içerebildi i gibi bir vektör, iki veya çok boyutlu matris de olabilir. 1. Say sal (numerical) 2. Lojik (logical)- 1 byte uzunlu unda olup, 0 yada 1 de erini al r. 3. Karakter (char)- 2 byte uzunlu unda olup [0, 65535] aral nda bir uzunlu a sahiptir. 4. Hücre (cell) 5. Yap (structure) 6. Fonksiyon kulplar (function handles) 7. Java türleri

94

MATLAB ORTAMINDA KULLANILAN VER TÜRLER 1.

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

Say sal (numerical)

1.

1.1. Tek hassasiyetli say (single)- 4 byte uzunlu unda olup [3e38; 3e38] aral ndaki say lard r. 1.2.Çift hassasiyetli say (double)- )- 8 byte uzunlu unda olup [-1e308; 1e308] aral ndaki say lard r. single >> x=single(4); >> y=single([-4 2;-1 1]; double >> z=4; >> z=[0 -1 4 7]; Yada >> z=double(4); >> z=double([0 -1 4 7]); •

Class fonksiyonu bir de i kenin veri yap s n ö renmeye olanak sa lar.

95

Say sal (numerical) >> class(x) ans = single >> class(y) ans = Single >> class(z) ans = double

96


MATLAB ORTAMINDA KULLANILAN VER TÜRLER 1.

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

Say sal (numerical) 1.3. aretli say lar

1.3.1. aretli tamsay lar (hem pozitif hem de negatif de erleri içerirler) 1.3.1.1. int8 (8 bit i aretli tamsay ):1 byte uzunlu unda olup [-128 ; 127] aral ndaki say lar içerir. 1.3.1.2. int16 (16 bit i aretli tamsay ): 2 byte uzunlu unda olup [32768 ; 32767] aral ndaki say lar içerir. 1.3.1.3. int32 (32 bit i aretli tamsay ): 4 byte uzunlu unda olup [2147483648 ; 2147483647] aral ndaki say lar içerir. 1.3.1.4. int64 (64 bit i aretli tamsay ): 8 byte uzunlu unda olup [92234e14 ; 92234e14] aral ndaki say lar içerir. 1.3.2. aretsiz tamsay lar (sadece pozitif de erleri içerirler) 1.3.2.1. uint8 (8 bit i aretsiz tamsay ):1 byte uzunlu unda olup [0 ; 255] aral ndaki say lar içerir. 1.3.2.2. uint16 (16 bit i aretsiz tamsay ): 2 byte uzunlu unda olup [0 ; 65535] aral ndaki say lar içerir. 1.3.2.3. uint32 (32 bit i aretsiz tamsay ): 4 byte uzunlu unda olup [0 ; 4294967295] aral ndaki say lar içerir. 1.3.2.4. uint64 (64 bit i aretsiz tamsay ): 8 byte uzunlu unda olup [0 ; 18447e15] aral ndaki say lar içerir.

>> a=int16(4.55) a= 5 >> A=int64([1.23 -487 333;-111 -22.2 3]) A= 1 -487 333 -111 -22 3 >> A=uint64([1.23 -487 333;-111 -22.2 3]) A= 1 0

0 0

333 3

97

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

98

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

2. Lojik (logical): dijital veri tan mlanmas ve dönü ümlerinde kullan l r.

2. char(string) karakter tan mlanmas ve dönü ümlerinde kullan l r.

>> n=logical(5) n= 1 >> A=logical([1.23 -487 333;-111 0 -.3]) A= 1 1 1 1 0 1

>> x=char('a') x= a >>name = ['Thomas' ' R. ' 'Lee'] Name= Thomas R. Lee

>> A=([true false true true]) A= 1 0 1 1

99

100


MATLAB ORTAMINDA KULLANILAN VER TÜRLER

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

4. Hücre (Cell)

4.Hücre (Cell) Hücre daha sonra aç klanacak olan MATLAB veri türleri içinde yer al r. Hücre, bir çe it dizidir ve çok boyutlu olabilir. Hücrenin normal dizilerden fark , içindeki elemanlar n farkl türden olabilmeleridir. Hücrenin her bir alt parças nda yer alan sat rlardaki eleman say lar birbirlerine e it olmal d r, fakat bir parçadaki eleman türü di er alt parçadaki eleman türünden farkl olabilir. ekil 2.18’de cell_top adl 4 alt parçadan olu an bir hücre yap s cellA

cellB ‘function’ ‘12345678’

‘length ’ ‘12345678’

3

cellC

2 0

-3 1-2j 4 88

9

-j

3j

6

-5

0.2

cellD 44 -6 -3j 2+4j 4 71 4j

101

MATLAB ORTAMINDA KULLANILAN VER TÜRLER 4. Hücre (Cell) Yukar daki MATLAB sat rlar ile ilk ad m olarak tüm alt hücreler MATLAB ortam na ta nm oldu. Bundan sonraki ad m tüm alt hücreleri kullanarak cell_top adl ana hücreyi olu turmakt r. Hücrenin MATLAB’a tan t lmas nda ‘{‘ ve ‘}’ i aretleri kullan l r; >>cell_top={cellA cellB ; cellC cellD} (‘enter’) cell_top = [3x8 char ] [1x3 double] [7x1 double] [7x1 double] >> Yukar da elde edilen sonuçta da görüldü ü gibi ekranda cell_top adl hücreyi olu turan veri tipleri ve bunlar n boyutlar görülmektedir. Kullan c isterse cell_top adl hücrenin her hangi bir alt parças n (örnek olarak cellA) MATLAB ortam nda 103 görüntüleyebilir;

>>cellA=[‘function’; ‘length ’; ‘12345678’] (‘enter’) cellA = function length 12345678 >>cellB=[3 -5 0.2] cellB = 3.0000 -5.0000 0.2000 >> >>cellC=[2 -3 9 –j 1-2j;0 4 3j 6 88] (‘enter’) cellC= 2.0 -3.0 9.0 0-1.0i 1.0-2.0i 0 4.0 0+3.0i 6.0 88.0 >> >>cellD=[44; -6; –3j; 2+4j; 4; 71; 4j] (‘enter’) cellC = 44.0 -6.0 0 - 3.0i 2.0 + 4.0i 4.0 71.0 0 + 4.0i >>

(‘enter’)

102

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

4. Hücre (Cell) >> celldisp(cell_top) (‘enter’) cell_top{1,1} = function length 12345678 cell_top{2,1} = 44.0000 -6.0000 0 - 3.0000i 2.0000 + 4.0000i 4.0000 71.0000 0 + 4.0000i cell_top{1,2} = 3.0000 -5.0000 0.2000 cell_top{2,2} = 44.0000 -6.0000 0 - 3.0000i 2.0000 + 4.0000i 4.0000 71.0000 0 + 4.0000i

104


MATLAB ORTAMINDA KULLANILAN VER TÜRLER

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

4. Hücre (Cell)

Kullan c n n cell_top hücresi hakk nda dikkat etmesi gereken ili ki türü a a da gösterilmi tir: cell_top(1,1)=cellA cell_top(1,2)=cellB cell_top(2,1)=cellC cell_top(2,2)=cellD Kullan c , cell_top adl verinin türünü ö renmek isterse class komutu kullanmal d r: >>class(cell_top) ans = cell

5. Yap (Structure) MATLAB ortam nda tan ml di er bir veri türü ‘yap ’ d r. Yap ’lar n MATLAB ortam nda kullan lma nedeni; bir konu hakk nda sahip olunan bir çok bilginin bir arada tutulma ihtiyac d r. Örnek olarak bir ki inin ya ad ülke, ehir, mahalle, cadde, sokak, apartman, daire gibi birbirini takip eden zincirleme bilgiler yap ortam için bir kullan m alan olu turur.

105

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

106

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

5. Yap (Structure) Örnek olarak kimlik adl bir yap olu turulsun. Bu yap içinde; cinsiyet, ülke, ehir, mahalle, cadde, sokak, apartman, daire gibi alanlar (field) içersin. Yap olu tururken yap ‘ad ’ ile ‘alanlar’ birbirlerinden nokta i areti ile ayr lmal d r; >> kimlik.isim= ‘Mehmet Sehit’ (‘enter’) kimlik = isim: 'Mehmet Sehit' >> kimlik.ulke= ‘Turkiye’ (‘enter’) kimlik = isim: 'Mehmet Sehit' ulke: 'Turkiye' >> kimlik.cinsiyet= ‘Erkek’ (‘enter’) kimlik = isim: 'Mehmet Sehit' ulke: 'Turkiye' cinsiyet: 'Erkek'

107

fprintf ('ç k ta gösterilmesi istenen ifade', 'ifadenin gösterilme biçimi', de i ken listesi) ‘Ç k ta gösterilmesi istenen ifade’: T rnak içine hangi ifade yaz l rsa ekranda bu ifade gözükür. 'ifadenin gösterilme biçimi': Burada, ifadenin MATLAB ortam nda ald de erin hangi formatta ekrana yaz laca n belirten kodlar kullan l r. Bu k s mda % i aretinin arkas ndan hassasiyet belirleme ve dönü üm (c,d,e,E,f,F,g,G, i,o,s,u,x,X) karakterlerinden biri kullan l r. Örne in s; de i ken olarak 'karakter' seçildi i zaman kullan l r. Bu karakterlerin baz lar n n ne ifade etti i a a daki örneklerde gösterilmi tir. Di er karakterler ile ilgili bilgi ise etkile imli yard m penceresinden ö renilebilir. Daha sonra kullan lan \n,\r,\t,\b,\f gibi tan mlar ile de (s ras ile); sat rba , yeni sat r, sekme, geriye do ru silme ve yeni sayfa i lemi 108 gerçekle tirilebilir.


MATLAB ORTAMINDA KULLANILAN VER TÜRLER

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

fprintf

%a.bf : f ifadesi say n n sabit noktal oldu u anlam na gelir (default olarak short e format ndad r). f say s gösterim olarak ‘a.b’ gibi iki say dan meydana gelir. ‘a’ say s de i kenin ald de erin i areti, tam k sm ve varsa noktay da dahil ederek noktadan sonraki rakam say s n içerir. ‘b’ say s ise sabit noktal say n n noktadan sonra ekrana yaz lmas istenen rakam say s n gösterir. E er tamsay için kullan lacak rakam say s ‘a’, olmas gerekenden az olsa bile ekrana yaz lan sonuç hatal olarak ortaya ç kmaz. >> sicaklik=1056.789432; (‘enter’) >>fprintf('sicaklik=%4.0fderece',sicaklik) (‘enter’) sicaklik=1057derece >>fprintf('sicaklik = %4.1f derece',sicaklik) (‘enter’) sicaklik = 1056.8 derece

109

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

fprintf Örnek olarak ‘Ahmet Sad k’ ad ndaki bir ö rencinin ad , soyad , okul numaras , ilgili dersi, bu dersten ald not alta alta ekrana yazd r ls n. Bunun için fprintf komutundan yararlan labilir; >>Ad=’Ahmet’; (‘enter’) >>Soyad=’Sad k’; (‘enter’) >>Numara=’307’; (‘enter’) >>Ders=’Matematik’; (‘enter’) >>Not=45.75; (‘enter’) >>fprintf(‘Ad:%s\nSoyad: %s\nNumara:%s\nDers: %s\nNot:%3.1f’,... Ad,Soyad,Numara,Ders,Not) (‘enter’) Ad:Ahmet Soyad: Sad k Numara:307 Ders: Matematik Not:45.8 111

fprintf %a.be : e ifadesi say n n üstel oldu u anlam na gelir (default olarak short e format ndad r). e say s gösterim olarak ‘a.b’ gibi iki say dan meydana gelir. ‘a’ say s de i kenin ald de erin i areti, nokta için (bir) ve üstel ifade için 5 haneli (e harfi+üssün i areti+üssün de eri) say y içerir. ‘b’ say s ise noktadan sonraki say y gösterir. >>fprintf('sicaklik=%8.3ederece',sicaklik) (‘enter’) sicaklik=1.057e+003derece %a.bg : g ifadesi say n n üstel oldu u anlam na gelir (default olarak short e format ndad r). g say s gösterim olarak ‘a.b’ gibi iki say dan meydana gelir. g'nin e'den fark , say y daha da k saltmas d r (bazen formata göre say y yuvarlar). >>fprintf('sicaklik=%4.0g derece \n',sicaklik) (‘enter’) sicaklik=1e+003 derece 110 (bir sat r atland )

MATLAB ORTAMINDA KULLANILAN VER TÜRLER

fprintf Yukar da \n komutu her bir bilginin alt alta yaz lmas n sa lamaktad r. E er yukar da \n komutu kullan lmasayd bilgiler ayn sat ra yan yana yaz l rd . \n yerine \t konulsayd sonuçlar ayn sat ra fakat aralar na bo luk gelecek ekilde yerle tirilecekti. \n komutundan önce yaz lan s komutu ise de i kenin ‘karakter’ formunda oldu unu göstermektedir. fprintf komutunun kompleks say lar n yaln zca reel k s mlar n gösterdi i unutulmamal d r. Bu nedenle kompleks say lar n kullan ld program ve hesaplamalarda fprintf komutu yerine disp komutunun kullan lmas daha uygun olur. 112


EBE_250 DERS

Grafik Çizimlerinin Temelleri

DERS N SORUMLUSU: Yrd. Doç. Dr. smail ATACAK 05.03.2007

113

114

MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

Grafik esasl bir programlama dili olan MATLAB` n son sürümleri ile birlikte grafik özellikleri daha da güçlendirilmi tir. MATLAB yüksek seviyeden grafik olu turma rutinler tak m na sahiptir. Bu rutinler dikdörtgen (xy) ve kutupsal eksenlerde çizgi grafikleri, çubuk ve histogram grafikleri, d hat (contour) grafikleri, a gözü (mesh) ve yüzey grafikler ve canland rma (animation) gibi veri sunu teknikleri kullan r. Bunlara ilaveten renk, gölgelendirme, eksen etiketleme, ve grafiklerin genel görünü ü gibi özellikleri de denetleme imkan vard r.

MATLAB` n nesneye yönelik grafik sistemi olan grafik yönetimi (Handle Graphics) kullan larak MATLAB` n verilerinin grafiklerini olu turma i lemleri üzerinde daha hassas bir denetim kurulabilir veya kullan c kendi grafik komutlar n geli tirebilir. Grafik yönetimini (Handle Graphics) kullanarak menüler, t klama dü meleri, metin kutular ve di er kullan c arabirim ayg tlar olu turulabilir. 116

115


MATLAB ORTAMINDA GRAF K LEMLER ekil Penceresi: MATLAB grafik ç k lar n ekil penceresi ad verilen ve komut penceresinden ayr pencereye gönderilir. MATLAB içinde bu pencere (figure) bir ekil olarak görülür. Bu pencerenin karakteristi i, kullan lan bilgisayar n pencereleme sistemi ve MATLAB ekil nitelikleri ile denetlenir. Grafik fonksiyonlar , haz rda yoksa yeni ekil penceresi olu turulur. Mevcut bir ekil varsa MATLAB bu pencereyi kullan r. E er birden fazla ekil mevcut ise bunlardan bir tanesi halihaz r ekil (genellikle kullan lan son 117 ekil) olarak kullan l r.

MATLAB ORTAMINDA GRAF K LEMLER ekil Penceresi: Grafik Editörü Grafik editörü kullan m kolay bir araç olup olu turulan grafiklerin üzerinde baz eklemeler ve de i ikler yapmak amac ile kullan l r. Grafik editörün sa lad belli ba l özellikler: 1.Metin, ok ve çizgi aç klay c notlar eklemek 2.Eksenleri tan mlama, ba l k, aç klay c bilgi(legend), eksen çizgilerin i aretlenmesi, ve çizim alan n n karelere ayr lmas (grid) gibi eklemeler yapmak. 3.Çizgi türü, kal nl , rengi ve i aretleyicisi gibi grafik çizgisi özelliklerini de i tirmek

MATLAB ORTAMINDA GRAF K LEMLER ekil Penceresi:

118

MATLAB ORTAMINDA GRAF K LEMLER iki ve üç boyutlu grafik çizmek için kullan m çok kolay bir çok komut vard r. Bunlardan baz lar unlard r: Fonksiyon

119

Tan m

plot

x-y ekseninde do rusal iki boyutlu grafiklerin çizimine olanak sa lar.

loglog

x-y

semilogx

x-y ekseninde yar logaritmik iki boyutlu grafiklerin çizimine olanak sa lar. (x ekseni logaritmik)

semilogy

x-y ekseninde yar logaritmik iki boyutlu grafiklerin çizimine olanak sa lar. (y ekseni logaritmik)

mesh

A çizimlerini olu turmak için kullan l r.

contour

soline tipi grafikleri çizdirmek için kullan l r.

ekseninde logaritmik iki boyutlu grafiklerin çizimine olanak sa lar.

120


MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler (Do rusal grafikler)

iki ve üç boyutlu grafik çizmek için kullan m çok kolay bir çok komut vard r. Bunlardan baz lar unlard r: Fonksiyon

Tan m

plot3

x-y-z ekseninde do rusal üç boyutlu grafiklerin çizimine olanak sa lar.

Surface

Yüzey nesnesi olu turmak için kullan lr.

bar

Çubuk tipi grafikleri çizdirmek için kullan l r

pie

Pasta dilimi kullan l r.

area

Alan tipi grafikleri çizdirmek için kullan l r.

tipi

grafikleri

çizdirmek

Plot: x ve y eksenlerini do rusal ölçeklendirerek verilerin grafi ini çizen fonksiyondur.

kulan m: 1. plot(Y) (matrislerde her bir sutuna göre çizim yapar. X ekseni sat r indeksini y ekseni sutundaki veriyi temsil eder.)

için

121

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) >>A=[1 -1 1; -2 2 2;-3 3 -3];

122

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) 2. >>plot(X1,Y1)

>>plot(A) >> x=0:0.1:10; >> y=x.^2-7; >> plot(x,y)

123

124


MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler) 3. >>plot(x1,y1,x2,y2..)

Çizgiler, i aretler ve renkler: Yukar daki örneklerde, MATLAB grafikleri çizerken kesiksiz renkli çizgi seçilmi tir. plot komutu içinde ilave argümanlar kullanarak çizgi biçimini ve renkleri de i tirmek mümkündür. Bunun için kullan labilecek seçenekler unlard r:

>> x1=0:0.1:10; >> y1=x1.^2-7; >> y2=x1.^2-2*x1+4; >> plot(x1,y1,x1,y2)

125

MATLAB ORTAMINDA GRAF K LEMLER

126

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) 4.>> plot(x,y,‘renksembol')

ki boyutlu grafikler: (Do rusal grafikler)

>> x1=0:0.1:10; >> y1=100*sin(x1); >> plot(x1,y1,‘r:')

127

>> x1=0:0.1:10; >> y1=100*sin(x1); >> plot(x1,y1,‘blueo')

128


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) 5.>> plot(x,y,‘renksembol‘,’linewidth’,n) >> x1=0:0.1:10; >> y1=100*sin(x1); >> plot(x1,y1,‘b-‘,’linewidth’,3)

>> x1=0:0.1:10; >> y1=100*sin(x1); >> plot(x1,y1,‘red*‘,’linewidth’,3)

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

>> >> >> >>

x1=0:0.1:10; y1=100*sin(x1); plot(x1,y1,‘b-‘,’linewidth’,3) grid on

Izgara çizgileri(Grid) Grafikleri kolay de erlendirme aç s ndan zgara çizgileri faydal d r. Bu çizgiler grafi e grid komutu ile on eklenebilir, yada grid off grafikten komutu ile kald r labilir.

129

130

MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler)

Eksen etiketleri Grafiklerde eksenlere etiketler a a daki komutlar kullan larak verilebilir. X ekseni içinÆxlabel >>xlabel(‘eksen isimi’) Y ekseni içinÆylabel >>ylabel(‘eksen isimi’) Z ekseni içinÆzlabel >>zlabel(‘eksen isimi’) Grafik ba l içinÆtitle >>title(‘ba l k isimi’)

Eksen etiketleri

131

>> >> >> >> >> >> >>

x1=0:0.1:10; y1=100*sin(x1); plot(x1,y1,‘b-‘) grid on xlabel('zaman') ylabel('gerilim') title('sinüs fonksiyonu')

132


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Gösterge ekleme Grafi e legend komutu ile

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Grafi in içerisine Metin ekleme Grafi in içerisine text yada gtext komutlar ile gösterge

gösterge eklenebilir. >>legend(‘1.veri’,……)

eklenebilir. ki komut aras ndaki fark text komutunda koordinatlar belirtmek zorunda olman zd r.

>>x=[0:0.1:2*pi]; >>y=sin(x); >>z=cos(x); >>plot(x,y,x,z,'linewidth',2) ); >>title(‘Guc kaynagi','fontsize',14); >>xlabel(‘zaman’,'fontsize',14); >>ylabel(‘de er’,'fontsize',14); >>legend(‘gerilim’,‘ak m’) >>grid on

>>text(x,y,‘metin’)

x ve y koordinat de erleri

>>x=[0:0.1:2*pi]; >>y=sin(x); >>z=cos(x); >>plot(x,y,x,z,'linewidth',2) >>text(3,0.7,'gerilim') >>text(5,0.7,'ak m') >>grid on 133

134

MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler)

Grafi in içerisine Metin ekleme

gtext

Grafi in içerisine Metin ekleme komutunda koordinatlar belirtilmez komut içerisindeki yazm oldu unuz metni mousla istedi iniz koordinata b rak rs n z.

>>gtext(‘metin’)

>>x=[0:0.1:2*pi]; >>y=sin(x); >>z=cos(x); >>plot(x,y,x,z,'linewidth',2) >>gtext('gerilim') >>gtext('ak m') >>grid on

135

136


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Grafi in içerisine Metin ekleme

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Metin yazd rma amaçl komutlarda; A a da bir k sm verilen özellikleri komutla birlikte kullanarak metne ait biçim özelliklerini de i tirebilirsiniz. -BackgroundColor=‘blue’,’yellow’.. -Color=‘blue’,’yellow’.. -FontAngle=‘normal’,’italic’,.. -FontName=‘Arial’,’Helvetica’,.. -FontSize=12,13,17… -FontWeight=‘normal’, ‘light’,’bold’.. -Rotation=20,40,90…

137

MATLAB ORTAMINDA GRAF K LEMLER

138

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler)

Metin yazd rma amaçl komutlarda;

>>x=[0:0.1:2*pi]; >>y=sin(x); >>z=cos(x); >>plot(x,y,x,z,'linewidth',2)

XLABEL('text','Property1',PropertyValue1,'Property2',PropertyValu e2,...) YLABEL('text','Property1',PropertyValue1,'Property2',PropertyValu e2,...) TITLE('text','Property1',PropertyValue1,'Property2',PropertyValue 2,...) TEXT(X,Y,'text','Property1',PropertyValue1,'Property2',PropertyVal ue2,...)

139

>>title(‘Guc kaynagi',’ FontAngle’,’italic’,’ Color’,’red’, 'fontsize',18); >>xlabel(‘zaman’, ’ FontAngle’,’italic’, ’ BackgroundColor’,’yellow’, ’ Color’,’blue’, 'fontsize',16); >>ylabel(‘de er’,'fontsize',16); >>grid on

140


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Grafiklerin Ayn ekil penceresinde üst üste çizilmesi Normal olarak bir ekil penceresine bir grafik çizdirilebilir. Arka arkaya yap lan çizimlerde son çizim pencerede kalacakt r. Hold on komutu yap lan çizimi dondurarak, pencereye birden fazla çizime olanak sa lar. Ayn ekilde hold on ile dondurulan bir ekil de hold off komutu kullan larak dondurma i lemi iptal edilebilir.

141

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

142

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

Grafiklerin Ayn ekil penceresinde üst üste çizilmesi t = 0:pi/100:2*pi; y1 = 4*sin(t); y2 = sin(t-pi/4); y3 = 4*cos(t);

Grafiklerin Ayn ekil penceresinde üst üste çizilmesi

plot(t,y1,'red') hold on plot(t,y2,'blue') hold on plot(t,y3,‘black')

143

144


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler) Farkl ekil pencerelerine grafik çizdirme

t = 0:pi/100:2*pi; y1 = 4*sin(t); y2 = sin(t-pi/4); y3 = 4*cos(t);

Farkl ekil pencerelerine grafik çizdirme Birden fazla grafi i farkl ekil pencerelerinde çizdirmek için ayr ayr ekil penceresi açmay gerektirir. Birden fazla ekil penceresi açmak için ise figure komutu kullan l r.

figure(1) plot(t,y1,'red') figure(2) plot(t,y2,'blue') figure(3) plot(t,y3,'black')

145

MATLAB ORTAMINDA GRAF K LEMLER

146

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler)

Farkl ekil pencerelerine grafik çizdirme

Farkl ekil pencerelerine grafik çizdirme

147

148


MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Do rusal grafikler)

ki boyutlu grafikler: (Do rusal grafikler)

Farkl ekil pencerelerine grafik รงizdirme

ekil Penceresinin Bรถlmelere ayr lmas ekil penceresini bรถlmelere ay rmadaki amaรง ayn ekil penceresinde farkl bรถlmelere grafik รงizimi yapt rmakt r. Subplot komutu bir grafik ekran n bรถlmeye yarar. Kullan m subplot(m,n,p) eklindedir.Ekran m tane sat r n tane sรผtundan olu an p tane grafik ekran haline getirir. Mesela subplot(2,2,1) komutu ekran dรถrde bรถler ve bunlardan birincisini aktif hale getirir. รถyle bir tablo yararl olabilir.

149

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

150

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Do rusal grafikler)

ekil Penceresinin Bรถlmelere ayr lmas t = 0:pi/100:2*pi; y1 = 4*sin(t); y2 = sin(t-pi/4); y3 = 4*cos(t);

ekil Penceresinin Bรถlmelere ayr lmas

subplot(3,1,1) plot(t,y1,'red') subplot(3,1,2) plot(t,y2,'blue') subplot(3,1,3) plot(t,y3,'black')

151

152


MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Logaritmik grafikler) Üç türlü logaritmik grafik imkan vard r. {semilogx(x,y): x ekseninde 10 tabanl logaritmik eksen kullan l r ve plot(log10(x),y) ile ayn sonucu verir. {semilogy(x,y): y ekseninde 10 tabanl logaritmik eksen kullan l r ve plot(x,log10(y)) ile ayn sonucu verir. {loglog(x,y): x ve y eksenlerinde 10 tabanl logaritmik eksen kullan l r ve plot(log10(x),log10(y)) ile ayn sonucu verir.

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: ( (Logaritmik g g grafiklerloglog)

>>x = 0:1:100; >>loglog(x,exp(x),'-s') >>grid on

153

MATLAB ORTAMINDA GRAF K LEMLER

154

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: ikler: ( (Logaritmik Logaritmik grafiklerL grafikler semilogx)

ki boyutlu grafikler: ler: ( (Logaritmik Logaritmik grafiklerL semilogy)

>>x = 0:1:100; ,'-s') >>semilogx(x,exp(x),'-s') >>grid on

>>x = 0:1:100; s') >>semilogy(x,exp(x),'-s') >>grid on

155

156


MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (Çubuk) Bar fonksiyonu kullan larak çizdirilir.

ki boyutlu grafikler: (Çubuk)

-bar(x,y)

>> x=[1990 1991 1992 1993 1994]; >> y=[70 40 90 50 80]; >> bar(x,y))

-bar(x,y)

-bar(...,'grouped') produces the default vertical grouped bar chart. -bar(...,'stacked') produces a vertical stacked bar chart. -bar(...,LINESPEC) uses the line color specified (one of 'rgbymckw').

157

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Çubuk)

158

MATLAB ORTAMINDA GRAF K LEMLER ki boyutlu grafikler: (Çubuk)

Özellikleri Kullanarak çizim yapt rabilirsiniz

-bar(x,y,

'grouped')

>> x=[1990 1991 1992 1993 1994]; >> y=[70 40 90 50 80]; >> bar(x,y, 'grouped', 'BarWidth',0.3, 'FaceColor', 'red')

159

160


MATLAB ORTAMINDA GRAF K LEMLER

MATLAB ORTAMINDA GRAF K LEMLER

ki boyutlu grafikler: (pasta dilimi)

ki boyutlu grafikler: (alan)

pie fonksiyonu kullan larak çizdirilir. pie(X) >>y=[70 40 90 50 80]; pie(X,{….etiketler…}) >>pie(y,{'A','B','C','D','E'})

Alan tipi grafikleri

Pasta dilimi grafikleri

area(X,Y)

area

fonksiyonu kullan larak çizdirilir. >>y=[70 40 90 50];

area(...,'Prop1',VALUE1,….) ( , p , , ) >>x=[1 [ 2 3 4];,area(x,y,’facecolor’,’red’) ];, ( ,y, , )

161

MATLAB ORTAMINDA GRAF K LEMLER Üç boyutlu grafikler Üç boyutlu do rusal grafiklerin çiziminde plot3 fonksiyonu, çubuk tipi grafiklerin çiziminde bar3 fonksiyonu ve pasta dilimi tipi grafiklerinin çiziminde pie3 fonksiyonu kullan l r. plot3(x,y,z) plot3(x1,y1,z1,s1,x2,y2,z2,s2,x3,y3,z3,s3,...) plot3(x,y,z,’özellik1’,de er1……………………..) bar3(Y,Z) bar3(...,'detached') produces the default detached bar chart. bar3(...,'grouped') produces a grouped bar chart. bar3(...,'stacked') produces a stacked bar chart. bar3(...,LINESPEC) pie3(X) pie3(...,{..etiketler..)

163

162


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.