SlideShare a Scribd company logo
SAYISAL ANALİZ
Matlab’a Giriş
Derleme Ders
Notları
Öğr. Gör. Arzu ERENER
email:ae76@hotmail.com.tr
2
1. Kaynakça
Sayısal Analiz
1. Octave
http://www.gnu.org/software/octave/download.html
2. Matlab
http://www.mathworks.com/products/matlab/
3. Excel
4. Steven T. Karris, Numerical Analysis Using MATLAB and
Excel, Third Edition, 2007, Orchard Publications
5. MATLAB, The Language of Technical Computing, Getting
Started with MATLAB, Version 5
6. Mehmet Uzunoğlu- Ömer Çağlar Onar, Her Yönü ile Matlab,
2003 Baskı
7. MATLAB PROGRAMLAMAYA GİRİŞ,
http://www.tugrulaktas.com/dersnotlari/Matlap/matlab[2].pdf
8. Ali Yazıcı ders notları, Matlab 7.0, hızlı öğrenme Klavuzu,
Sayısal Yöntemler Derleyen: A.Gün, Denetleyen:
A.Karamancıoğlu, OGU-EE.003, Ağustos 2002, MATLAB’E
GiRİŞ
9. CORS-TR, Ders 2 : MATLAB ile Matris İşlemleri
Eğitim,Seminerleri Serisi : MATLAB’e Giriş
10. http://www.mathworks.com/matlabcentral/
3
1. Kapsam
Sayısal Analiz
o 1. Matlab'ın Genel Yapısı
o 2. Matlab Kullanımında Temel Kurallar
o 3.1. İfadeler
o 3.2.Değişlenler
o 3.3. Sayılar
o 3.4 Operatörler(sayısal işlemciler)
o 3.5. Fonksyonlar
o 3.6. Özel Sabitler
o 4. Vektörler
o 5. Matlab'da Dizi (Matris) İşlemleri
o 5.1. Matrislerde Elemanlar
o 5.2. Genel Matrisler
o 6. Matrisler ve İşlemler
4
Matlab; yüksek performanslı bir teknik programlama dilidir.
Matlab açılımı ingilizce “MATrix LABoratory” den gelmektedir.
Başlangıçta MATLAB özellikle mühendislik alanında, iyi grafik özelliklere sahip
daha çok sayısal hesaplamalarda kullanılmak amacı ile geliştirilmiş bir paket
programlama dili olarak ortaya çıkmıştır.
Matlab; matrix esaslı matematik ortamında kullanılmak üzere geliştirilmiş
etkileşimli bir paket programlama dilidir.
İlk sürümleri Fortran diliyle hazırlanmış olmakla beraber son ürümleri (2000
yılı itibari ile 5.1) C dilinde yazılmıştır.
1. MATLAB
Sayısal Analiz
5
MATLAB mühendislik alanında;
•Matematik ve hesaplama işleri, algoritma
geliştirme.
•Verilerin analizi, incelenmesi ve
görüntülenmesi.
•veri çözümleri ve
•grafik işlemlerinde
•Modelleme, benzetim ve prototipleme.
kullanılabilecek genel amaçlı bir program olmakla
beraber özel amaçlı modüler paketlerede sahiptir.
Fortran ve C dili gibi yüksek seviyeli programlama
dili ile yapılabilen hesaplamaların pek çoğunu
MATLAB ile yapmak mümkündür.
1. MATLAB
Sayısal Analiz
6
1970’lerin sonunda Cleve Moler tarafından yazılan Matlab programının tipik
kullanım alanları:
Matematiksel hesaplama işlemleri
Algoritma geliştirme ve kod yazma
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.
1. MATLAB
Sayısal Analiz
7
oMatlab'ın resmi sitesi: http://www.mathworks.com,
oörnek uygulama ve teknik literatür için:
www.mathworks.com/applications/tech_comp...nicalliterature.html
Ayrıca http://www.mathworks.com/matlabcentral/ : kod paylaşımı
oMatlab’in Türkiye temsilcisi Bursa merkezli Figes firmasıdır.
oWeb adresi: http://www.figes.com.tr
oHaber grubu: matlabturk@yahoogroups.com
1. MATLAB
Sayısal Analiz
8
1. MATLAB
Sayısal Analiz
Matlab matrix tabanlı bir dildir.
Matlabda ilk başlangıçta herşeyi matris olarak düşünmek yararlı olacaktır.
9
1. MATLAB
Sayısal Analiz
oAraç kutuları,özel sorunların çözümü için
MATLABa uyarlanan MATLAB işlevlerinin bir
tür kitaplıklarıdır.
oAraç kutuları, açık ve eklenebilir olup; kendi
algoritmalarını ve ekini görebilirsiniz.
oSimulink :
oBlok diyagram arayüzü ile doğrusal olmayan
simulasyonu ve “canlı” simulasyon
yetenekleriyle öz sayıları, MATLAB’ın
grafiklerini ve dil fonksiyonlarını birleştiren
bir sistemdir.
10
oMatlaba başlamanın en iyi yolu matrislerin nasıl ele alınması gerektiğini
öğrenmektir.
oMATLAB da bir matrix, dikdörtgen sayılar dizisidir.
o1x1 matris scaler sayı,
omx1 matris sütun matrisi
o1xn matris satır matrisi
omxn matris m satırlık ,n sütunluk matristir.
1. MATLAB
Sayısal Analiz
11
1. Program Nasıl Başlatılır?
Başlat -->Tüm Programlar-->Matlab
veya
Command Window: Matlab
2. Program Nasıl Sonlandırılır?
MATLAB Programlama dilini sonlandırmak
için
>> quit
yada
>> exit
komutları kullanılır.
1. Matlab'ın Genel Yapısı
MATLAB
12
MASA ÜSTÜ KOMUT PENCERESİ
Çalışma Dizini
Çalışma Alanı
Komut
Geçmişi
Komut Satırı
MATLAB programını ilk çalıştırdığınızda karşınıza çıkacak ekran aşağıdaki gibidir.
1. Matlab'ın Genel Yapısı
MATLAB
13
Matlabı çalıstırdığımızda, karsımıza ana pencere gelir.
Bu pencerede
File,
Edit,
Debug,
Parallel,
Desktop,
Window ve
Help
ana baslıkları vardır.
Bu baslıklar altından, diğer Windows programlarında alısılagelmis benzer
islemler
1. Matlab'ın Genel Yapısı
MATLAB
14
Burada Desktop Desktop Layout ile Matlabın masaüstü yerlesimini
düzenleyebilirsiniz.
Örneğin; Default ile varsayılan görünümünü,
Command Window Only ile sadece klasik komut penceresini
1. Matlab'ın Genel Yapısı
MATLAB
15
Command Window: Bu pencere komut penceresidir
Bu pencereden Matlab ile ilgili komutları klavyeden girer, komutun
islemesini sağlamak için de Enter tusuna basılır.
Komutları girdiğimiz satır >> ile baslar ki bu satıra komut satırı denir
Eg.Yarıçapı 3.6 olan
bir daire alanı
hesaplayalım
1. Matlab'ın Genel Yapısı
MATLAB
16
Bu pencere o ana kadar komut satırından girilen komutları gösterir.
İstersek bunların birini fareyle seçer, ya da bir kaçını veya tümünü fare ve
asağı-yukarı yön tusları yardımıyla seçer ve delete tusuna basarak silebiliriz
Command History
1. Matlab'ın Genel Yapısı
MATLAB
17
oKomut satırından ya da çalıstırılan bir dosya ya da fonksiyon ile hafızada
olusturulan değiskenlerin adlarının, tiplerinin ve özelliklerinin görüntülendiği
penceredir.
oÇalışma Alanı MATLAB’da işletilen fonksyonların veya komutların oluşturduğu
değişkenlerin depolandığı bir merkezdir.
oBöylelikle tüm değişkenlere belli bir kaynaktan ulaşılabilmektedir, bu da
programlama sırasında değişkenlerin yerini, belirtmeden, bu değişkenleri kullanma
imkanı sağlamaktadır.
Workspace
Üstüne sağ tuş yapıp
özellikler eklenebilir
eg.size
1. Matlab'ın Genel Yapısı
MATLAB
18
Workspace
Örneğin:
c değiskeni 1x1 boyutunda bir matris yani sayı,
b değiskeninin ise 3x2 boyutunda bir matris, yani üç satır ve 2 sütundan
olusan bir matris,
nasılsın adlı değisken de 6 karakterden olusan bir karakter zinciri (string)
olduğu görülür.
1. Matlab'ın Genel Yapısı
MATLAB
Örnek :
Command Window’a
alttaki değerleri yazıp
inceleyin:
a = 4; b = 5; c = a*b
nasılsın=‘iyidir’
19
Matlab Dizi Editörü
oA değişkenine çift tıklandığında Matlab Dizi Editörü açılır.
oBurda değişkenlerin içerikleri görüntülenir ve değiştirilebilir.
1. Matlab'ın Genel Yapısı
MATLAB
20
who : çalışma alanında hangi değişkenler olduğu
whos: bu değişkenlerin yapıları görülmektedir.
what; komutu kullanıcı diskinin halihazır dizininde mevcut M-
dosyaları listesini verir.
1. Matlab'ın Genel Yapısı
MATLAB
21
clc: Komut penceresindeki satırları silmeye yarar
clear: Hafızadaki değişkenler silinir
1. Matlab'ın Genel Yapısı
MATLAB
22
Matlab Çalışma Dizini penceresindeki “ aşağı ok” basılarak çalışma dizini
seçilebilir.
Current Folder’da çalışmak istenilern directory yönlendirilerek hızlı ulaşım
sağlanır.
1. Matlab'ın Genel Yapısı
MATLAB
23
Current Folder: Matlab dosyalarının kaydedildiği, yüklendiği dosyaların bulunduğu
klasörü (dizin), varsayılan klasör olarak belirlemeye yarar.
Aksi belirtilmedikçe bu klasör C:Matlab6p5work gibi bir klasördür.
Yada :
save F:MATLAB_UYGkatsayilar a
katsayilar.mat olarak kaydedilen a matrisininmatlab kapatılıp açıldıktan sonra
herhangi bir zamanda geri çağrılmasıiçin;
load F:MATLAB_UYGkatsayilar komut dizisi kullanılır.
Command Windowa : save
yazılırsa değişkenler
“matlab.mat” veri
dosyasına kaydedilmiş
olur.
Matlabı kapatıp açalım ve
matlab.mat’ı çağıralım.
(File open matlab.mat)
.
1. Matlab'ın Genel Yapısı
MATLAB
Örnek:
>> a=[1,2,3; 5,7,9]
a =
1 2 3
5 7 9
24
MATLAB Yardım
1. Komut satırına “help” yazılır. Bu yardım sunulabilecek konuların listesini
sunar.
2. help fonksyon-adı fonksyon için yardım metnini görüntüler.
1. Matlab'ın Genel Yapısı
MATLAB
25
Matlab MasaÜstü
Yeni M-
Dosyası
Dosya Aç Help Desk
Kayıtlı Matlab
Fonksyonu,
kayıt
dosyası(mat),
modeli, figürü
ve GUI
arayüzlü
fonksyonları
açar
Veri dosyalarını
açar
Çalışma
ortamını
kaydeder
Farklı
çalışma
dizinini
Matlaba
tanıtır
Matlab arayüzünü
ayarlar
1. Matlab'ın Genel Yapısı
MATLAB
26
Başlat Düğmesi
Matlab araç kutuları, Matlab
uygulamalarına eklenti olarak
hazırlanan ve hazır fonksyonları
içeren paketlerdir.
1. Matlab'ın Genel Yapısı
MATLAB
27
Başlat Düğmesi
Start Düğmesi tüm matlab uygulamalarına açılan kısayolları içermektedir.
Matlab
Uygulamaları
için kısa yol
Araç
kutuları
SimulinkUy
gulaması
Demolar
Veri Sihirbazı
GUI Hazırlayıcı
1. Matlab'ın Genel Yapısı
MATLAB
28
Matlaba Veri Alma
Programa dışarıdan resim, film, veri, ses dosyalarını matris formatına
çevirerek bir değişken olarak atamada kullanılır
File Import Data
Örnek: Exel dosyası alma
Exelde bir matrix oluşturup matlabdan import ile alınız.
1. Matlab'ın Genel Yapısı
MATLAB
29
Matlab'da Temel Kavramlar:
Tüm programlama dillerinde olduğu gibi (Fortran, C, Pascal, Basic vs..)
Matlab'ın da özel anlam tasıyan bazı kelimeleri vardır ki, bu kelimeler değisken
olarak kullanılamazlar.
Bu tür kelimelere anahtar kelime (keywords) denir.
Bu kelimelerin bir listesini almak için komut satırına;
iskeyword komutunu yazarak elde edebiliriz.
Bu kelimeler;
'break‘ 'case' 'catch' 'continue' 'else' 'elseif' 'end‘ 'for' 'function' 'global'
'if' 'otherwise‘ 'persistent' 'return' 'switch' 'try' 'while.
1. Matlab'ın Genel Yapısı
MATLAB
30
Programın dili ve yardım bilgileri tamamen ingilizcedir.
Küçük-büyük harf ayrımı vardır.
Örneğin dscrite, DSCRITE ve Dscrite atamaları farklı şekilde
algılanır
Eğer istenirse “casesen off”komutu ile bu durum sona
erdirilebilir.
» işareti komut prompt’udur.
Komutlar Enter ile yürütülür.
2. Matlab Kullanımında Temel Kurallar:
Matlab
31
Genel komutların isimleri ve açıklamaları
2. Matlab Kullanımında Temel Kurallar:
MATLAB
32
2. Matlab Kullanımında Temel Kurallar:
MATLAB
MATLAB kontrolünü kullanabilmeniz için özel karakterlere sahiptir.
Bu karakterlerin bir özeti :
33
2. Matlab Kullanımında Temel Kurallar:
Matlab
34
2. Matlab Kullanımında Temel Kurallar:
Matlab
35
İFADELER : Matematiksel ve metinsel gösterimler ile işlemler ifadelerle
sağlanır.
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.
Sayısal Analiz
x = 4 * sqrt(5) İfade
değişken
sayı işleç fonksiyon
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.
3. MATRİSLER
36
o Birden fazla ifade tek satırda aralarına , ya da ; koyarak
yazılabilir.
o Yazımda boşluk sayısı etkisizdir.
o Sadece ilgili değişken adını yazarak o değişkeni
çağırabilirsiniz.
MATRİSLER
3.1. İFADELER
37
o MATLAB’da, herhangi bir tip tanımlaması veya boyut ifadesine gerek yoktur.
o MATLAB, yeni bir değişken ismi ile karşılaştığında, otomatik olarak ans isminde
bir değişken oluşturur ve uygun bir bellek miktarı ayırır.
oEğer değişken zaten varsa, MATLAB gerekli bir bellek ayırdığında içeriği değişir.
Örneğin,
o ogrenci_sayı=51
3.2. Değişlenler
Matlab
Değisken: değeri değisebilen bellek alanına isaret eden değerlere,
38
MATLAB değişken girişleri için çeşitli kurallara sahiptir.
Her değişken bir harfle başlamak zorundadır.
Program büyük küçük harf duyarlıdır. X ve x farklı değişkenleri ifade eder.
Program 31 basamağa kadar duyarlıdır. Bu basamaktan sonrasını yok sayar.
Dolayısıyla 31 basamaktan uzun değişken isimleri karışıklık yaratabilir.
3.2. Değişlenler
Matlab
39
Değiskenlere Değer Atama:
Her hangi bir programlama dilinde olduğu gibi, Matlab’da da bir değiskene
değer verme islemine ”değer atamak” denir.
Bir değiskene atanan değer, değistirilmediği sürece aynı kalır.
Değer atamanın genel kullanımı asağıdaki biçiminde olur:
<Değisken adı>=<Atanacak değer>;
3.2. Değişlenler
Matlab
40
Örnek 2:
A=6i-7; %A: değişkenine skaler bir değer atar
B=A /7; %B değişkenine A değişkeninin 1/7 si atanmıştır
C=[3 4 5 6]; % 4 elemanlı bir satır vektörü atanmıştır
NOT:
Dizi girişinde herhangi bir satıra ait elemanlar aralarına boşluk veya
virgül “,” konularak ayrılır
Dizinin diğer bir satırına başlamak için biten satır sonuna ; konulur.
3.2. Değişlenler
Matlab
41
oMATLAB’da sayılar yaygın olarak kullanılan onluk tabanda ifade edilirler.
o Bunun yanısıra onluk tabanda üstel olarak veya i veya j olarak kompleks sayı
biçimlerinde de ifade edilebilirler.
oÖrnek olarak,
3.3. Sayılar
Matlab da i ve j başka türlü tanımlanmamışsa kompleks i sayısını gösterir.
3e5 sayısıda 3*105 anlamındadır
MATRİSLER
42
o Ondalık sayılar Türkçemizdeki 3,5 yerine 3.5 şeklinde gösterilir (0.0001
veya 9.63, 0.65 yerine .65).
o Bilimsel notasyon gösterimi olan e (veya E) harfi 10’nun kuvvetini temsil
eder.
o 2e4=2.104=2000 veya 1.65e-20=1.65.10-20 demektir.
o Kompleks sayılarda imajiner (sanal) kısımlar i veya j ekini alır. i veya j
ile gosterimlerinde bir fark yoktur.
o (1+3i veya 1+3*i veya 1+i*3) / 1+sqrt(3)*j / -5i
o Matlab’de tüm sayılar, yaklaşık 2.10308 ve 2.10-308 arasında değişir.
3.3. Sayılar
MATRİSLER
43
Sayı Formatları:
3.3. Sayılar
MatlabMATRİSLER
44
oMatlab'da bir çok eylem, dört islem ve matematiksel bazı islemler
yaptırabiliriz.
oBunun için, ya ilgili komutları komut penceresinden teker teker girerek veya
ilgili komutları bir dosyaya yazıp, o dosyayı çağırarak çalıstırabiliriz.
oİşlemleri yaptırırken, sayıları reel sayı ya da karmasık sayı olarak alabiliriz.
3.4 Operatörler(sayısal işlemciler):
MATRİSLER
45
Matematiksel ifadeleri oluşturmak için operatörler ve önceden tanımlanmış
sembolleri kullanabilirsiniz.
oOperatörler özetle şunlardır:
oMatrislerle yapılan işlemlerde bölme işlemi için iki farklı sembol kullanılmaktadır.
oBunun yanında eğer sayılar skaler ise iki bölme işleminin sonucu da aynı değeri
gösterecektir.
oÖrneğin 3/2 ile 23 ifadelerinin sonuçları aynı olup 1.5’dir
» 4+8*3–2
ans =
26
3.4 Operatörler(sayısal işlemciler):
MATRİSLER
46
3.4 Operatörler(sayısal işlemciler):
MATRİSLER
x=a + b
Bu ifadede a ve b nin toplandığı ve x değişkeni içinde saklandığı
belirtilmektedir.
47
Aritmetiksel İşlemlerde Öncelik Durumu:
oTek bir aritmetiksel durum içinde birden fazla durum bir arada bulunabildiğine göre
hangi işlemin öncelik hakkına sahip olunduğunun bilinmelidir.
oMATLAB’da kullanılan işlemlerde işlemlerin öncelik listesi:
3.4 Operatörler(sayısal işlemciler):
MATRİSLER
bazı temel matematiksel fonksiyonların açıklamaları
48
o MATLAB’ da işlemler soldan sağa işlerler.
o İşlemler arası öncelik sırası aşağıdaki gibidir:
1. ^ (Yüksek)
2. *, / ↓
3. +, - (Düşük)
» 3^(2–5)-6/3*2 » 3^2–5–6/3*2
ans = ans =
—3.9630 0
3.4 Operatörler(sayısal işlemciler):
MATRİSLER
49
3.5. Fonksyonlar
MATRİSLER
o MATLAB’ın çok güçlü ve çok kapsamlı bir fonksiyon yapısı vardır.
oMATLAB’da bazı fonksiyonlar daha önceden yerleştirilmiş bazıları ise sonradan
dışarıdan yerleştirilmiş M-dosyalarından oluşan MATLAB kütüphanelerinde
tanımlanmışlardır.
oBunun yanında özel uygulamalar için kullanıcıların kendi fonksiyonlarını yazarak
kendi kütüphanelerini oluşturması mümkündür.
MATLAB’da mevcut analitik fonksiyonları genel olarak aşağıdaki kategorilere ayırabiliriz.
oTemel matematiksel fonksiyonlar
oÖzel fonksiyonlar
oTemel matrisler ve matris işlemleri
oMatrisleri çarpanlarına ayırma
oVeri analizleri
oPolinomlar
oDiferansiyel denklem çözümleri
oLineer olmayan denklemler ve optimizasyon
oSayısal integral hesaplamaları
oSinyal işleme
50
Matematiksel Fonksiyonlar:
bazı temel matematiksel fonksiyonların açıklamaları
3.5. Fonksyonlar
MATRİSLER
Örnek:
>>exp(1)
ans=2.7183
>>fix(3.5)
ans=3
>>ceil(3.5)
ans=4
>>round(3.5)
ans=4
51
Matlab'da önceden tanımlanmıs bazı sabitlerdir.
Bunlar aşağıdaki tabloda gösterilmistir.
3.6. Özel Sabitler
Matlab
52
Örnekler:
1) a=1;
2) a=’İstanbul’
3) a=5;b=7;c=a+b;
4) a=5;b=-3;c=a+2*b;a=a+b;
5) num=2*3-5^2; x=num/2, y=x+10;
7. Sabitler, Değiskenler ve Metin Katarları
Matlab
53
Örnek:
Komut satırına
a) sin(30)
b) sin(30*pi/180) yazınız sonuçları inceleyiniz.
3.5. Fonksyonlar
MATRİSLER
Cevap:
a) -0.9880 sonucu görülür ki bu 30° nin sinüsünde n farklıdır. Çünkü
bu 30° derece değil 30 radyanın sinüsüdür.
b) 0.5000 sonucu görülür ki bu da 30° nin sinüsüd ür. O halde bir
sayının trigonometrik değerini buldurmak için, önce pi ile çarpıp 180
e bölerek açıyı radyan çevirip sonra trigonometrik değerini
hesaplatabiliriz.
54
oVektörler tek boyutlu sayı dizileridir.
oElemanlarının sıralanma yönlerine göre sütun veya satır vektörü adlarını
alırlar.
ovektörler [ ] köşeli parantezleri ile tanımlanır
ofarklı yolla tanımlanabilirler
4. Vektörler
Matlab
A = [4, 12, -8, 6];A = [4 12 -8 6];
B = [1; 2; 4; 6];
Satır Vektörü
Sütun Vektörü>> b=[1
2
4
6
]
55
4. Vektörler
Matlab
ovektör boyutları büyüdükçe, manuel olarak tanıtım işlemi oldukça zorlaşmaktadır.
oÖzellikle belli bir artıma sahip vektörlerin oluşturulmasında (:) operatörü
kullanılmaktadır.
C = [-1:0.5:150];
Son değerBaşlangıç değeri Artış miktarı
D’ = [30:-10:-30]
Sütun Vektörü
56
Vektör indisleri
4. Vektörler
Matlab
Bir vektörün elemanlarına atanılan değer değişkenler editörü veya eleman adresi
vasıtasıyla değiştirilebilir.
Örnek:
A = [4 12 -8 6];
1. A vektörünün 3. elemanını 27 ile değiştiriniz.
2. Benzer şekilde A vektörünün 2. elemanını siliniz.
3. A(9) = 12
Çözüm:
1. A(3) = 27
2. Vektörün elemanına [ ] değeri atandığında eleman silinir.
A(2) = [ ]
3. >> A(9) = 12
A= [ 4 27 6]
A =[ 2 27 7 0 0 0 0 0 12]
57
» x=[17 8 61 83 56];
Şeklindeki bir matrisin üçüncü elemanına erişmek istenirse
» c=x(3)
c =
61
Eğer bir blok şeklinde veriye erişilmek istenirse;
» x(2:4)
ans =
8 61 83
Her matristeki herhangi bir elman grubuna erişilmek istenirse;
» x([3 1 4])
ans =
61 17 83
5. Matlab'da Dizi (Matris) İşlemleri:
Matlab
58
Bir diziye düzenli artıs (veya azalıs) kuralıyla değerler atanmak isteniyorsa
bunu;
ilk_değer:artıs:son değer veya ilk_değer:artıs:son değer
biçiminde yapabiliriz.
Ancak artıs 1 ise belirtilmeyebilir.
Örnek:
ortalama adlı bir diziye 0 dan 5 e kadar 0.5 er artısla elde edilen sayı
dizisini atayan;
ortalama=[0:0.5:5];
Siz: 1. satır 7 den den 17 ye kadar olan tam sayılar, 2. satırı 99 dan 89 a
kadar azalan tam sayılardan olusan 2 boyutlu m dizisine atayan islemleri
yazınız??
Dizilerin Değerlerinin Değistirilmesi ve Düzenlenmesi:
4. Vektörler
Matlab
59
4. Vektörler
Matlab
60
Sayılardan olusan satır ve sütun yapısına matris (dizi) denir.
Örneğin;
d1=[5] 1x1 lik,
d2=[ 2 -7] 1x2 lik,
d3= [1 0 -3 ]
[ 5 3 1 ]
2x3 lük bir dizidir.
Örnek:
x=[1; 7; 18; 5]
Ya da
» x=[ 1
7
18
5 ]
Biçimlerinde girilebilir.
5. Matlab'da Dizi (Matris) İşlemleri:
Matlab
61
Dizilerin Değerlerinin Değistirilmesi ve Düzenlenmesi:
Bir dizinin herhangi bir elemanını belirlemek için dizi adından hemen sonra
parantez içinde elemanın bulunduğu satır ve sütun sayısı yazılmalıdır.
Örnek:
1. d2=[2 -7]
d2 dizisinin -7 elemanını görüntülemek için:
d2(1,2)
2. d3=[1 0 -3;5 3 1]
d3 dizisinin 2. satır, 1. sütununda bulunan 5 in değerinin, -7.5
olması için:
d3(2,1)=-7.5;
Not:1) Bir dizinin bir çok elemanını yeniden değer atamak gerekirse, komut satırından
atama yapmak uzun zaman alabilir.
Bu durumda dizi değiskeninin üzerine çift tıklayarak açılan dizi editörü (array edit)
yardımıyla değisiklikleri daha kolay yapabiliriz.
5. Matlab'da Dizi (Matris) İşlemleri:
Matlab
62
8. Matrisler(Dizi)
Matlab
Bir matrisi girerken ,
o1. Elemanlar, baştan ve sondan köşeli parantezlerle kapatılır.
o2. Elemanların arasına boşluk veya virgül konulur.
o3. Matris satırlarını ayırmak için de noktalı virgül kullanılır.
okurallarına dikkate alınmalıdır.
Örneğin,
A = [1 2 3; 4 5 6];
A =
1 2 3
4 5 6
şeklinde veriler matrisler biçiminde tanımlanır.
MATLAB daha sonra kullanılmak üzere verileri A matrisinde saklar.
63
Matris elemanları rasgele rakamlardan oluşabileceği gibi MATLAB’ın deyimlerinden
de oluşabilir.
5.1. Matrislerde Elemanlar
Matlab
Örneğin.
a=[-1.3 sqrt(3) (1+2+3)*475]
a= -1.3000 1.7321 4.8000
Küçük matrisleri eleman olarak kullanıp daha büyük matrisler oluşturmak
mümkündür.
Örneğin,
M=[1 3 5 7 8 9] matrisine
aşağıda gösterildiği şekilde bir
satır eklemesi yapabilir.
M=[M;[10 13 15]]
Bu durumda M matrisi
M=[1 3 5
7 8 9
10 13 15]
durumunu alır.
64
İki nokta üst üste (:) kullanarak büyük matrislerin belli bir kısmını kullanabiliriz
ya da diğer ifade ile bu matrisi küçültebiliriz.
Örneğin, M=M(1:2,:) bildirimi M matrisinin ilk iki satırını alarak M matrisi
olarak saklar.
Örnek:
M=[8 -4 7; 66 -7 8 9; 4 5 134] ise:
M=M(1:2,:) =?
8. 1. Matrislerde Elemanlar
Matlab
65
MATLAB’da kullanıcı verileri kendi oluşturacağı matrisler ile tanımlayabileceği gibi
MATLAB’ın kendi özel matrislerinden de istifade edilebilir.
5.2. Genel Matrisler:
Matlab
66
Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:
a) Sıfır Matrisi Olusturan Fonksiyon:
Her elemanı sıfır olan mxn boyutunda bir matrise sıfır matrisi denir.
Böyle bir dizi olusturmak için zeros fonksiyonu kullanılır.
Kullanımı; matris_adı=zeros(m,n); biçimindedir.
Örnek:
3x5 boyutunda s adlı sıfır matrisi için:
s=zeros(3,5);
5.2. Genel Matrisler:
Matlab
67
b) 1 lerden Olusan Matris:
Her elemanı 1 olan mxn boyutunda bir matrisi olusturmak için ones
fonksiyonu kullanılır.
Kullanımı; matria_adı=ones(m,n); biçimindedir.
Örnek:
2x3 boyutunda b adlı tüm elemanları 1 olan matrisi olusturalım.
b=ones(2,3);
Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:
5.2. Genel Matrisler:
Matlab
68
c) Birim Matrisi Olusturan Fonksiyon:
Esas kösegeni 1 lerden diğer elemanları 0 lardan olusan kare matrise (satır
ve sütun sayısı esit olan ) birim matrisi,
kare olmayan matrise de diyagonal matris denir.
Böyle matrisleri olusturmak için eye fonksiyonu kullanılır.
Kullanımı; matris_adı=eye(m,n); biçimindedir.
Örnek:
a) 3x3 lük birim matris;
b) 4x3 llük diyagonal matris olusturalım.
Çözüm:a) i=eye(3,3); b) d=eye(4,3);
Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:5.2. Genel Matrisler:
Matlab
69
d) Rastgele Sayılardan Olusan Matris ve Fonksiyonu:
Elemanları 0 ile 1 arasındaki rastgele sayılardan olusan bir matris için
rand fonksiyonu kullanılır.
Kullanımı; matris_adı=rand(m,n); biçimindedir.(m:satır,n:sütun)
Not 1) Üretilen matrisin tüm elemanlarını k gibi bir sayı ile çarparak,
sayıları 0 ile k arasına çekebiliriz.
Not 2) Ondalıklı sayılardan olusmus bir matrisin elemanlarını
yuvarlayıp tam sayı yapmak için round fonksiyonunu kullanırız.
Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:5.2. Genel Matrisler:
Matlab
70
Örnek:
a) 0 ile 1 arasında rastgele sayılardan olusan 10 elemanlı a adında bir satır
matrisi olusturalım.
b) Elemanları 10 ile 50 arasında sayılardan olusan 5x3 tipinde b matrisini
olusturalım.
c) Elemanları 50 ile 300 arasındaki tamsayılardan olusan 3x4 tipinde c matrisini
olusturalım.
Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:
d) Rastgele Sayılardan Olusan Matris ve Fonksiyonu:
5.2. Genel Matrisler:
Matlab
71
Çözüm:
a) a=rand(1,10);
b) b=10+rand(5,3)*40;
c) c=round(50+rand(3,4)*250);
5.2. Genel Matrisler:
Matlab
72
e) Rastgele Sayılardan Olusan Normal Dağılımlı Matris ve
Fonksiyonu:
Elemanları rasstgele sayılardan olusan bir normal dağılımlı bir matris için
randn fonksiyonu kullanılır.
Kullanımı; matris_adı=randn(m,n); biçimindedir.
Örnek: Rastgele sayılardan olusan normal dağılımlı 2x3 lük bir n matrisini
olusturalım.
Çözüm: n=randn(2,3);
5.2. Genel Matrisler:
Matlab
73
f) Lineer Aralıklı (Aritmetik) Dizi ve Fonksiyonu:
Baslangıç ve biis değerleri ve kaç elemandan olusacağı belirlenen diziyi
olusturmak için linspace fonksiyonu kullanılır.
Kullanımı;
dizi_adı=linspace(ilk_değer,son_değer,eleman_sayısı);
biçimindedir.
5.2. Genel Matrisler:
Matlab
74
Örnek: 10 ile 30 arasına 9 tane daha sayı koyarak a
adında bir aritmetik dizi olusturalım.
f) Lineer Aralıklı (Aritmetik) Dizi ve Fonksiyonu:
5.2. Genel Matrisler:
Matlab
Cevap:
a=linspace(10,30,11);
75
Elimizdeki grubun her elemanı için bir matematik işlemi yapıp bunu yeni bir
diziye atarken herhangi bir sorun yoktur.
Fakat iki farklı grupla işlemler yaparken dikkat etmemiz gereken genel
kurallar vardır.
Örneğin toplama ve çıkarma yaparken iki dizinin de büyüklüğünün eşit
olması gerekmektedir.
Ayrıca iki farklı dizinin elemanları arasında birebir işlem yapmak için
matematik operatörünün başına nokta(.) koymak gerekir.
Bu durumda her bir elemanı diğer dizinin o sıradaki elmanı ile işleme
sokacaktır.
6. MATRİSLER VE İŞLEMLERİ
Matlab
76
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
Örnek:
» x=[ 3 4 5 6; 7 8 9 10; 11 12 13 14]
x =
3 4 5 6
7 8 9 10
11 12 13 14
Yukarıdaki 3x4 boyutunda bir matristir. MATLAB programına aşağıdaki
gibi de sunulabilir.
» x=[ 3 4 5 6
7 8 9 10
11 12 13 14]
x =
3 4 5 6
7 8 9 10
11 12 13 14
6. MATRİSLER VE İŞLEMLERİ
Matlab
77
Matristeki herhangi bir elemana direk ulaşmak için aşağıdaki gösterim
yeterlidir.
» x(2,3)=9
Eğer isteğimiz eriştiğimiz bir elemanı değiştirmek veya yeni bir satır
eklemek ise aşağıdaki gösterim yeterlidir. .
» x(4,1)=1
x =
3 4 5 6
7 8 9 10
11 12 13 14
1 0 0 0
Bu durumda dördüncü satır ilk elemanını biz 1 değerini atadık ve diğer
elemanları kendiliğinden “0” olarak atadı.
6. MATRİSLER VE İŞLEMLERİ
Matlab
78
İki nokta üst üste (:) kullanılarak belirli aralıkta değişen matrisler
yaratılabilir.
» x=[1:2:7; 3:-1:0; -1:2]
x =
1 3 5 7
3 2 1 0
-1 0 1 2
Bir matrisin herhangi bir bölümünü seçmek için ise aşağıdaki gösterim
kullanılır;
» z=x(2:3, 1:2)
z =
3 2
-1 0
Bu durumda z matris x matrisinin 2 ve 3 no’ lu satırlarından 1 ve 2 no’ lu
sütunlarını almış oluyor.
Herhangi bir satır veya sütunu tamamen silmek istersek o satır ve sütunu
seçip “[]” ifadesine eşitleriz.
» z(:,2)=[ ]
z =
3
-1
6. MATRİSLER VE İŞLEMLERİ
Matlab
79
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
6. MATRİSLER VE İŞLEMLERİ
Matlab
80
a) Toplama-Çıkarma Bir Sayı ile Çarpma İşlemi:
İki matrisi toplamak (veya çıkarmak) demek, matrislerin aynı
mertebedeki elemanları teker teker toplayıp (veya çıkarıp ) aynı
mertebeye yazmak demektir.
Bu durumda iki matrisin de aynı mertebeden olması gereği açıktır.
Bir matrisi sabit bir sayıyla ile toplamak (veya çıkarmak) demek,
matrisin elemanlarınının tümünü teker teker o sayıyla toplamak (veya
çıkarmak )demektir.
Bir matrisi sabit bir sayıyla ile çarpmak demek ise, matrisin
elemanlarınının tümünü teker teker o sayıyla çarpmak demektir.
6. MATRİSLER VE İŞLEMLERİ
Matlab
81
82
Örnek:
» a=[1 2 3; 4 5 6];
» b=[7 8 9; 10 11 12];
a ve b toplamı:
» sum=a+b
sum =
8 10 12
14 16 18
a’ yı b’ den çıkarmak;
» diff=a-b
diff =
-6 -6 -6
-6 -6 -6
6. MATRİSLER VE İŞLEMLERİ
Matlab
83
Örnek: a=[-1 3 5;2 1 7] ve b=[3 -3 -4;1 1 5] matrisleri
veriliyor.
a) c=a+b toplam matrisini
b) d=a-b matrisini
c) amatrisinin her elemanınının 5 eksiğine karsılık gelen e
matrisini
d) f=2a-3b matrisini bulduran islemleri yazalım.
6. MATRİSLER VE İŞLEMLERİ
Matlab
Çözüm:
a) c=a+b b) d=a-b c) e=a-5 d) f=a+a-b-b-b veya
f=2*a-3*b
84
İki matrisin çarpım islemi iki biçimde anlasılır.
1) Aynı mertebeden iki matrisin elemanlarını teker teker , çarpıp, aynı mertebeye
yazmak demektir. Bunu .* islemi ile gerçeklestiririz.
2) Matematiksel anlamda iki matrisi çarpmak istediğimizde; birinci matris mxn
türünde ve ikinci matris mutlaka nxp türünde olmalıdır; yani birinci matrisin
sütun sayısı ikinci matrisin satır sayısına eşit olmalıdır.
Bu durumda birinci matrisin i. sütun elemanları ile, ikinci matrisin j. satırındaki
elemanlar karılıklı olarak çarpılır ve sonuçlar toplanır ve bu toplam çarpım
matrisinin (i,j) inci mertebeye yazılır.
Matrisler arası çarpma isleminin sembolü de * dır.
b) İki Matrisin Çarpımı, Bir Matrisin Kuvvetleri ve
Çarpma İslemi:
6. MATRİSLER VE İŞLEMLERİ
Matlab
85
3) Bir a matrisinin her bir elemanının n. Kuvvetlerinden olusan matrisi
bulmak için a.^n islemi kullanılır.
4) Satır ve sütun sayıları esit bir kare matrisi ardısık olarak n defa
kendisiyle çarparak, a matrisinin n. kuvvetini bulabiliriz.Örneğin a matrisinin
karesi için a*a veya a^2, kübünü buldurmak için a*a*a veya a^3,
dördüncü kuvvetini buldurmak için a*a*a*a veya a^4
Not) Bir a matrisinin eleman -elemana çarpma islemine benzer mantıkla, bir matrisin
tüm elemanlarının kareleri, kübleri, sinüsleri, kosinüsleri, logaritmalarından olusan
matris bulunmak istenirse;
bunu sırayla a.*a (veya a.^2), a.*a.*a, (veya a.^3), sin(a), cos(a), e
tabanında logaritması için log(a), 10 tabanında logaritmaları için log10(a) ...
Biçiminde gerçeklestirebiliriz.
6. MATRİSLER VE İŞLEMLERİ
Matlab
86
a) a matrisinin elemanları ile b matrisinin elemanlarını karsılıklı
çarpımlarından olusan c1 matrisi varsa bulalım.
b) a matrisi ile b matrisinin çarpım matrisi olan c2 varsa bulalım.
c) a matrisinin elemanları ile c matrisinin elemanlarını karsılıklı
çarpımlarından olusan c3 matrisi varsa bulalım.
d) a matrisi ile c matrisinin çarpım matrisi olan c4 varsa bulalım.
e) a matrisinin elemanlarının karelerinden olusan matris ile b matrisinin
kosinüslerinden olusan matrisler toplamını bulalım.
f) x=[1 0;0 3] matrisinin i) Karesini ii) Kübünü iii) 10.
kuvvetini bulalım.
Örnek: a=[-1 3 5;2 1 7] , b=[3 -3 -4;1 1 5] ve c=[1 0;-1 2;3 3]
matrisleri veriliyor.
6. MATRİSLER VE İŞLEMLERİ
Matlab
87
Çözüm:
a) iki matrisin karsılıklı elemanlarının çarpımından olusan matrisin tanımlı
olabilmesi için aynı mertebeli olması gerekir.Bu durumda c1 matrisi tanımlıdır
ve bunu c1=a.*b islemi ile gerçeklestirebiliriz.
b) iki matrisin çarpılabilmesi için birinci matrisin sütun sayısı ikinci matrisin
satır sayısına esit olmalıdır.Halbuki a matrisi 2x3 b matrisi de 2x3 olduğundan
bu iki matris çarpılamaz.
c) İki matrisin karsılıklı elemanlarının çarpımından olusan matrisin tanımlı
olabilmesi için aynı mertebeli olması gerekir.Halbuki bu matrisler aynı
mertebeden olmadığından bu iki matris eleman-elemana çarpma islemi
gerçeklemez.
d) İki matrisin çarpılabilmesi için birinci matrisin sütun sayısı ikinci matrisin
satır sayısına esit olmalıdır.a matrisi 2x3 lük, c matrisi de 3x2 lik olduğundan
bu iki matris çarpılabilir ve c4 çarpım matrisi 2x2 lik bir matris olur.c4 çarpım
matrisini c4=a*c islemi ile buluruz.
e) a.^2+cos(b)
f) i) x^2 ii) x^3 iii) x^10
6. MATRİSLER VE İŞLEMLERİ
Matlab
88
c) Bir Matrisin Devriğini (Transpozesi) Bulma İslemi:
Bir matrisin satırlarını sütun, sütunlarını satır olarak yazılmasıyla
bulunan matrise, bu matrisin devriği (transpozesi) denir.
Bir matrisin devriğini .' islemi ile bulabiliriz.
Örnek: a=[-1 3 5;2 1 7] nın devriğini buldurup d matrisine atayalım.
Çözüm: d=a.';
6. MATRİSLER VE İŞLEMLERİ
Matlab
89
Örnek:
b=[7 8 9; 10 11 12]; matrisinin transpozesini bulabilirmisiniz?
6. MATRİSLER VE İŞLEMLERİ
Matlab
Çözüm:
c=b'
c =
7 10
8 11
9 12
90
SORU:
a=[1 2 3; 4 5 6];
c= [7,10;8,11;9,12];
ise a ve c’nin çarpım matrisi kaçtır?
6. MATRİSLER VE İŞLEMLERİ
Matlab
ÇÖZÜM:
Çarpma işlemi: k=a*c
k=
50 68
122 167
91
SORU :
a=[1 2 3; 4 5 6]; b=[7 8 9; 10 11 12];
ise a matrisinin elemanları ile b matrisinin elemanlarını karsılıklı
çarpımlarından olusan x matrisini bulalım?
6. MATRİSLER VE İŞLEMLERİ
Matlab
ÇÖZÜM:
x=a.*b
x =
7 16 27
40 55 72
92
d) İki Matrisin Bölümü, Birim Matris ve Bir Matrisin Tersi :
Aynı mertebeden iki matrisin elemanlarını teker teker, bölerek, aynı
mertebeye yazılmasına iki matrisin sol bölmesi denir ve bu ./ islemi ile
yapılır.
a, b ve c aynı mertebeden kare matrisler olmak üzere;
c=a*b ise a matrisine c nin b matrisine bölümü denir.
c bölüm matrisi / islemi ile yapılır.
6. MATRİSLER VE İŞLEMLERİ
Matlab
93
HATIRLATMA:
2x2 lik i2 adlı birim matrisi i2=eye(2,2);
3x lük i3 adlı birim matrisi i2=eye(3,3); islemi ile olusturabiiriz.
Aynı mertebeden a ve b kare matrisleri için a ile b nin çarpımı birim matris ise
b matrisi a matrisinin (aynı biçimde a matrisi de b matrisinin) ters matrisidir.
Örnek:
3x3 lük bir a kare matrisinin tersini bulmak için:
d) İki Matrisin Bölümü, Birim Matris ve Bir Matrisin Tersi :
eye(3,3)/a veya inv(a) islemini kullanırız.
6. MATRİSLER VE İŞLEMLERİ
Matlab
94
Bir Matrisin Determinantı
Determinant, kare matrisleri bir sayıya eşleyen fonksiyondur.
Determinant fonksiyonunun, kare matrisi eşlediği o sayıya matrisin
determinantı denir.
A matrisinin determinantı, detA veya |A| biçiminde gösterilir.
|A|, matrislerde mutlak değer anlamına gelmez. |A| sıfır veya
negatif de olabilir.
det(x)
6. MATRİSLER VE İŞLEMLERİ
Matlab
95
KURAL:
6. MATRİSLER VE İŞLEMLERİ
Matlab
96
Örnek:
Verilen bir x matrisi için:
» x=[ 2 -1; 5 8]
Determinant:
» deter=det(x)
deter =
21
6. MATRİSLER VE İŞLEMLERİ
Matlab
97
Örnek Inverse işlemi:
Verilen bir x matrisi için:
» x=[ 2 -1; 5 8]
Detx=det(x)=21 ise;
» y=inv(x)
y =
8/21 1/21
-5/21 2/21
6. MATRİSLER VE İŞLEMLERİ
Matlab
98
SORU:
a=[2 -10 0;1 2 4;3 0 1] matrisi ile b=[1 5 4;1 -1 2;0 1 -1] matrisleri veriliyor.
a) a matrisinin elemanlarını sırasıyla b matrisinin elemanlarına bölerek elde
edilen matrisi b1 matrisine atayalım.
b) a matrisinin ta ters matrisini bulalım.
c) a ile ta matrisinin çarpımının 3x3 lük birim matris olduğunu gösterelim.
d) a matrisinin b matrisine bölümünü b2 matrisine atayalım.
6. MATRİSLER VE İŞLEMLERİ
Matlab
99
Çözüm:
a) b1=a./b
b) ta1=eye(3,3)/a veya ta2=inv(a)
c) a*ta ==eye(3,3)
d) b2=a/b
6. MATRİSLER VE İŞLEMLERİ
Matlab

