Yapılar(Structures)

Posted by Admin On Monday, August 27, 2012 0 comments
Yapılar hücre dizileri gibi birbiriyle benzerliği olmayan bilgileri bir araya getirmek için kullanılır. Bilgiler tek bir değişkende toplanır yani yapıda.(structure) Şöyle tanımlanır: S.fieldname=value;   S:yapının adıdır, fieldname:alt daldaki etikettir, value: alt daldaki bu etiketin değeridir. Eğer field name i bir değişkende taşımak ve bunu bir structure da kullanmak istiyorsak...
READ MORE

Yapı Dizilerinde İndeksleme(Indexing into Structure Arrays)

Posted by Admin On Monday, August 27, 2012 0 comments
İndeksleme normal parantezlerle veya direk field name ile yapılabilir. Örnekler: S(2) S.a S(3).a S([1,5]) S(1:4).a y={S(1:4)....
READ MORE

Yapı Dizileri(Structure Arrays)

Posted by Admin On Sunday, August 26, 2012 0 comments
Yapı dizileri herhangi bir boyutta olabilirler. Elemanlara parantezle erişilebilir. Örneğin: S(1).a=4; S(2).a=5; S(1).b=46; S(2).c=ones(3); S(3).a=magic(2); S(4).b='world'; S S = 1x4 struct array with fields:     a     b     c...
READ MORE

Hücre Dizileri(Cell Arrays)

Posted by Admin On Friday, August 24, 2012 0 comments
Hücre dizileri herhangi bir tip veya boyuttaki dizileri birleştirmek için kullanılabilir. Teknik olarak bir hücre dizisindeki hücreleri birer işaretçi(pointers) gibi düşünebiliriz. Hücre dizileri için hafızada ön ayırma yapabiliriz. Şöyle ki: x=cell(m,n); komutu mXn boyutunda boş bir hücre dizisi oluşturur. Hücre dizilerini birleştirmek için süslü parantez { } ya da köşeli parantez...
READ MORE

Tam Sayı Dizileri(Integer Arrays)

Posted by Admin On Friday, August 24, 2012 0 comments
Matlabta dört tane işaretli ve dört tane işaretsiz olmak üzere toplamda sekiz tane tam sayı veri çeşidi vardır. Bunlar: int8, int16, int32, int64 uint8, uint16, uint32, uint64 Örneğin:                B=zeros(m,n,'int8'); B nin elemanları hafızada int8 tipine göre kaydedilecektir....
READ MORE

Matlab Veri Çeşitleri(Matlab Data Types)

Posted by Admin On Friday, August 24, 2012 0 comments
Matlab'ta 15 tane temel veri çeşidi vardır. Bunların başlıcaları: logical char numeric(single,double) cell structure function handle user clas...
READ MORE

Hafıza Ön Ayırması(Preallocation of Memory)

Posted by Admin On Friday, August 24, 2012 0 comments
Bazen yazdığımız scriptlerde matris ya da dizi oluştururken baştan bunların boyutları tam olarak belli olmayabilir. Bu Matlab'in işi daha yavaş yapmasına neden olur. Ancak daha işlemin başında kodumuza şöyle bir satır eklersek: A=zeros(m,n); bu Matlab'in işin başında A matrisi için hafızada yer ayırtmasına ve geri kalan işlemleri ve değişiklikleri daha hızlı yapmasına yardımcı olur....
READ MORE

Kodun Performansı(Code Performance)

Posted by Admin On Friday, August 24, 2012 0 comments
Matlab'ta belirlenmiş altı tane görev vardır. Bunların doc bench yazarak görebiliriz. bench(n) komutu bize bu görevlerin farklı bilgisayar ve işletim sistemlerinde ne kadar zamanda yapılabileceğinin karşılaştırmalı grafiklerini verir. Kodumuzun ne kadar zamanda çalıştırıldığını bulmak için tic ve toc komutlarını kullanırız. Şöyle ki: tic; code_name; toc; komutu...
READ MORE

Derlemeye Son Verme(Ending Debugging)

Posted by Admin On Friday, August 24, 2012 0 comments
Derleme yapılırken derlemeye Debug sekmesinden Exit Debug Menu seçilerek son verilebilir. Hatalar bulunup düzeltildikten sonra clear breakpoints in all files simgesine tıklanarak kesme noktaları kod dosyalarından kaldırılabili...
READ MORE

Değerleri Test Etme(Examining Values)

Posted by Admin On Friday, August 24, 2012 0 comments
Kodumuzu derlerken aynı zamanda değişkenlerin değerlerini de test edebiliriz beklediğimiz gibi mi yada değil mi diye. Bu üç yolla yapılabilir. Bunlar: Atama olan her satırın sonundaki noktalı virgülleri kaldırmaktır. Çünkü bu şekilde atamaların sonucundaki bütün değerler command window da yazılacaktır. Debug modda komutları command window a girebiliriz değerleri test etmek için. Debug...
READ MORE

Kesme Noktalarını Kullanma(Using Breakpoints)

Posted by Admin On Friday, August 24, 2012 0 comments
Eğer hata mesajları bir hatanın yerini belirlememize yetmiyorsa editöre kesme noktaları(breakpoints) yerleştirerek Matlab Debugger ı aktif hale getirebiliriz. Bu şekilde kodumuzu çalıştırırsak Debugger her kesme noktasında derlemeyi kesecek ve bizim devam et dememizi bekleyecektir. Bu şekilde hatanın hangi satırda ya da blokta olduğunu kesin bir şekilde bulabiliriz. Üç tane temel kesme...
READ MORE

Derleme-Ayıklama(Debugging)

Posted by Admin On Friday, August 24, 2012 0 comments
Editörde yazdığımız bir scripti command line dan ya da editörden çalıştırmayı denediğimiz zaman matlab önce kodu derlemeye başlar. Yani yazım hatalarını aramaya belirmeye başlar ve bize hataları öncelik sırasına göre sıralar.Script çalıştığı halde işini yapmıyorsa ya da sonuç beklediğimiz gibi değilse run-time hatalar vardır. Bu tür hatalar algoritmik hatalard...
READ MORE

Editörde Kod Analizi

Posted by Admin On Friday, August 24, 2012 0 comments
Matlab editörü kod analizi yapan bir araca sahiptir. Biz kodlarımızı yazarken yazım hataları için kontrolü yapar bu araç. Hatalı kısımları veya uyarı ya da tavsiye vermek istediği kısımların altını çizer. Mouse ile altı çizili kısmın üstüne gidersek bize hatayı,uyarıyı ya da tavsiyesini gösterir. Ek olarak, kodda bazı belirli problemler turuncu ya da kırmızı renkte altı çizili çizgilerle...
READ MORE

The Matlab Path

Posted by Admin On Thursday, August 23, 2012 0 comments
Matlab path ayarlarını pathtool komutunu command window a yazıp açılan Set Path penceresinden ayarlayabiliriz. Ayrıca  Set Path penceresini file sekmesinden de açabiliriz. path komutu bize kayıtlı bütün path leri verir. which komutu dosyanın ya da fonksiyonun yerini path ismi ile birlikte verir. (which file_name or function_name) Eğer which komutu all opsiyonu ile birlikte kullanılırsa...
READ MORE

Alt Fonksiyonlar(Subfunctions)

Posted by Admin On Thursday, August 23, 2012 0 comments
Bir fonksiyon dosyası birden fazla fonksiyona ait declaration ve tanımlamaları içerebilir. Ancak bunlardan sadece en üstteki yani primary fonksiyon workspace ten çağrılabilir. Diğerleri sadece fonksiyon dosyasının içinde çağrılabilir....
READ MORE

Fonksiyonların Çalışma Alanları

Posted by Admin On Thursday, August 23, 2012 0 comments
Bir Fonksiyon çağrıldığı zaman ona ait bütün değişkenler ana workspace ten ayrı olarak başka bir workspace te tanımlanır kaydedilir. Fonksiyonun çalışması bittiği zaman bu özel-ayrı workspaceteki değişkenler silin...
READ MORE

Herhangi Bir Datayı Genelleştirilmiş Bir Liner Model İle Yaklaşık Olarak Temsil Etme

Posted by Admin On Thursday, August 23, 2012 0 comments
F=Vandermonde matrix, c=katsayılar, M=data, fitM=fitlenmiş data(yeni modelimiz), resid=hata, mse=mean square error ,N=datanın eleman sayısı olsun. Önce Vandermonde matrisi istenildiği gibi üretilir boyutu fitlenicek datanın boyutuna uygun olarak. Daha sonra F*c=M denklemi backslash yöntemi kullanılarak çözülür(c=F\M). fitM=F*c den bulunur. Diğer değerler de aşağıda belirtildiği gibi...
READ MORE

Otomatikliği Artırmak-Fonksiyon Yaratmak-Fonksiyon Çağırmak

Posted by Admin On Thursday, August 23, 2012 0 comments
Otomatikliği Arttırmak Kendi yazdığımız veya önceden yazılmış hazır scriptleri veya fonksiyonları kullanarak otomatikliği arttırabiliriz. Fonksiyon Yaratmak Fonksiyon dosyaları her zaman bir function declaration ile başlar. Şöyle ki: function [out1,out2,...]=function_name(in1,in2,...) bu komut satırı her fonksiyon dosyasının başında mutlaka bulunmalıdır. Bir Fonksiyonu Çağırmak [out1,out2,...]=function_name(in1,in2,...) ile...
READ MORE

FFTs

Posted by Admin On Thursday, August 23, 2012 0 comments
fft fonksiyonu DFT hesabı için bir fast fourier transform(FFT) algoritması kullanır. Bazı terimler ve hesapları: y                               sampled data n=length(y)                number of samples Fs                  ...
READ MORE

DFT In Matlab

Posted by Admin On Thursday, August 23, 2012 0 comments
Matlab ile herhangi bir vektörün Discrete Fourier Transformunu bulup çizdirebiliriz. fft komutu discrete fourier transform alır. Ayrıca Matlab'ta bir arayüz vardır. Ve fftgui komutu ile çalışır. fftgui(x) komutu: real(x),imag(x),real(fft(x)), ve imag(fft(x)) i çize...
READ MORE

Slash ve Backslash

Posted by Admin On Thursday, August 23, 2012 0 comments
Matlab ile liner denklemlerin çözümünü yapabiliriz. Eğer sistem AX=B şeklinde ise çözüm X=A\B ile bulunur. Bu yüzden backslash aynı zamanda "left divide operator" olarak da bilinir. Sistem XA=B şeklinde ise çözüm X=B/A ile bulunur...
READ MORE

Alt Fonksiyonlar(Subfunctions)

Posted by Admin On Thursday, August 23, 2012 1 comments
Bir fonksiyon dosyası birden fazla fonksiyona ait declaration ve tanımlamaları içerebilir. Ancak bunlardan sadece en üstteki yani primary fonksiyon workspace ten çağrılabilir. Diğerleri sadece fonksiyon dosyasının içinde çağrılabilir. ...
READ MORE