MATLAB R2013’e Giriş
MATLAB nedir? MATrix LABoratory Yüksek seviye bir hesaplama dili. Assembly High Level Languages such as C, Pascal etc. Matlab
MATLAB R2013 Arayüzü
Komut Penceresi (Command Window)
Komut Penceresinde Temel Aritmetiksel İşlemleri Yapma
Komut Penceresinde Dizi ve Matris Oluşturma
Çalışma Alanı (Workspace) M değişkenine çift tıklayarak açalım (m, 3x4 boyutunda bir matris değişkenidir)
Komut Geçmişi (Command History)
Geçerli Dosya Dizini (Current Folder)
MATLAB R2013b Arayüzü (“Current Folder” olmadan)
MATLAB R2013 Arayüzü: Home, Plots, Apps
MATLAB R2013 Arayüzü:Home
MATLAB R2013 Arayüzü:Home
MATLAB R2013’e Giriş: Editor
MATLAB R2013’e Giriş: Editor
MATLAB R2013’e Giriş: Editor
MATLAB R2013’e Giriş: Editor
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar
MATLAB R2013’e Giriş: Fonksiyonlar Her zaman yeni fonksiyon yazma mecburiyeti yoktur. MATLAB ın içinde gömülü olan kendi fonksiyonları da vardır. Komut satırına “help” yazınız. Bu size MATLAB ın içerdiği araçlarla ilgili bir konu başlığı listesi sunacaktır. Eğer belli bir fonksiyon hakkında bilgi alınmak istiyorsa, “help fonksion_ismi” yazılır. Örneğin, MATLAB ın faktöriyel hesaplayan fonksiyonu için “help factorial” yazılır. “help factorial” yazıp, fonksiyonun nasıl çalıştığını öğrenelim ve Matlabta 5! değerini hesaplayalım.
MATLAB R2013’e Giriş: Fonksiyonlar Bir başka örnek: Komut satırına “help linspace” yazıp enter a basınız. Açıklamayı okuyup linspace komutunun ne yaptığı söyleyebilir misiniz? Komut satırına aşağıdaki ifadeyi yazalım: t=linspace(0,1,100) t’nin içeriği nedir? MATLAB bunun gibi birçok fonksiyon içermektedir.
Introduction to MATLAB R2013b Komut Satırı .mat dosyaları .m dosyaları
MATLAB’ta Dizi ve Matrisler dizi x = [1 2 5 1] x = 1 2 5 1 matris x = [1 2 3; 5 1 4; 3 2 -1] 1 2 3 5 1 4 3 2 -1 Matrisin transpozesi y = x’ y = 1 2 5
MATLAB’ta Dizi ve Matrisler 1 2 3 4 5 6 7 8 9 10 k =2:-0.5:-1 k = 2 1.5 1 0.5 0 -0.5 -1 B = [1:4; 5:8] x = 1 2 3 4 5 6 7 8
MATLAB’ta Dizi ve Matrisler MATLAB’ta alt indisler 1 den başlar (C’deki gibi 0’dan değil). Alt indisler pozitif tamsayı olmalıdır. Given: A(-2), A(0) Error: ??? Subscript indices must either be real positive integers or logicals. A(4,2) Error: ??? Index exceeds matrix dimensions.
Matrislerin Birleştirilmesi x = [1 2], y = [4 5], z=[ 0 0] A = [ x y] 1 2 4 5 B = [x ; y] 1 2 4 5 C = [x y ;z] Error: ??? Error using ==> vertcat CAT arguments dimensions are not consistent.
Aritmetik Operatörler + toplama - çıkarma * çarpma / bölme ^ üs alma ‘ komplek eşlenik transpoz
Matris İşlemleri A ve B şekilde gibi verilmiş olsun: Toplama Çıkarma Çarpma Transpoz
Operatörler (Eleman-Eleman) .* eleman-eleman çarpım ./ eleman-eleman bölme .^ eleman-eleman üs alma
“.” operatörü A = [1 2 3; 5 1 4; 3 2 1] A = 1 2 3 5 1 4 3 2 -1 1 2 3 5 1 4 3 2 -1 b = x .* y b= 3 8 -3 c = x . / y c= 0.33 0.5 -3 d = x .^2 d= 1 4 9 x = A(1,:) x= 1 2 3 y = A(3 ,:) y= 3 4 -1 K= x^2 Erorr: ??? Error using ==> mpower Matrix must be square. B=x*y ??? Error using ==> mtimes Inner matrix dimensions must agree.
Determinantın Bulunması
Matrisin üssünün bulunması
Matrisin üssünün bulunması =
MATLAB’ta Çizim 0 ve 1 arasında 10 tane değer içeren bir x dizisi oluşturun. X dizisini (veya vektörünü), aşağıdaki şekilde y değişkenine atayın. y değişkenini x’e göre çizdirin. >>x=linspace(0,1,10); >>y=x; >>plot(x,y) >>grid
MATLAB’ta Çizim
MATLAB’ta Çizim Şimdi komut satırına aşağıdaki ifadeleri yazalım ve tekrar çizdirdiğimiz şekli açalım. xlabel('x') ylabel('y') title(‘y=x')
MATLAB’ta Çizim
MATLAB’ta Çizim Şimdi, komut satırına “hold” yazalım. Bu komut, çizdireceğimiz yeni bir şekli önceki şekli silmeden üstüne çizilmesini sağlayacaktır Bu aşamada, plot komutu yerine “stem” komutunu kullanacağız. Şimdi stem(x,y, 'r'); yazalım. Tekrar figürü açalım.
MATLAB’ta Çizim figure komutunu kullanarak yeni bir figür açalım ve aynı çizimi bu sefer 100 nokta ile yapalım.
MATLAB’ta Çizim plot komutunun birçok özelliği ve parametresi vardır. Bu komut ile ilgili detayları nasıl öğrenebiliriz? Plot komutu ile ilgili diğer komutların axis, subplot, ... vb. nasıl çalıştığını öğreniniz.
Mantıksal Operatörler == Eşit ~= Eşit değil < Küçük > Büyük <= Küçük veya eşit >= Büyük veya eşit & and | or
Akış Kontrol if for while break
Kontrol yapıları If Statement Syntax if (Condition_1) … Bazı örnekler if ((a>3) & (b==5)) …; end if (a<3) elseif (b~=5) else If Statement Syntax if (Condition_1) … elseif (Condition_2) elseif (Condition_3) else end
Kontrol yapıları For döngüsü for i=Indeks_dizisi … end Bazı örnekler …; end for j=1:3:200 for m=13:-0.2:-21 for k=[0.1 0.3 -13 12 7 -9.3] For döngüsü for i=Indeks_dizisi … end
Kontrol yapıları While Döngüsü while (şart) … end Örnek while ((a>3) & (b==5)) …; end
If örneği function compare(x,y) if x>y display('x, y den buyuktur '); else if x<y display(‘y, x den buyuktur '); else display(x ve y esittir'); end % else if sonladırılıyor end % if sonlandırılıyor
“For” örneği 1 for i=1:100 x(i)=i^2 ; end 2 3
“For” örneği
Bir başka örnek x=10*randn(1,100); for i=1:100 if x(i) > 0 y(i)=1; elseif x(i)<0 y(i)=-1; else y(i)=0; end
Bir başka örnek
Bir başka örnek
Bir başka örnek Şimdi aynı işlemi MATLAB’ın “sign(x)” fonksiyonunu kullanarak yapalım. Komut satırına “help sign” yazalım. Sign komutunun nasıl çalıştığını öğrenelim ve x dizisindeki elemanların işaretini bulmak için kullanalım.