More Related Content

What's hot

Matlab practical and lab session
Matlab practical and lab sessionMatlab practical and lab session
Matlab practical and lab sessionDr. Krishna Mohbey
 
Introduction to matlab
Introduction to matlabIntroduction to matlab
Introduction to matlabTarun Gehlot
 
Introduction to Matlab
Introduction to MatlabIntroduction to Matlab
Introduction to MatlabAmr Rashed
 
Matlab Introduction
Matlab IntroductionMatlab Introduction
Matlab IntroductionDaniel Moore
 
Introduction to matlab
Introduction to matlabIntroduction to matlab
Introduction to matlabDnyanesh Patil
 
Matlab Tutorial for Beginners - I
Matlab Tutorial for Beginners - IMatlab Tutorial for Beginners - I
Matlab Tutorial for Beginners - IVijay Kumar Gupta
 
The Uniform Access Principle
The Uniform Access PrincipleThe Uniform Access Principle
The Uniform Access PrinciplePhilip Schwarz
 
Matlab introduction
Matlab introductionMatlab introduction
Matlab introductionAmeen San
 
Matlab Functions
Matlab FunctionsMatlab Functions
Matlab FunctionsUmer Azeem
 
Matlab-Data types and operators
Matlab-Data types and operatorsMatlab-Data types and operators
Matlab-Data types and operatorsLuckshay Batra
 
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ Katerina Drimili
 
Παρουσίαση 1.2 Κεντρίκή Μονάδα Επεξεργασίας
Παρουσίαση 1.2 Κεντρίκή Μονάδα ΕπεξεργασίαςΠαρουσίαση 1.2 Κεντρίκή Μονάδα Επεξεργασίας
Παρουσίαση 1.2 Κεντρίκή Μονάδα ΕπεξεργασίαςDimitris Zarogiannis
 
Introduction to matlab lecture 1 of 4
Introduction to matlab lecture 1 of 4Introduction to matlab lecture 1 of 4
Introduction to matlab lecture 1 of 4Randa Elanwar
 
Matlab - Introduction and Basics
Matlab - Introduction and BasicsMatlab - Introduction and Basics
Matlab - Introduction and BasicsTechsparks
 

What's hot (20)

Matlab practical and lab session
Matlab practical and lab sessionMatlab practical and lab session
Matlab practical and lab session
 
Introduction to matlab
Introduction to matlabIntroduction to matlab
Introduction to matlab
 
Introduction to Matlab
Introduction to MatlabIntroduction to Matlab
Introduction to Matlab
 
Matlab introduction
Matlab introductionMatlab introduction
Matlab introduction
 
Matlab Introduction
Matlab IntroductionMatlab Introduction
Matlab Introduction
 
Introduction to matlab
Introduction to matlabIntroduction to matlab
Introduction to matlab
 
Matlab ppt
Matlab pptMatlab ppt
Matlab ppt
 
User defined functions in matlab
User defined functions in  matlabUser defined functions in  matlab
User defined functions in matlab
 
MATLAB INTRODUCTION
MATLAB INTRODUCTIONMATLAB INTRODUCTION
MATLAB INTRODUCTION
 
Matplotlib
MatplotlibMatplotlib
Matplotlib
 
Matlab Tutorial for Beginners - I
Matlab Tutorial for Beginners - IMatlab Tutorial for Beginners - I
Matlab Tutorial for Beginners - I
 
The Uniform Access Principle
The Uniform Access PrincipleThe Uniform Access Principle
The Uniform Access Principle
 
Matlab introduction
Matlab introductionMatlab introduction
Matlab introduction
 
Matlab Functions
Matlab FunctionsMatlab Functions
Matlab Functions
 
MATLAB - Arrays and Matrices
MATLAB - Arrays and MatricesMATLAB - Arrays and Matrices
MATLAB - Arrays and Matrices
 
Matlab-Data types and operators
Matlab-Data types and operatorsMatlab-Data types and operators
Matlab-Data types and operators
 
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
ΛΕΙΤΟΥΡΓΙΚΑ ΣΥΣΤΗΜΑΤΑ
 
Παρουσίαση 1.2 Κεντρίκή Μονάδα Επεξεργασίας
Παρουσίαση 1.2 Κεντρίκή Μονάδα ΕπεξεργασίαςΠαρουσίαση 1.2 Κεντρίκή Μονάδα Επεξεργασίας
Παρουσίαση 1.2 Κεντρίκή Μονάδα Επεξεργασίας
 
