Matlab’ da dizi(array), en genel tanımı ile nümerik veya metinsel veriler topluluğudur. Matlab ile bir, iki veya daha fazla boyutlarda dizileri oluşturup işleyebilirsiniz. Matlab programlama dilinde, bir vektör tek boyutlu bir matris anlamına gelir; bir matris,genel olarak dizi anlamına gelir,örneğin 1’den büyük m ve n için m×n dizidir.Diziler, açık döngüler olmadan, temel tipli ve birçok standart fonksiyonları yerel olarak destekleyip işlemler yapılmasına izin verir. Bu nedenle Matlab programlama, aynı zamanda bir dizi(array) programlama dili örneğidir.
1×1 dizisi, skaler gösterir,
n×1 veya 1×m dizisi, bir vektör gösterir,
m×n veya n×m dizisi, bir matris gösterir. Buradan, n×1 dizisi, sütun matrisi;
1×m dizisi, satır matrisi betimler. n×1 ve 1×m tek boyutlu dizi olan vektörler şu şekilde oluşturulabilir.
- i ) satır vektörleri: >>f=[a1 a2 a3 … an] veya >>f=[a1,a2,a3, … ,an]
- sütun vektörleri: >>f=[a1;a2;a3; … ;an]
- ii) eşit aralıklı elemanlar ile(” : “)
- f=ilk değer : değişim miktarı : son değer
NOT: Değişim miktarı belirtilmezse artış 1 birim olacaktır. Örneğin;
a=1:10 c=2:4:22
yani, a=1,2,3,4,…,9,10 ve c=2,6,10,14,18,22 demektir.
Matlab’da bazı komutlar sayesinde program yazmadan elde edeceğiniz ifadeler mevcuttur.
- length(a)= a vektörünün eleman sayısı
- max(a)= a vektörünün maksimum elemanı
- min(a)= a vektörünün minimum elemanı
- size(a)= a matrisinin boyutu
- size(a,1)= a matrisinin satır sayısı
- size(a,2)= a matrisinin sütun sayısı
- det(a)= a matrisinin determinantı
- inv(a)= a matrisinin tersi
- a’= a matrisinin transpozu
Programlama:
Bilgisayar programlamasını keyfinize göre yazıp oluşturamazsınız bunun için belirli düzen ve kurallara uyma zorunluluğunuz var. Bir yazılımda genel olarak aşağıdaki kural göz önünde bulundurulur.
- Probleminin ne için gerektiği yani tanımı
- Çözüm yöntemi (Algoritma)
- Kodlama
- Test (programı çalıştırma)
- Geliştirme ve Güncelleme (Update)
Matlab’ da programlama daha çok iki yolla yapılır.
1) Komut satırında (command windows) programlama
2) M-dosya(M-file) oluşturarak programlama
M-Dosya (M-File)
Çok komutlu bir program yazacağımızda tercih ettiğimiz yoldur. Yani, bir hesaplama yapmak için gireceğimiz bir çok komut dizisi için,komut penceresinden tek tek girmek yerine bir dosyada saklanır ve gerekli görüldüğünde bu dosya çalıştırılarak komutlar aktif hale gelir. Yalnız bu dosyalar Matlab dizininde “dosya_adı.m” uzantısıyla saklanması gerekir. Programlamaya geçmeden önce alt yapımızı iyi oluşturmamız lazım,yine bize lazım olacak ve sıkça kullanacağımız matematiksel operatörleri verelim.
- == eşittir,
- ~= eşit değildir,
- > büyüktür,
- < küçüktür,
- >= büyük eşittir,
- <= küçük eşittir.
unutmayın ki problem çözümlerinde kullanacağımız “=” ile komutlarda kullanacağımız “==” birbirinden farklıdır; bu ikisine dikkat edin.
Örneğin, dışarıdan yarıçap girilerek dairenin alanını ve çemberin çevresini veren program kodu yazalım.
1 2 3 4 5 6 |
clear all; r=input('yaricapi giriniz='); alan=pi*r^2; cevre=2*pi*r; alan %alan değerini yazdıracak cevre % cevre değerini yazdıracak |
Bunların yanı sıra mantıksal operatörlerde mevcuttur.
- a&b ve işlevini görür,
- a|b veya işlevini görür,
- ~a değil işlevini görür.
if Yapısı (Conditional Statement)
Bir mantıksal ifadeyi kontrol ederek bunun sonucunda ilgili seçeneklerden birini hesaplayabilen bir komuttur. Ve Matlab programlama da sıkça kullanılan komutlardan birisidir. if yapısının 3 çeşit kullanım şekli mevcuttur.
- if şart if şart if şart
1.işlem 1.işlem 1.işlem
2.işlem else şart elseif şart
……….. 2.işlem 2.işlem
end end else - 3.işlem
- end
Burada şart dediğimiz şey (a==b) veya (a|b) vb.
Örneğin, dışarıdan kullanıcı tarafından girilen iki tamsayı ile ilgili aşağıdaki program (kod) if yapısının nasıl kullanıldığını gösterir.
1 2 3 4 5 6 7 8 9 10 11 12 |
clear all; % bu komut bütün değişkenleri ve fonksiyonları bellekten siler. a=input('sayiyi giriniz='); b=input('sayiyi giriniz='); if (a>b) ans=a*b elseif (a<b) ans=abs(a-b) % abs komutu mutlak değerdir. else ans=a/b end |
Matlab programlama ile ilgili diğer bilgileri aşağıdaki adresten bulabilirsiniz.
https://komhedos.com/category/programlar/matlab-programlar/