Blog YazılarMATLAB

MATLAB – 4.1 Bölüm

MATLAB ORTAMINDA VEKTÖR VE MATRİS GÖSTERİMİ

Matlab ortamında her değişken ya bir vektör ya da bir matristir. Örneğin a=2 yazıldığında, a sayısı matlab arka planında 1*1 boyutunda bir matris olarak saklanır. Eğer söz konusu olan bir sayı değil de bir dizi ise matlab arka planında bir (satır ya da sütun) vektör olarak saklanır.

Uygulamalı anlatım.

x 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
y 1 2 3 4 5 6 7 8 9 10

Yukarıdaki Tablo’yu Aşağıdaki Kodlarla İnceleyelim

Kod 1: x isimli bir dizi oluşturduk ve içerisine tablodaki sayıları sırasıyla ekledik. Sayılar, boşluk veya virgül ile ayrılabilir. Çıktısı, kodun hemen altında gösterilmiştir.

Kod 2: x dizisinin her elemanını 10 ile çarpıp 1 ekleyerek yeni oluşan değeri y değişkenine atadık.

Kod 3: x dizisinin 6. sıradaki elemanını ve y dizisinin 2. sıradaki elemanını seçerek ekrana yazdırdık.

(:) Operatörü kullanarak vektör elde edilmesi

  • başlangıç değer : artış değer : son değer

Açıklama; 2 den başla 3.8’e kadar 0.3 artarak git.
!!! Transpozu alınmak istenirse [2:0.3:3.8] şeklinde yazılmalı.

 

Mevcut vektörer kullanılarak başka vektörler elde edilmesi

  • 3. sıradan başla 1’er artarak 6. sıraya kadar git ve aradki sayıları B dizisine kopyala.

  • 5. sıradan başla 1 azalarak 2. sıraya kadar git ve aradaki değerleri C dizisine kopyala.

G = A(1:6)  ; G dizine 1. sıradan 6. sıraya kadar 1’er artarak gider, yani artış verilmez ise artış miktarını matlab 1 kabul eder.

H = A(5:end) ; 5. sıradan başlayadak A dizinin sonuna kadar gider ver aradaki değerleri H dizisine kopyalar.

Vektör oluşturmanın diğer yöntemleri
 -Birleştirme:

Daha önce tanımlanmış bir vektörü kullanarak

-Genişletme:

Daha önce tanımlanmış bir vektöre bazı yeni elemanların ilave edilmesi mümkündür:

-Değiştirme:

Daha önce tanımlanmış bir vektörün bazı elemanlarını yeniden belirlemek mümkündür:

Bir vektörün bir sayı ile işleme sokulması sonucunda yeni bir vektör elde edilmesi

Verilen örnekte 0’dan 20’ye kadar 4’er artarak elde edilen sayıların 3 ile çarpma işlemine sokulması sonucunda E adlı yeni bir vektör oluşturulmaktadır. Yukarıda verilen çarpma işlemi köşeli parantez kullanılarak aşağıdaki şekilde de gerçekleştirilebilir:

linspace komutu kullanarak vektör üretilmesi:

Yukarıda verilen komut ile oluşturulan vektör matris elemanları arasındaki fark değeri şu formül ile hesaplanır:

Aşağıda, başlangıç değeri 0, son değeri 11 olan ve eleman sayısı 9 olan M adlı vektörün elde edilişi verilmiştir:

Açıklama:
  • linspace(başlangıç, bitiş, eleman sayısı) komutu, belirtilen başlangıç ve bitiş değerleri arasında eşit aralıklı sayılar içeren bir vektör oluşturur.
  • Bu örnekte, 0 ile 11 arasında eşit aralıklı 9 sayı üretilmiştir.
  • linspace fonksiyonunun avantajı, belirlenen sayıda dengeli bölünmüş eleman içeren bir vektör oluşturmaktır. Özellikle grafik çizimlerinde veya sayısal analizlerde sıkça kullanılır.