Introduction to matlab lecture 1 of 4
Introduction to matlab lecture 1 of 4Introduction to matlab lecture 1 of 4
Introduction to matlab lecture 1 of 4
 
Matlab - Introduction and Basics
Matlab - Introduction and BasicsMatlab - Introduction and Basics
Matlab - Introduction and Basics
 

Similar to Matlab

matlab basic introduction with plot commands
matlab basic introduction with plot commandsmatlab basic introduction with plot commands
matlab basic introduction with plot commandslkeE2
 
Az ve Öz Matlab - Muhammet ÇAĞATAY
Az ve Öz Matlab - Muhammet ÇAĞATAYAz ve Öz Matlab - Muhammet ÇAĞATAY
Az ve Öz Matlab - Muhammet ÇAĞATAYMuhammet ÇAĞATAY
 
Matlab'e Giriş
Matlab'e GirişMatlab'e Giriş
Matlab'e GirişBurak KOÇ
 
Ileri seviye javascript by Azer Koculu
Ileri seviye javascript by Azer KoculuIleri seviye javascript by Azer Koculu
Ileri seviye javascript by Azer Koculumustafa sarac
 
Heap Overflow Zafiyetleri & Exploiting
Heap Overflow Zafiyetleri & ExploitingHeap Overflow Zafiyetleri & Exploiting
Heap Overflow Zafiyetleri & ExploitingSignalSEC Ltd.
 
Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1atasss
 
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Uğurkan Ateş
 
İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02Cihan Özhan
 
Basic Info for Matlab
 Basic Info for Matlab Basic Info for Matlab
Basic Info for MatlabMahmut Yildiz
 
İşletim sistemleri
İşletim sistemleriİşletim sistemleri
İşletim sistemleriillker SEN
 

Similar to Matlab (20)

matlab.pptx
matlab.pptxmatlab.pptx
matlab.pptx
 
matlab basic introduction with plot commands
matlab basic introduction with plot commandsmatlab basic introduction with plot commands
matlab basic introduction with plot commands
 
Matlab Seminer2005
Matlab Seminer2005Matlab Seminer2005
Matlab Seminer2005
 
Matlab
MatlabMatlab
Matlab
 
Az ve Öz Matlab - Muhammet ÇAĞATAY
Az ve Öz Matlab - Muhammet ÇAĞATAYAz ve Öz Matlab - Muhammet ÇAĞATAY
Az ve Öz Matlab - Muhammet ÇAĞATAY
 
Matlab'e Giriş
Matlab'e GirişMatlab'e Giriş
Matlab'e Giriş
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 
Ileri seviye javascript by Azer Koculu
Ileri seviye javascript by Azer KoculuIleri seviye javascript by Azer Koculu
Ileri seviye javascript by Azer Koculu
 
Pivot Unpivot
Pivot UnpivotPivot Unpivot
Pivot Unpivot
 
Matlab grafik
Matlab grafikMatlab grafik
Matlab grafik
 
Heap Overflow Zafiyetleri & Exploiting
Heap Overflow Zafiyetleri & ExploitingHeap Overflow Zafiyetleri & Exploiting
Heap Overflow Zafiyetleri & Exploiting
 
Kadir proje
Kadir projeKadir proje
Kadir proje
 
Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1
 
Temel ABAP eğitim kılavuzu
Temel ABAP eğitim kılavuzuTemel ABAP eğitim kılavuzu
Temel ABAP eğitim kılavuzu
 
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1
 
İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02İleri Seviye T-SQL Programlama - Chapter 02
İleri Seviye T-SQL Programlama - Chapter 02
 
Basic Info for Matlab
 Basic Info for Matlab Basic Info for Matlab
Basic Info for Matlab
 
Delphi xe5
Delphi xe5Delphi xe5
Delphi xe5
 
Delphi xe5
Delphi xe5Delphi xe5
Delphi xe5
 
İşletim sistemleri
İşletim sistemleriİşletim sistemleri
İşletim sistemleri
 

More from Mehmet Cemal Acar

Spectra precision (ashtech) pro mark700 gnss
Spectra precision (ashtech) pro mark700 gnssSpectra precision (ashtech) pro mark700 gnss
Spectra precision (ashtech) pro mark700 gnssMehmet Cemal Acar
 
Nikon NPL-322+ Total Station
Nikon NPL-322+ Total StationNikon NPL-322+ Total Station
Nikon NPL-322+ Total StationMehmet Cemal Acar
 
Mukavemet dersi ara sınavı 2015
Mukavemet dersi ara sınavı 2015Mukavemet dersi ara sınavı 2015
Mukavemet dersi ara sınavı 2015Mehmet Cemal Acar
 
Unit 28 topographic_surveying_in_construction_and_civil_engineering
Unit 28 topographic_surveying_in_construction_and_civil_engineeringUnit 28 topographic_surveying_in_construction_and_civil_engineering
Unit 28 topographic_surveying_in_construction_and_civil_engineeringMehmet Cemal Acar
 

More from Mehmet Cemal Acar (7)

Soil remediation
Soil remediationSoil remediation
Soil remediation
 
Urfa prophets city
Urfa prophets cityUrfa prophets city
Urfa prophets city
 
Spectra precision (ashtech) pro mark700 gnss
Spectra precision (ashtech) pro mark700 gnssSpectra precision (ashtech) pro mark700 gnss
Spectra precision (ashtech) pro mark700 gnss
 
Nikon NPL-322+ Total Station
Nikon NPL-322+ Total StationNikon NPL-322+ Total Station
Nikon NPL-322+ Total Station
 
Mukavemet dersi ara sınavı 2015
Mukavemet dersi ara sınavı 2015Mukavemet dersi ara sınavı 2015
Mukavemet dersi ara sınavı 2015
 
Unit 28 topographic_surveying_in_construction_and_civil_engineering
Unit 28 topographic_surveying_in_construction_and_civil_engineeringUnit 28 topographic_surveying_in_construction_and_civil_engineering
Unit 28 topographic_surveying_in_construction_and_civil_engineering
 
Dünya'nın şekli
Dünya'nın şekliDünya'nın şekli
Dünya'nın şekli
 

Matlab

  • 1. SAYISAL ANALİZ Matlab’a Giriş Derleme Ders Notları Öğr. Gör. Arzu ERENER email:ae76@hotmail.com.tr
  • 2. 2 1. Kaynakça Sayısal Analiz 1. Octave http://www.gnu.org/software/octave/download.html 2. Matlab http://www.mathworks.com/products/matlab/ 3. Excel 4. Steven T. Karris, Numerical Analysis Using MATLAB and Excel, Third Edition, 2007, Orchard Publications 5. MATLAB, The Language of Technical Computing, Getting Started with MATLAB, Version 5 6. Mehmet Uzunoğlu- Ömer Çağlar Onar, Her Yönü ile Matlab, 2003 Baskı 7. MATLAB PROGRAMLAMAYA GİRİŞ, http://www.tugrulaktas.com/dersnotlari/Matlap/matlab[2].pdf 8. Ali Yazıcı ders notları, Matlab 7.0, hızlı öğrenme Klavuzu, Sayısal Yöntemler Derleyen: A.Gün, Denetleyen: A.Karamancıoğlu, OGU-EE.003, Ağustos 2002, MATLAB’E GiRİŞ 9. CORS-TR, Ders 2 : MATLAB ile Matris İşlemleri Eğitim,Seminerleri Serisi : MATLAB’e Giriş 10. http://www.mathworks.com/matlabcentral/
  • 3. 3 1. Kapsam Sayısal Analiz o 1. Matlab'ın Genel Yapısı o 2. Matlab Kullanımında Temel Kurallar o 3.1. İfadeler o 3.2.Değişlenler o 3.3. Sayılar o 3.4 Operatörler(sayısal işlemciler) o 3.5. Fonksyonlar o 3.6. Özel Sabitler o 4. Vektörler o 5. Matlab'da Dizi (Matris) İşlemleri o 5.1. Matrislerde Elemanlar o 5.2. Genel Matrisler o 6. Matrisler ve İşlemler
  • 4. 4 Matlab; yüksek performanslı bir teknik programlama dilidir. Matlab açılımı ingilizce “MATrix LABoratory” den gelmektedir. Başlangıçta MATLAB özellikle mühendislik alanında, iyi grafik özelliklere sahip daha çok sayısal hesaplamalarda kullanılmak amacı ile geliştirilmiş bir paket programlama dili olarak ortaya çıkmıştır. Matlab; matrix esaslı matematik ortamında kullanılmak üzere geliştirilmiş etkileşimli bir paket programlama dilidir. İlk sürümleri Fortran diliyle hazırlanmış olmakla beraber son ürümleri (2000 yılı itibari ile 5.1) C dilinde yazılmıştır. 1. MATLAB Sayısal Analiz
  • 5. 5 MATLAB mühendislik alanında; •Matematik ve hesaplama işleri, algoritma geliştirme. •Verilerin analizi, incelenmesi ve görüntülenmesi. •veri çözümleri ve •grafik işlemlerinde •Modelleme, benzetim ve prototipleme. kullanılabilecek genel amaçlı bir program olmakla beraber özel amaçlı modüler paketlerede sahiptir. Fortran ve C dili gibi yüksek seviyeli programlama dili ile yapılabilen hesaplamaların pek çoğunu MATLAB ile yapmak mümkündür. 1. MATLAB Sayısal Analiz
  • 6. 6 1970’lerin sonunda Cleve Moler tarafından yazılan Matlab programının tipik kullanım alanları: Matematiksel hesaplama işlemleri Algoritma geliştirme ve kod yazma 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. 1. MATLAB Sayısal Analiz
  • 7. 7 oMatlab'ın resmi sitesi: http://www.mathworks.com, oörnek uygulama ve teknik literatür için: www.mathworks.com/applications/tech_comp...nicalliterature.html Ayrıca http://www.mathworks.com/matlabcentral/ : kod paylaşımı oMatlab’in Türkiye temsilcisi Bursa merkezli Figes firmasıdır. oWeb adresi: http://www.figes.com.tr oHaber grubu: matlabturk@yahoogroups.com 1. MATLAB Sayısal Analiz
  • 8. 8 1. MATLAB Sayısal Analiz Matlab matrix tabanlı bir dildir. Matlabda ilk başlangıçta herşeyi matris olarak düşünmek yararlı olacaktır.
  • 9. 9 1. MATLAB Sayısal Analiz oAraç kutuları,özel sorunların çözümü için MATLABa uyarlanan MATLAB işlevlerinin bir tür kitaplıklarıdır. oAraç kutuları, açık ve eklenebilir olup; kendi algoritmalarını ve ekini görebilirsiniz. oSimulink : oBlok diyagram arayüzü ile doğrusal olmayan simulasyonu ve “canlı” simulasyon yetenekleriyle öz sayıları, MATLAB’ın grafiklerini ve dil fonksiyonlarını birleştiren bir sistemdir.
  • 10. 10 oMatlaba başlamanın en iyi yolu matrislerin nasıl ele alınması gerektiğini öğrenmektir. oMATLAB da bir matrix, dikdörtgen sayılar dizisidir. o1x1 matris scaler sayı, omx1 matris sütun matrisi o1xn matris satır matrisi omxn matris m satırlık ,n sütunluk matristir. 1. MATLAB Sayısal Analiz
  • 11. 11 1. Program Nasıl Başlatılır? Başlat -->Tüm Programlar-->Matlab veya Command Window: Matlab 2. Program Nasıl Sonlandırılır? MATLAB Programlama dilini sonlandırmak için >> quit yada >> exit komutları kullanılır. 1. Matlab'ın Genel Yapısı MATLAB
  • 12. 12 MASA ÜSTÜ KOMUT PENCERESİ Çalışma Dizini Çalışma Alanı Komut Geçmişi Komut Satırı MATLAB programını ilk çalıştırdığınızda karşınıza çıkacak ekran aşağıdaki gibidir. 1. Matlab'ın Genel Yapısı MATLAB
  • 13. 13 Matlabı çalıstırdığımızda, karsımıza ana pencere gelir. Bu pencerede File, Edit, Debug, Parallel, Desktop, Window ve Help ana baslıkları vardır. Bu baslıklar altından, diğer Windows programlarında alısılagelmis benzer islemler 1. Matlab'ın Genel Yapısı MATLAB
  • 14. 14 Burada Desktop Desktop Layout ile Matlabın masaüstü yerlesimini düzenleyebilirsiniz. Örneğin; Default ile varsayılan görünümünü, Command Window Only ile sadece klasik komut penceresini 1. Matlab'ın Genel Yapısı MATLAB
  • 15. 15 Command Window: Bu pencere komut penceresidir Bu pencereden Matlab ile ilgili komutları klavyeden girer, komutun islemesini sağlamak için de Enter tusuna basılır. Komutları girdiğimiz satır >> ile baslar ki bu satıra komut satırı denir Eg.Yarıçapı 3.6 olan bir daire alanı hesaplayalım 1. Matlab'ın Genel Yapısı MATLAB
  • 16. 16 Bu pencere o ana kadar komut satırından girilen komutları gösterir. İstersek bunların birini fareyle seçer, ya da bir kaçını veya tümünü fare ve asağı-yukarı yön tusları yardımıyla seçer ve delete tusuna basarak silebiliriz Command History 1. Matlab'ın Genel Yapısı MATLAB
  • 17. 17 oKomut satırından ya da çalıstırılan bir dosya ya da fonksiyon ile hafızada olusturulan değiskenlerin adlarının, tiplerinin ve özelliklerinin görüntülendiği penceredir. oÇalışma Alanı MATLAB’da işletilen fonksyonların veya komutların oluşturduğu değişkenlerin depolandığı bir merkezdir. oBöylelikle tüm değişkenlere belli bir kaynaktan ulaşılabilmektedir, bu da programlama sırasında değişkenlerin yerini, belirtmeden, bu değişkenleri kullanma imkanı sağlamaktadır. Workspace Üstüne sağ tuş yapıp özellikler eklenebilir eg.size 1. Matlab'ın Genel Yapısı MATLAB
  • 18. 18 Workspace Örneğin: c değiskeni 1x1 boyutunda bir matris yani sayı, b değiskeninin ise 3x2 boyutunda bir matris, yani üç satır ve 2 sütundan olusan bir matris, nasılsın adlı değisken de 6 karakterden olusan bir karakter zinciri (string) olduğu görülür. 1. Matlab'ın Genel Yapısı MATLAB Örnek : Command Window’a alttaki değerleri yazıp inceleyin: a = 4; b = 5; c = a*b nasılsın=‘iyidir’
  • 19. 19 Matlab Dizi Editörü oA değişkenine çift tıklandığında Matlab Dizi Editörü açılır. oBurda değişkenlerin içerikleri görüntülenir ve değiştirilebilir. 1. Matlab'ın Genel Yapısı MATLAB
  • 20. 20 who : çalışma alanında hangi değişkenler olduğu whos: bu değişkenlerin yapıları görülmektedir. what; komutu kullanıcı diskinin halihazır dizininde mevcut M- dosyaları listesini verir. 1. Matlab'ın Genel Yapısı MATLAB
  • 21. 21 clc: Komut penceresindeki satırları silmeye yarar clear: Hafızadaki değişkenler silinir 1. Matlab'ın Genel Yapısı MATLAB
  • 22. 22 Matlab Çalışma Dizini penceresindeki “ aşağı ok” basılarak çalışma dizini seçilebilir. Current Folder’da çalışmak istenilern directory yönlendirilerek hızlı ulaşım sağlanır. 1. Matlab'ın Genel Yapısı MATLAB
  • 23. 23 Current Folder: Matlab dosyalarının kaydedildiği, yüklendiği dosyaların bulunduğu klasörü (dizin), varsayılan klasör olarak belirlemeye yarar. Aksi belirtilmedikçe bu klasör C:Matlab6p5work gibi bir klasördür. Yada : save F:MATLAB_UYGkatsayilar a katsayilar.mat olarak kaydedilen a matrisininmatlab kapatılıp açıldıktan sonra herhangi bir zamanda geri çağrılmasıiçin; load F:MATLAB_UYGkatsayilar komut dizisi kullanılır. Command Windowa : save yazılırsa değişkenler “matlab.mat” veri dosyasına kaydedilmiş olur. Matlabı kapatıp açalım ve matlab.mat’ı çağıralım. (File open matlab.mat) . 1. Matlab'ın Genel Yapısı MATLAB Örnek: >> a=[1,2,3; 5,7,9] a = 1 2 3 5 7 9
  • 24. 24 MATLAB Yardım 1. Komut satırına “help” yazılır. Bu yardım sunulabilecek konuların listesini sunar. 2. help fonksyon-adı fonksyon için yardım metnini görüntüler. 1. Matlab'ın Genel Yapısı MATLAB
  • 25. 25 Matlab MasaÜstü Yeni M- Dosyası Dosya Aç Help Desk Kayıtlı Matlab Fonksyonu, kayıt dosyası(mat), modeli, figürü ve GUI arayüzlü fonksyonları açar Veri dosyalarını açar Çalışma ortamını kaydeder Farklı çalışma dizinini Matlaba tanıtır Matlab arayüzünü ayarlar 1. Matlab'ın Genel Yapısı MATLAB
  • 26. 26 Başlat Düğmesi Matlab araç kutuları, Matlab uygulamalarına eklenti olarak hazırlanan ve hazır fonksyonları içeren paketlerdir. 1. Matlab'ın Genel Yapısı MATLAB
  • 27. 27 Başlat Düğmesi Start Düğmesi tüm matlab uygulamalarına açılan kısayolları içermektedir. Matlab Uygulamaları için kısa yol Araç kutuları SimulinkUy gulaması Demolar Veri Sihirbazı GUI Hazırlayıcı 1. Matlab'ın Genel Yapısı MATLAB
  • 28. 28 Matlaba Veri Alma Programa dışarıdan resim, film, veri, ses dosyalarını matris formatına çevirerek bir değişken olarak atamada kullanılır File Import Data Örnek: Exel dosyası alma Exelde bir matrix oluşturup matlabdan import ile alınız. 1. Matlab'ın Genel Yapısı MATLAB
  • 29. 29 Matlab'da Temel Kavramlar: Tüm programlama dillerinde olduğu gibi (Fortran, C, Pascal, Basic vs..) Matlab'ın da özel anlam tasıyan bazı kelimeleri vardır ki, bu kelimeler değisken olarak kullanılamazlar. Bu tür kelimelere anahtar kelime (keywords) denir. Bu kelimelerin bir listesini almak için komut satırına; iskeyword komutunu yazarak elde edebiliriz. Bu kelimeler; 'break‘ 'case' 'catch' 'continue' 'else' 'elseif' 'end‘ 'for' 'function' 'global' 'if' 'otherwise‘ 'persistent' 'return' 'switch' 'try' 'while. 1. Matlab'ın Genel Yapısı MATLAB
  • 30. 30 Programın dili ve yardım bilgileri tamamen ingilizcedir. Küçük-büyük harf ayrımı vardır. Örneğin dscrite, DSCRITE ve Dscrite atamaları farklı şekilde algılanır Eğer istenirse “casesen off”komutu ile bu durum sona erdirilebilir. » işareti komut prompt’udur. Komutlar Enter ile yürütülür. 2. Matlab Kullanımında Temel Kurallar: Matlab
  • 31. 31 Genel komutların isimleri ve açıklamaları 2. Matlab Kullanımında Temel Kurallar: MATLAB
  • 32. 32 2. Matlab Kullanımında Temel Kurallar: MATLAB MATLAB kontrolünü kullanabilmeniz için özel karakterlere sahiptir. Bu karakterlerin bir özeti :
  • 33. 33 2. Matlab Kullanımında Temel Kurallar: Matlab
  • 34. 34 2. Matlab Kullanımında Temel Kurallar: Matlab
  • 35. 35 İFADELER : Matematiksel ve metinsel gösterimler ile işlemler ifadelerle sağlanır. 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. Sayısal Analiz x = 4 * sqrt(5) İfade değişken sayı işleç fonksiyon 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. 3. MATRİSLER
  • 36. 36 o Birden fazla ifade tek satırda aralarına , ya da ; koyarak yazılabilir. o Yazımda boşluk sayısı etkisizdir. o Sadece ilgili değişken adını yazarak o değişkeni çağırabilirsiniz. MATRİSLER 3.1. İFADELER
  • 37. 37 o MATLAB’da, herhangi bir tip tanımlaması veya boyut ifadesine gerek yoktur. o MATLAB, yeni bir değişken ismi ile karşılaştığında, otomatik olarak ans isminde bir değişken oluşturur ve uygun bir bellek miktarı ayırır. oEğer değişken zaten varsa, MATLAB gerekli bir bellek ayırdığında içeriği değişir. Örneğin, o ogrenci_sayı=51 3.2. Değişlenler Matlab Değisken: değeri değisebilen bellek alanına isaret eden değerlere,
  • 38. 38 MATLAB değişken girişleri için çeşitli kurallara sahiptir. Her değişken bir harfle başlamak zorundadır. Program büyük küçük harf duyarlıdır. X ve x farklı değişkenleri ifade eder. Program 31 basamağa kadar duyarlıdır. Bu basamaktan sonrasını yok sayar. Dolayısıyla 31 basamaktan uzun değişken isimleri karışıklık yaratabilir. 3.2. Değişlenler Matlab
  • 39. 39 Değiskenlere Değer Atama: Her hangi bir programlama dilinde olduğu gibi, Matlab’da da bir değiskene değer verme islemine ”değer atamak” denir. Bir değiskene atanan değer, değistirilmediği sürece aynı kalır. Değer atamanın genel kullanımı asağıdaki biçiminde olur: <Değisken adı>=<Atanacak değer>; 3.2. Değişlenler Matlab
  • 40. 40 Örnek 2: A=6i-7; %A: değişkenine skaler bir değer atar B=A /7; %B değişkenine A değişkeninin 1/7 si atanmıştır C=[3 4 5 6]; % 4 elemanlı bir satır vektörü atanmıştır NOT: Dizi girişinde herhangi bir satıra ait elemanlar aralarına boşluk veya virgül “,” konularak ayrılır Dizinin diğer bir satırına başlamak için biten satır sonuna ; konulur. 3.2. Değişlenler Matlab
  • 41. 41 oMATLAB’da sayılar yaygın olarak kullanılan onluk tabanda ifade edilirler. o Bunun yanısıra onluk tabanda üstel olarak veya i veya j olarak kompleks sayı biçimlerinde de ifade edilebilirler. oÖrnek olarak, 3.3. Sayılar Matlab da i ve j başka türlü tanımlanmamışsa kompleks i sayısını gösterir. 3e5 sayısıda 3*105 anlamındadır MATRİSLER
  • 42. 42 o Ondalık sayılar Türkçemizdeki 3,5 yerine 3.5 şeklinde gösterilir (0.0001 veya 9.63, 0.65 yerine .65). o Bilimsel notasyon gösterimi olan e (veya E) harfi 10’nun kuvvetini temsil eder. o 2e4=2.104=2000 veya 1.65e-20=1.65.10-20 demektir. o Kompleks sayılarda imajiner (sanal) kısımlar i veya j ekini alır. i veya j ile gosterimlerinde bir fark yoktur. o (1+3i veya 1+3*i veya 1+i*3) / 1+sqrt(3)*j / -5i o Matlab’de tüm sayılar, yaklaşık 2.10308 ve 2.10-308 arasında değişir. 3.3. Sayılar MATRİSLER
  • 44. 44 oMatlab'da bir çok eylem, dört islem ve matematiksel bazı islemler yaptırabiliriz. oBunun için, ya ilgili komutları komut penceresinden teker teker girerek veya ilgili komutları bir dosyaya yazıp, o dosyayı çağırarak çalıstırabiliriz. oİşlemleri yaptırırken, sayıları reel sayı ya da karmasık sayı olarak alabiliriz. 3.4 Operatörler(sayısal işlemciler): MATRİSLER
  • 45. 45 Matematiksel ifadeleri oluşturmak için operatörler ve önceden tanımlanmış sembolleri kullanabilirsiniz. oOperatörler özetle şunlardır: oMatrislerle yapılan işlemlerde bölme işlemi için iki farklı sembol kullanılmaktadır. oBunun yanında eğer sayılar skaler ise iki bölme işleminin sonucu da aynı değeri gösterecektir. oÖrneğin 3/2 ile 23 ifadelerinin sonuçları aynı olup 1.5’dir » 4+8*3–2 ans = 26 3.4 Operatörler(sayısal işlemciler): MATRİSLER
  • 46. 46 3.4 Operatörler(sayısal işlemciler): MATRİSLER x=a + b Bu ifadede a ve b nin toplandığı ve x değişkeni içinde saklandığı belirtilmektedir.
  • 47. 47 Aritmetiksel İşlemlerde Öncelik Durumu: oTek bir aritmetiksel durum içinde birden fazla durum bir arada bulunabildiğine göre hangi işlemin öncelik hakkına sahip olunduğunun bilinmelidir. oMATLAB’da kullanılan işlemlerde işlemlerin öncelik listesi: 3.4 Operatörler(sayısal işlemciler): MATRİSLER bazı temel matematiksel fonksiyonların açıklamaları
  • 48. 48 o MATLAB’ da işlemler soldan sağa işlerler. o İşlemler arası öncelik sırası aşağıdaki gibidir: 1. ^ (Yüksek) 2. *, / ↓ 3. +, - (Düşük) » 3^(2–5)-6/3*2 » 3^2–5–6/3*2 ans = ans = —3.9630 0 3.4 Operatörler(sayısal işlemciler): MATRİSLER
  • 49. 49 3.5. Fonksyonlar MATRİSLER o MATLAB’ın çok güçlü ve çok kapsamlı bir fonksiyon yapısı vardır. oMATLAB’da bazı fonksiyonlar daha önceden yerleştirilmiş bazıları ise sonradan dışarıdan yerleştirilmiş M-dosyalarından oluşan MATLAB kütüphanelerinde tanımlanmışlardır. oBunun yanında özel uygulamalar için kullanıcıların kendi fonksiyonlarını yazarak kendi kütüphanelerini oluşturması mümkündür. MATLAB’da mevcut analitik fonksiyonları genel olarak aşağıdaki kategorilere ayırabiliriz. oTemel matematiksel fonksiyonlar oÖzel fonksiyonlar oTemel matrisler ve matris işlemleri oMatrisleri çarpanlarına ayırma oVeri analizleri oPolinomlar oDiferansiyel denklem çözümleri oLineer olmayan denklemler ve optimizasyon oSayısal integral hesaplamaları oSinyal işleme
  • 50. 50 Matematiksel Fonksiyonlar: bazı temel matematiksel fonksiyonların açıklamaları 3.5. Fonksyonlar MATRİSLER Örnek: >>exp(1) ans=2.7183 >>fix(3.5) ans=3 >>ceil(3.5) ans=4 >>round(3.5) ans=4
  • 51. 51 Matlab'da önceden tanımlanmıs bazı sabitlerdir. Bunlar aşağıdaki tabloda gösterilmistir. 3.6. Özel Sabitler Matlab
  • 52. 52 Örnekler: 1) a=1; 2) a=’İstanbul’ 3) a=5;b=7;c=a+b; 4) a=5;b=-3;c=a+2*b;a=a+b; 5) num=2*3-5^2; x=num/2, y=x+10; 7. Sabitler, Değiskenler ve Metin Katarları Matlab
  • 53. 53 Örnek: Komut satırına a) sin(30) b) sin(30*pi/180) yazınız sonuçları inceleyiniz. 3.5. Fonksyonlar MATRİSLER Cevap: a) -0.9880 sonucu görülür ki bu 30° nin sinüsünde n farklıdır. Çünkü bu 30° derece değil 30 radyanın sinüsüdür. b) 0.5000 sonucu görülür ki bu da 30° nin sinüsüd ür. O halde bir sayının trigonometrik değerini buldurmak için, önce pi ile çarpıp 180 e bölerek açıyı radyan çevirip sonra trigonometrik değerini hesaplatabiliriz.
  • 54. 54 oVektörler tek boyutlu sayı dizileridir. oElemanlarının sıralanma yönlerine göre sütun veya satır vektörü adlarını alırlar. ovektörler [ ] köşeli parantezleri ile tanımlanır ofarklı yolla tanımlanabilirler 4. Vektörler Matlab A = [4, 12, -8, 6];A = [4 12 -8 6]; B = [1; 2; 4; 6]; Satır Vektörü Sütun Vektörü>> b=[1 2 4 6 ]
  • 55. 55 4. Vektörler Matlab ovektör boyutları büyüdükçe, manuel olarak tanıtım işlemi oldukça zorlaşmaktadır. oÖzellikle belli bir artıma sahip vektörlerin oluşturulmasında (:) operatörü kullanılmaktadır. C = [-1:0.5:150]; Son değerBaşlangıç değeri Artış miktarı D’ = [30:-10:-30] Sütun Vektörü
  • 56. 56 Vektör indisleri 4. Vektörler Matlab Bir vektörün elemanlarına atanılan değer değişkenler editörü veya eleman adresi vasıtasıyla değiştirilebilir. Örnek: A = [4 12 -8 6]; 1. A vektörünün 3. elemanını 27 ile değiştiriniz. 2. Benzer şekilde A vektörünün 2. elemanını siliniz. 3. A(9) = 12 Çözüm: 1. A(3) = 27 2. Vektörün elemanına [ ] değeri atandığında eleman silinir. A(2) = [ ] 3. >> A(9) = 12 A= [ 4 27 6] A =[ 2 27 7 0 0 0 0 0 12]
  • 57. 57 » x=[17 8 61 83 56]; Şeklindeki bir matrisin üçüncü elemanına erişmek istenirse » c=x(3) c = 61 Eğer bir blok şeklinde veriye erişilmek istenirse; » x(2:4) ans = 8 61 83 Her matristeki herhangi bir elman grubuna erişilmek istenirse; » x([3 1 4]) ans = 61 17 83 5. Matlab'da Dizi (Matris) İşlemleri: Matlab
  • 58. 58 Bir diziye düzenli artıs (veya azalıs) kuralıyla değerler atanmak isteniyorsa bunu; ilk_değer:artıs:son değer veya ilk_değer:artıs:son değer biçiminde yapabiliriz. Ancak artıs 1 ise belirtilmeyebilir. Örnek: ortalama adlı bir diziye 0 dan 5 e kadar 0.5 er artısla elde edilen sayı dizisini atayan; ortalama=[0:0.5:5]; Siz: 1. satır 7 den den 17 ye kadar olan tam sayılar, 2. satırı 99 dan 89 a kadar azalan tam sayılardan olusan 2 boyutlu m dizisine atayan islemleri yazınız?? Dizilerin Değerlerinin Değistirilmesi ve Düzenlenmesi: 4. Vektörler Matlab
  • 60. 60 Sayılardan olusan satır ve sütun yapısına matris (dizi) denir. Örneğin; d1=[5] 1x1 lik, d2=[ 2 -7] 1x2 lik, d3= [1 0 -3 ] [ 5 3 1 ] 2x3 lük bir dizidir. Örnek: x=[1; 7; 18; 5] Ya da » x=[ 1 7 18 5 ] Biçimlerinde girilebilir. 5. Matlab'da Dizi (Matris) İşlemleri: Matlab
  • 61. 61 Dizilerin Değerlerinin Değistirilmesi ve Düzenlenmesi: Bir dizinin herhangi bir elemanını belirlemek için dizi adından hemen sonra parantez içinde elemanın bulunduğu satır ve sütun sayısı yazılmalıdır. Örnek: 1. d2=[2 -7] d2 dizisinin -7 elemanını görüntülemek için: d2(1,2) 2. d3=[1 0 -3;5 3 1] d3 dizisinin 2. satır, 1. sütununda bulunan 5 in değerinin, -7.5 olması için: d3(2,1)=-7.5; Not:1) Bir dizinin bir çok elemanını yeniden değer atamak gerekirse, komut satırından atama yapmak uzun zaman alabilir. Bu durumda dizi değiskeninin üzerine çift tıklayarak açılan dizi editörü (array edit) yardımıyla değisiklikleri daha kolay yapabiliriz. 5. Matlab'da Dizi (Matris) İşlemleri: Matlab
  • 62. 62 8. Matrisler(Dizi) Matlab Bir matrisi girerken , o1. Elemanlar, baştan ve sondan köşeli parantezlerle kapatılır. o2. Elemanların arasına boşluk veya virgül konulur. o3. Matris satırlarını ayırmak için de noktalı virgül kullanılır. okurallarına dikkate alınmalıdır. Örneğin, A = [1 2 3; 4 5 6]; A = 1 2 3 4 5 6 şeklinde veriler matrisler biçiminde tanımlanır. MATLAB daha sonra kullanılmak üzere verileri A matrisinde saklar.
  • 63. 63 Matris elemanları rasgele rakamlardan oluşabileceği gibi MATLAB’ın deyimlerinden de oluşabilir. 5.1. Matrislerde Elemanlar Matlab Örneğin. a=[-1.3 sqrt(3) (1+2+3)*475] a= -1.3000 1.7321 4.8000 Küçük matrisleri eleman olarak kullanıp daha büyük matrisler oluşturmak mümkündür. Örneğin, M=[1 3 5 7 8 9] matrisine aşağıda gösterildiği şekilde bir satır eklemesi yapabilir. M=[M;[10 13 15]] Bu durumda M matrisi M=[1 3 5 7 8 9 10 13 15] durumunu alır.
  • 64. 64 İki nokta üst üste (:) kullanarak büyük matrislerin belli bir kısmını kullanabiliriz ya da diğer ifade ile bu matrisi küçültebiliriz. Örneğin, M=M(1:2,:) bildirimi M matrisinin ilk iki satırını alarak M matrisi olarak saklar. Örnek: M=[8 -4 7; 66 -7 8 9; 4 5 134] ise: M=M(1:2,:) =? 8. 1. Matrislerde Elemanlar Matlab
  • 65. 65 MATLAB’da kullanıcı verileri kendi oluşturacağı matrisler ile tanımlayabileceği gibi MATLAB’ın kendi özel matrislerinden de istifade edilebilir. 5.2. Genel Matrisler: Matlab
  • 66. 66 Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar: a) Sıfır Matrisi Olusturan Fonksiyon: Her elemanı sıfır olan mxn boyutunda bir matrise sıfır matrisi denir. Böyle bir dizi olusturmak için zeros fonksiyonu kullanılır. Kullanımı; matris_adı=zeros(m,n); biçimindedir. Örnek: 3x5 boyutunda s adlı sıfır matrisi için: s=zeros(3,5); 5.2. Genel Matrisler: Matlab
  • 67. 67 b) 1 lerden Olusan Matris: Her elemanı 1 olan mxn boyutunda bir matrisi olusturmak için ones fonksiyonu kullanılır. Kullanımı; matria_adı=ones(m,n); biçimindedir. Örnek: 2x3 boyutunda b adlı tüm elemanları 1 olan matrisi olusturalım. b=ones(2,3); Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar: 5.2. Genel Matrisler: Matlab
  • 68. 68 c) Birim Matrisi Olusturan Fonksiyon: Esas kösegeni 1 lerden diğer elemanları 0 lardan olusan kare matrise (satır ve sütun sayısı esit olan ) birim matrisi, kare olmayan matrise de diyagonal matris denir. Böyle matrisleri olusturmak için eye fonksiyonu kullanılır. Kullanımı; matris_adı=eye(m,n); biçimindedir. Örnek: a) 3x3 lük birim matris; b) 4x3 llük diyagonal matris olusturalım. Çözüm:a) i=eye(3,3); b) d=eye(4,3); Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:5.2. Genel Matrisler: Matlab
  • 69. 69 d) Rastgele Sayılardan Olusan Matris ve Fonksiyonu: Elemanları 0 ile 1 arasındaki rastgele sayılardan olusan bir matris için rand fonksiyonu kullanılır. Kullanımı; matris_adı=rand(m,n); biçimindedir.(m:satır,n:sütun) Not 1) Üretilen matrisin tüm elemanlarını k gibi bir sayı ile çarparak, sayıları 0 ile k arasına çekebiliriz. Not 2) Ondalıklı sayılardan olusmus bir matrisin elemanlarını yuvarlayıp tam sayı yapmak için round fonksiyonunu kullanırız. Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar:5.2. Genel Matrisler: Matlab
  • 70. 70 Örnek: a) 0 ile 1 arasında rastgele sayılardan olusan 10 elemanlı a adında bir satır matrisi olusturalım. b) Elemanları 10 ile 50 arasında sayılardan olusan 5x3 tipinde b matrisini olusturalım. c) Elemanları 50 ile 300 arasındaki tamsayılardan olusan 3x4 tipinde c matrisini olusturalım. Özel Dizi (Matris) Olusturan Bazı Fonksiyonlar: d) Rastgele Sayılardan Olusan Matris ve Fonksiyonu: 5.2. Genel Matrisler: Matlab
  • 71. 71 Çözüm: a) a=rand(1,10); b) b=10+rand(5,3)*40; c) c=round(50+rand(3,4)*250); 5.2. Genel Matrisler: Matlab
  • 72. 72 e) Rastgele Sayılardan Olusan Normal Dağılımlı Matris ve Fonksiyonu: Elemanları rasstgele sayılardan olusan bir normal dağılımlı bir matris için randn fonksiyonu kullanılır. Kullanımı; matris_adı=randn(m,n); biçimindedir. Örnek: Rastgele sayılardan olusan normal dağılımlı 2x3 lük bir n matrisini olusturalım. Çözüm: n=randn(2,3); 5.2. Genel Matrisler: Matlab
  • 73. 73 f) Lineer Aralıklı (Aritmetik) Dizi ve Fonksiyonu: Baslangıç ve biis değerleri ve kaç elemandan olusacağı belirlenen diziyi olusturmak için linspace fonksiyonu kullanılır. Kullanımı; dizi_adı=linspace(ilk_değer,son_değer,eleman_sayısı); biçimindedir. 5.2. Genel Matrisler: Matlab
  • 74. 74 Örnek: 10 ile 30 arasına 9 tane daha sayı koyarak a adında bir aritmetik dizi olusturalım. f) Lineer Aralıklı (Aritmetik) Dizi ve Fonksiyonu: 5.2. Genel Matrisler: Matlab Cevap: a=linspace(10,30,11);
  • 75. 75 Elimizdeki grubun her elemanı için bir matematik işlemi yapıp bunu yeni bir diziye atarken herhangi bir sorun yoktur. Fakat iki farklı grupla işlemler yaparken dikkat etmemiz gereken genel kurallar vardır. Örneğin toplama ve çıkarma yaparken iki dizinin de büyüklüğünün eşit olması gerekmektedir. Ayrıca iki farklı dizinin elemanları arasında birebir işlem yapmak için matematik operatörünün başına nokta(.) koymak gerekir. Bu durumda her bir elemanı diğer dizinin o sıradaki elmanı ile işleme sokacaktır. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 76. 76 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 Örnek: » x=[ 3 4 5 6; 7 8 9 10; 11 12 13 14] x = 3 4 5 6 7 8 9 10 11 12 13 14 Yukarıdaki 3x4 boyutunda bir matristir. MATLAB programına aşağıdaki gibi de sunulabilir. » x=[ 3 4 5 6 7 8 9 10 11 12 13 14] x = 3 4 5 6 7 8 9 10 11 12 13 14 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 77. 77 Matristeki herhangi bir elemana direk ulaşmak için aşağıdaki gösterim yeterlidir. » x(2,3)=9 Eğer isteğimiz eriştiğimiz bir elemanı değiştirmek veya yeni bir satır eklemek ise aşağıdaki gösterim yeterlidir. . » x(4,1)=1 x = 3 4 5 6 7 8 9 10 11 12 13 14 1 0 0 0 Bu durumda dördüncü satır ilk elemanını biz 1 değerini atadık ve diğer elemanları kendiliğinden “0” olarak atadı. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 78. 78 İki nokta üst üste (:) kullanılarak belirli aralıkta değişen matrisler yaratılabilir. » x=[1:2:7; 3:-1:0; -1:2] x = 1 3 5 7 3 2 1 0 -1 0 1 2 Bir matrisin herhangi bir bölümünü seçmek için ise aşağıdaki gösterim kullanılır; » z=x(2:3, 1:2) z = 3 2 -1 0 Bu durumda z matris x matrisinin 2 ve 3 no’ lu satırlarından 1 ve 2 no’ lu sütunlarını almış oluyor. Herhangi bir satır veya sütunu tamamen silmek istersek o satır ve sütunu seçip “[]” ifadesine eşitleriz. » z(:,2)=[ ] z = 3 -1 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 79. 79 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 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 80. 80 a) Toplama-Çıkarma Bir Sayı ile Çarpma İşlemi: İki matrisi toplamak (veya çıkarmak) demek, matrislerin aynı mertebedeki elemanları teker teker toplayıp (veya çıkarıp ) aynı mertebeye yazmak demektir. Bu durumda iki matrisin de aynı mertebeden olması gereği açıktır. Bir matrisi sabit bir sayıyla ile toplamak (veya çıkarmak) demek, matrisin elemanlarınının tümünü teker teker o sayıyla toplamak (veya çıkarmak )demektir. Bir matrisi sabit bir sayıyla ile çarpmak demek ise, matrisin elemanlarınının tümünü teker teker o sayıyla çarpmak demektir. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 81. 81
  • 82. 82 Örnek: » a=[1 2 3; 4 5 6]; » b=[7 8 9; 10 11 12]; a ve b toplamı: » sum=a+b sum = 8 10 12 14 16 18 a’ yı b’ den çıkarmak; » diff=a-b diff = -6 -6 -6 -6 -6 -6 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 83. 83 Örnek: a=[-1 3 5;2 1 7] ve b=[3 -3 -4;1 1 5] matrisleri veriliyor. a) c=a+b toplam matrisini b) d=a-b matrisini c) amatrisinin her elemanınının 5 eksiğine karsılık gelen e matrisini d) f=2a-3b matrisini bulduran islemleri yazalım. 6. MATRİSLER VE İŞLEMLERİ Matlab Çözüm: a) c=a+b b) d=a-b c) e=a-5 d) f=a+a-b-b-b veya f=2*a-3*b
  • 84. 84 İki matrisin çarpım islemi iki biçimde anlasılır. 1) Aynı mertebeden iki matrisin elemanlarını teker teker , çarpıp, aynı mertebeye yazmak demektir. Bunu .* islemi ile gerçeklestiririz. 2) Matematiksel anlamda iki matrisi çarpmak istediğimizde; birinci matris mxn türünde ve ikinci matris mutlaka nxp türünde olmalıdır; yani birinci matrisin sütun sayısı ikinci matrisin satır sayısına eşit olmalıdır. Bu durumda birinci matrisin i. sütun elemanları ile, ikinci matrisin j. satırındaki elemanlar karılıklı olarak çarpılır ve sonuçlar toplanır ve bu toplam çarpım matrisinin (i,j) inci mertebeye yazılır. Matrisler arası çarpma isleminin sembolü de * dır. b) İki Matrisin Çarpımı, Bir Matrisin Kuvvetleri ve Çarpma İslemi: 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 85. 85 3) Bir a matrisinin her bir elemanının n. Kuvvetlerinden olusan matrisi bulmak için a.^n islemi kullanılır. 4) Satır ve sütun sayıları esit bir kare matrisi ardısık olarak n defa kendisiyle çarparak, a matrisinin n. kuvvetini bulabiliriz.Örneğin a matrisinin karesi için a*a veya a^2, kübünü buldurmak için a*a*a veya a^3, dördüncü kuvvetini buldurmak için a*a*a*a veya a^4 Not) Bir a matrisinin eleman -elemana çarpma islemine benzer mantıkla, bir matrisin tüm elemanlarının kareleri, kübleri, sinüsleri, kosinüsleri, logaritmalarından olusan matris bulunmak istenirse; bunu sırayla a.*a (veya a.^2), a.*a.*a, (veya a.^3), sin(a), cos(a), e tabanında logaritması için log(a), 10 tabanında logaritmaları için log10(a) ... Biçiminde gerçeklestirebiliriz. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 86. 86 a) a matrisinin elemanları ile b matrisinin elemanlarını karsılıklı çarpımlarından olusan c1 matrisi varsa bulalım. b) a matrisi ile b matrisinin çarpım matrisi olan c2 varsa bulalım. c) a matrisinin elemanları ile c matrisinin elemanlarını karsılıklı çarpımlarından olusan c3 matrisi varsa bulalım. d) a matrisi ile c matrisinin çarpım matrisi olan c4 varsa bulalım. e) a matrisinin elemanlarının karelerinden olusan matris ile b matrisinin kosinüslerinden olusan matrisler toplamını bulalım. f) x=[1 0;0 3] matrisinin i) Karesini ii) Kübünü iii) 10. kuvvetini bulalım. Örnek: a=[-1 3 5;2 1 7] , b=[3 -3 -4;1 1 5] ve c=[1 0;-1 2;3 3] matrisleri veriliyor. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 87. 87 Çözüm: a) iki matrisin karsılıklı elemanlarının çarpımından olusan matrisin tanımlı olabilmesi için aynı mertebeli olması gerekir.Bu durumda c1 matrisi tanımlıdır ve bunu c1=a.*b islemi ile gerçeklestirebiliriz. b) iki matrisin çarpılabilmesi için birinci matrisin sütun sayısı ikinci matrisin satır sayısına esit olmalıdır.Halbuki a matrisi 2x3 b matrisi de 2x3 olduğundan bu iki matris çarpılamaz. c) İki matrisin karsılıklı elemanlarının çarpımından olusan matrisin tanımlı olabilmesi için aynı mertebeli olması gerekir.Halbuki bu matrisler aynı mertebeden olmadığından bu iki matris eleman-elemana çarpma islemi gerçeklemez. d) İki matrisin çarpılabilmesi için birinci matrisin sütun sayısı ikinci matrisin satır sayısına esit olmalıdır.a matrisi 2x3 lük, c matrisi de 3x2 lik olduğundan bu iki matris çarpılabilir ve c4 çarpım matrisi 2x2 lik bir matris olur.c4 çarpım matrisini c4=a*c islemi ile buluruz. e) a.^2+cos(b) f) i) x^2 ii) x^3 iii) x^10 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 88. 88 c) Bir Matrisin Devriğini (Transpozesi) Bulma İslemi: Bir matrisin satırlarını sütun, sütunlarını satır olarak yazılmasıyla bulunan matrise, bu matrisin devriği (transpozesi) denir. Bir matrisin devriğini .' islemi ile bulabiliriz. Örnek: a=[-1 3 5;2 1 7] nın devriğini buldurup d matrisine atayalım. Çözüm: d=a.'; 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 89. 89 Örnek: b=[7 8 9; 10 11 12]; matrisinin transpozesini bulabilirmisiniz? 6. MATRİSLER VE İŞLEMLERİ Matlab Çözüm: c=b' c = 7 10 8 11 9 12
  • 90. 90 SORU: a=[1 2 3; 4 5 6]; c= [7,10;8,11;9,12]; ise a ve c’nin çarpım matrisi kaçtır? 6. MATRİSLER VE İŞLEMLERİ Matlab ÇÖZÜM: Çarpma işlemi: k=a*c k= 50 68 122 167
  • 91. 91 SORU : a=[1 2 3; 4 5 6]; b=[7 8 9; 10 11 12]; ise a matrisinin elemanları ile b matrisinin elemanlarını karsılıklı çarpımlarından olusan x matrisini bulalım? 6. MATRİSLER VE İŞLEMLERİ Matlab ÇÖZÜM: x=a.*b x = 7 16 27 40 55 72
  • 92. 92 d) İki Matrisin Bölümü, Birim Matris ve Bir Matrisin Tersi : Aynı mertebeden iki matrisin elemanlarını teker teker, bölerek, aynı mertebeye yazılmasına iki matrisin sol bölmesi denir ve bu ./ islemi ile yapılır. a, b ve c aynı mertebeden kare matrisler olmak üzere; c=a*b ise a matrisine c nin b matrisine bölümü denir. c bölüm matrisi / islemi ile yapılır. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 93. 93 HATIRLATMA: 2x2 lik i2 adlı birim matrisi i2=eye(2,2); 3x lük i3 adlı birim matrisi i2=eye(3,3); islemi ile olusturabiiriz. Aynı mertebeden a ve b kare matrisleri için a ile b nin çarpımı birim matris ise b matrisi a matrisinin (aynı biçimde a matrisi de b matrisinin) ters matrisidir. Örnek: 3x3 lük bir a kare matrisinin tersini bulmak için: d) İki Matrisin Bölümü, Birim Matris ve Bir Matrisin Tersi : eye(3,3)/a veya inv(a) islemini kullanırız. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 94. 94 Bir Matrisin Determinantı Determinant, kare matrisleri bir sayıya eşleyen fonksiyondur. Determinant fonksiyonunun, kare matrisi eşlediği o sayıya matrisin determinantı denir. A matrisinin determinantı, detA veya |A| biçiminde gösterilir. |A|, matrislerde mutlak değer anlamına gelmez. |A| sıfır veya negatif de olabilir. det(x) 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 95. 95 KURAL: 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 96. 96 Örnek: Verilen bir x matrisi için: » x=[ 2 -1; 5 8] Determinant: » deter=det(x) deter = 21 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 97. 97 Örnek Inverse işlemi: Verilen bir x matrisi için: » x=[ 2 -1; 5 8] Detx=det(x)=21 ise; » y=inv(x) y = 8/21 1/21 -5/21 2/21 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 98. 98 SORU: a=[2 -10 0;1 2 4;3 0 1] matrisi ile b=[1 5 4;1 -1 2;0 1 -1] matrisleri veriliyor. a) a matrisinin elemanlarını sırasıyla b matrisinin elemanlarına bölerek elde edilen matrisi b1 matrisine atayalım. b) a matrisinin ta ters matrisini bulalım. c) a ile ta matrisinin çarpımının 3x3 lük birim matris olduğunu gösterelim. d) a matrisinin b matrisine bölümünü b2 matrisine atayalım. 6. MATRİSLER VE İŞLEMLERİ Matlab
  • 99. 99 Çözüm: a) b1=a./b b) ta1=eye(3,3)/a veya ta2=inv(a) c) a*ta ==eye(3,3) d) b2=a/b 6. MATRİSLER VE İŞLEMLERİ Matlab