Matlab Nedir? Matlab’de Temel Programlama
Bu yazıda sizlere günümüzde yaygın bir şekilde kullanılan Matlab programlama dilinden bahsedeceğim. Genel olarak Matlab nedir, kullanım yerleri nelerdir, Matlab çalışma ortamına ait bazı komutlar ve belli başlı komut işaretlerinden bahsedeceğim. Keyifli okumalar.
İçerikler
Matlab nedir?
MATLAB(Matrix Laboratory), 1985 yılında C.B Moler tarafından matematik ve matris esaslı matematik işlemleri için kullanılmak üzere geliştirilmiş programlama dilidir. Matlab temel olarak C dilinde yazılmıştır.
Temel bilimler ve mühendislik alanlarında; sayısal hesaplama, veri çözümleri ve grafik işlemlerinde kullanılır.
Matlab’in fonksiyon kütüphanesi sayesinde diğer programlama dillerine göre daha az komutla işlem yapmak mümkündür. Matlab, M-dosyaları adı verilen çok sayıda fonksiyon dosyalarından oluşur. M-dosyaları, ASCII formatında olup, Matlab programlama dili kodlarından oluşmaktadır.
Matlab, matematik ve mühendislik uygulama alanlarında oldukça yaygın bir şekilde kullanılır.
Matlab’in kullanıldığı başlıca alanlar:
- Matematiksel hesaplama işlemleri
- Veri Analizi
- Algoritma Geliştirme
- Makine Öğrenmesi
- Derin Öğrenme
- Simülasyon
- 2 Boyutlu ve 3 Boyutlu Grafik Çizme
- İstatistiksel Hesaplamalar
Çalışma ortamına ait bazı komutlar
Demo Komutu: Matlab’in versiyon yeniliklerini öğrenmek için Demo komutu kullanılabilir.
Quit ve exit komutları: Matlab ortamından çıkmak için kullanılan komutlardır.
Save ve load komutları: Matlab’deki çalışmalarınızı kaydetmek ve yüklemek için kullanılan komutlarıdır.
clc komutu: Komut ekranını temizlemek için kullanılır.
clear ve pack komutları: Matlab’de çalışırken tanımlanan değişkenler ve fonksiyonlar normal olarak bellekte yer tutarlar. Tanımlanan değişken sayısı arttıkça bellekte daha fazla yer tutulur.Bu durumda küçük bilgisayar sistemlerinde bellek sorunu(Out Of Memory) ortaya çıkabilir. Çalışmanız devam ederken tanımlanan değişken ve fonksiyonlar silinmek isteniyorsa clear komutunu kullanılmalıdır. Bu komut kullanıldıktan sonra önceden tanımlanan değişkenler ve fonksiyonlar yeniden tanımlanmazsa kullanılamazlar.
Çalışmanızı sürdürürken tanımlanan değişkenleri farklı yerlerde kullanmaya devam ediyorsanız ve aynı zamanda bu değişkenlerin bellekte çok yer kaplamasını istemiyorsanız Pack komutu kullanılmalıdır. Pack komutu bilgileri gereken en küçük alana sıkıştırarak bellekte yer açar.
İcranın sona erdirilmesi: Özellikle sonsuz döngü yaratıldığında, döngünün sonlandırılması ya da yapılan herhangi bir işlemin kesilmesi için Ctrl+C tuşları kullanılabilir.
Casesen off, casesen komutları: Matlab’de büyük ve küçük harf duyarlılığı vardır. Örneğin “Date” ve “date” değişkenleri farklı değişkenlerdir. Harf duyarlılığını ortadan kaldırmak için casesen off , aktif etmek için casesen komutları kullanılabilir.
Who, whos, what komutları: who komutu kullanıcı tarafından tanımlanan değişkenlerin listesini verir. whos komutu ise değişkenlerin boyutlarını ve sıfırdan farklı olan sanal kısımlarının olup olmadığını gösterir. what komutu ise mevcut M-dosyalarının listesini verir.
Help komutu: Matlab’de çalışırken bazı konularda yardıma ihtiyaç duyulabilir. Bu durumlarda help yardımistenenkonu komutu kullanılarak yardım alabilirsiniz. Burada yardımistenenkonu yerine sorunun adı gelmelidir.
Matlab’de kullanılan belli başlı komut işaretleri
Köşeli parantez [ ]: Matlab’da matris ve vektör tanımlamak için kullanılır. Örnek olarak:
INPUT:
>> %MATRİS TANIMLAMA
>> B = [7 8 9; 11 12 13; 14 15 16]
OUTPUT:
B =
7 8 9
11 12 13
14 15 16
INPUT:
>> %VEKTÖR TANIMLAMA
>> A = [1 2 3 4 5]
OUTPUT:
A =
1 2 3 4 5
Virgül (,): Matris indislerini ve fonksiyon argümanlarını ayırmak için kullanılır.
Noktalı Virgül (;): Yazılan kodların sonuçlarının ekranda görüntülenmesini engeller. Ayrıca matrislerde satırları sona erdirmek için de kullanılır.
INPUT:
>> A = [3 5 7 9]
OUTPUT:
A =
3 5 7 9
>> B = [3 5 7 9];
>>
Yüzde işareti (%): Yüzde işareti yorum satırı için kullanılır. Örnek olarak:
INPUT:
>> %Matlab'de yorum satırı.
OUTPUT:
>>
Tırnak işareti (‘): Tırnak işareti matrislerin transpozesini, (.’) işareti ise eşlenik olmayan transpozesini bulmayı sağlar.
INPUT:
>> A = [1 2 3 4; 5 6 7 8; 9 10 11 12] %A matrisini tanımlayalım
OUTPUT:
A =
1 2 3 4
5 6 7 8
9 10 11 12
INPUT:
>> A' %A matrisinin transpozesini bulalım.
OUTPUT:
1 5 9
2 6 10
3 7 11
4 8 12
Toplama ve Çıkarma (+,-): En az iki matrisi toplamak ya da çıkarmak için kullanılır. İşlemlerin gerçekleştirilebilmesi için matrislerin aynı boyutta olması ya da matrislerden en az birinin skaler nitelikte olması gerekir.
Hatasız Çıktı
INPUT:
>> X = [1 2 3;4 5 6; 7 8 9] %X matrisini tanımlayalım.
OUTPUT:
X =
1 2 3
4 5 6
7 8 9
INPUT:
>> Y = [10 11 12;13 14 15;16 17 18] %Y matrisini tanımlayalım.
OUTPUT:
Y =
10 11 12
13 14 15
16 17 18
INPUT:
>> X + Y %X ve Y matrislerini toplayıp, sonucunu verecek.
OUTPUT:
11 13 15
17 19 21
23 25 27
INPUT:
>> X - Y %X matrisinden Y matrisini çıkarıp, sonucunu verecek.
OUTPUT:
-9 -9 -9
-9 -9 -9
-9 -9 -9
Hatalı Çıktı
INPUT:
>> X = [1 2 3;4 5 6]
OUTPUT:
1 2 3
4 5 6
INPUT:
>> Y = [7 9;10 11]
OUTPUT:
Y =
7 9
10 11
INPUT:
>> X + Y %Matrislerin boyu aynı olmadığından hata alacağız.
OUTPUT:
Matrix dimensions must agree.
Çarpma (*): X*Y , X ve Y matrislerinin çarpımında kullanılır. X ve Y’den en az biri skaler değilse, X’in sütun sayısı Y’nin satır sayısına eşit olmalıdır.
INPUT:
>> X = [5 7 3;6 8 5;12 2 9]
OUTPUT:
5 7 3
6 8 5
12 2 9
INPUT:
>> Y = [2 5;8 6;4 7]
OUTPUT:
Y =
2 5
8 6
4 7
INPUT:
>> X * Y
OUTPUT:
78 88
96 113
76 135
INPUT:
>> %X'in sütun sayısı ile Y'nin satır sayısı aynı.
inv() komutu: Bir matrisin tersini bulmak için kullanılır.
INPUT:
>> A = [10 15 20;5 8 9;1 3 4]
OUTPUT:
A =
10 15 20
5 8 9
1 3 4
INPUT:
>> inv(A) %A matrisinin tersi bulunur.
OUTPUT:
0.2000 0 -1.0000
-0.4400 0.8000 0.4000
0.2800 -0.6000 0.2000
Bölme (/), (\): Sağdan ve soldan bölme olarak ikiye ayrılır. X\Y, Y matrisinin X matrisine bölümüdür. Bu da inv(X)*Y ile aynıdır. X/Y ise X matrisinin Y matrisine bölümünü ifade eder. Bu da inv(Y)*X ile aynıdır.
INPUT:
>> A = [1 5 7;4 3 2;9 10 6]
OUTPUT:
A =
1 5 7
4 3 2
9 10 6
INPUT:
>> B = [7 8 11;3 17 21;19 23 29]
OUTPUT:
B =
7 8 11
3 17 21
19 23 29
INPUT:
>> inv(B)*A %Böylece A/B hesaplanır.
OUTPUT:
0.3377 0.3377 0.0088
3.2368 -1.7632 -6.5263
-2.4781 1.5219 5.3772
Kuvvet alma (^): Matrislerde kuvvet almak için kullanılır. C=A^B ifadesinde, B eğer skaler ise tekrarlı çarpma yolu ile sonuç hesaplanır. Eğer A skaler ve B matris ise hesaplama işlemi özdeğerler ve özvektörler kullanılarak hesaplanır. A ve B matris ise hata olur.
INPUT:
>> B = [7 8 11;3 17 21;19 23 29]
OUTPUT:
B =
7 8 11
3 17 21
19 23 29
INPUT:
>> B^2 %B matrisinin 2.kuvvetini hesaplayacağız.
OUTPUT:
282 445 564
471 796 999
753 1210 1533
Son olarak,
‘ < ’ , ’<= ’ : küçük, küçük eşit işlemcisi,
‘ > ’ , ‘ > = ’ : büyük, büyük eşit işlemcisi,
‘ = ’ : Atama işlemcisi,
‘ == ’ : Mantıksal eşittir işlemcisi,
‘ & ‘ : Mantıksal “ ve” işlemcisi,
‘ | ’ : Mantıksal “veya ” işlemcisi olarak kullanılır.
Matlab’de kullanılan komutlar ve temel fonksiyonlar ile ilgili olan yazıma buradan ulaşabilirsiniz.