logspace komutu kullanarak vektör üretilmesi

  • logspace komutu, 10’un üstel kuvvetleri şeklinde sayılar içeren bir vektör oluşturur.
  • Elemanlar arasındaki üstel artış şu formülle hesaplanır:

  • logspace(1,2,6), 10¹’den 10²’ye kadar logaritmik olarak bölünmüş 6 sayı üretir.
  • Örneğin, X’in 2. elemanı: 101.2=15.848910^{1.2} = 15.8489, X’in 4. elemanı: 101.6=39.810710^{1.6} = 39.8107, X’in 6. elemanı: 102=10010^2 = 100.
Vektör Uzunluğunun Hesaplanması

MATLAB’de bir vektörün eleman sayısını bulmak için length komutu kullanılır.

Sütun Vektör Oluşturulması

MATLAB’de sütun vektörü oluşturmak için elemanlar arasına ; konur.

Sütun vektörü transpoze işlemi (') ile de oluşturulabilir:

Başka bir örnek:

Çarpım İşlemi ile Sütun Vektörü Oluşturma

Açıklama: (0:0.4:2)' transpoze edilerek sütun vektörü, ardından pi ile çarpılarak yeni vektör oluşturulmuştur.

Kompleks Vektörlerin Transpozu (')

  • Açıklama: ' kullanımı vektörün hem transpozunu alır hem de eşlenik yapar.

Sadece transpoz almak için .' kullanılır:

Kompleks Olmayan Vektörlerde ' ve .' Aynıdır

Kompleks olmayan vektörlerde ' ve .' işlemleri aynı sonucu verir.

Açıklama: Kompleks sayı olmadığı için ' ve .' arasında fark yoktur.

Eğer kompleks bir vektörün yalnızca transpozunu almak istiyorsanız, karmaşık eşleniğini almadan transpoz işlemi yapmak için a.' (noktalı transpoz) operatörü kullanılmalıdır.

 

Vektörün 0 veya 1 sayılardan oluşması

Burada zeros(satır,sütun) veya ones(satır,sütun) fonksiyonlarını göreceğiz.

 

 

İki vektörün toplamı ve farkı

Vektörlerin eleman sayıları aynı olmalı.

 

Skaler Çarpım

Yukarıdaki A ve B vektörlerinin çarpımları dot() komutu ile olur.

vektör değilde matris çarpılmak istenirse;

yani yine aynı komut ile bu işlemi yapacağız.

Öklid (Euclidean) Normu

Bir vektörün uzunluğu Öklid normu (vektör normu) olarak adlandırılır. Aşağıdaki formül ile hesaplanır fakat biz matlab komutu ile bu işlemi yapacağız.

 

Birim Vektör Nedir?

Birim vektör, bir vektörün yönünü değiştirmeden, normunu (büyüklüğünü) 1 yaparak elde edilen vektördür.

İki Vektör Arasındaki Açının Hesaplanması

İki vektör arasındaki açı θ, aşağıdaki formülle hesaplanır:

Burada:

  • a.b: Vektörlerin nokta çarpımı
  • ∣a∣ ve ∣b∣: Vektörlerin Öklid normları (büyüklükleri)
  • θ: Vektörler arasındaki açı

Bu formül, iki vektör arasındaki yön farkını bulmak için kullanılır.

ör:

MATLAB’da Matris Çarpımı ve Boyut Uyumsuzluğu Hatası

Matris çarpımı yapılırken boyut uyumluluğu çok önemlidir. Bir matrisi ile bir B matrisini çarpabilmek için şu kuralın sağlanması gerekir:

Burada:

  • AA matrisinin sütun sayısı (mm) BB matrisinin satır sayısına eşit olmalıdır.
  • Eğer boyutlar uyumlu değilse MATLAB şu hatayı verir:

  • (Bu hata, çarpılan matrislerin iç boyutlarının uyumsuz olduğunu belirtir.)

ör:

çarpım da C = A.*B yapılırsa bu hatayı almayız ve çarpma işlemi gerçekleşir.

yada aşağıdaki şekilde yazılabilir.

başka bir örnekler

Matrislerin Elemanl Adresleri

A matrisini oluşturduk ardından A(satır,sütun) diyerek ilgili satır-sütun daki sayıyı çağırabiliriz.

 

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu