Vektörler, Matrisler, Lineer Cebir

Vektörler, matrisler ve lineer cebir:

n boyutlu Euclid uzayı \(R^n\) içindeki bir vektör arka arkaya sıralanmış n adet reel sayıdır.

İki boyutlu Euclid uzayında \(\vec{v} = \begin{bmatrix} v_1 \\ v_2 \\ \vdots \\ v_n \end{bmatrix}\) olarak yazılabilir.

İki boyutlu Euclid uzayında \(\vec{v} = \{xc\vec{i} + yc\vec{j}\}\) olarak yazılabilir.

Burada xc ve yc reel sayılarını düzlemde x ve y koordinatları olarak düşünürsek bu vektörü düzlemde bir nokta olarak ele alabiliriz. Arka arkaya sıralanmış noktalar ile aynı düzlemde kenarlar ve bu kenarların birleşimiyle oluşan şekiller çizilebilir.

2D vektör gösterimi

Vektörler, Matrisler, Lineer Cebir

Arka arkaya noktalarla dikdörtgen, poligon gibi şekiller 2 boyutta veya 3 boyutta modellenebilir.

2D ve 3D şekiller

S1 şeklinin köşelerini P1,P2,P3,P4 noktaları ile verebiliriz. İlk kenara ait teğet vektörü T1 ise aşağıdaki gibi hesaplanabilir.

\[\vec{P1} = \begin{bmatrix} x1 \\ y1 \\ z1 \end{bmatrix} \quad \vec{P2} = \begin{bmatrix} x2 \\ y2 \\ z2 \end{bmatrix} \quad \vec{P2} - \vec{P1} = \begin{bmatrix} x2-x1 \\ y2-y1 \\ z2-z1 \end{bmatrix}\]

\[|\vec{P2} - \vec{P1}| = \sqrt{(x2-x1)^2 + (y2-y1)^2 + (z2-z1)^2}\]

\[\vec{T1} = \frac{\vec{P2} - \vec{P1}}{|\vec{P2} - \vec{P1}|}\]

T1 birim vektördür. Yani şiddeti birdir.

Vektörler, Matrisler, Lineer Cebir

Vektör Çarpımı ve Geometrik Anlamı

\[\vec{P1} = \begin{bmatrix} x1 \\ y1 \\ z1 \end{bmatrix} \quad \vec{P2} = \begin{bmatrix} x2 \\ y2 \\ z2 \end{bmatrix} \quad \vec{P3} = \begin{bmatrix} x3 \\ y3 \\ z3 \end{bmatrix}\]
\[\vec{v1} = \vec{P3} - \vec{P1} = \begin{bmatrix} x3-x1 \\ y3-y1 \\ z3-z1 \end{bmatrix} = \begin{bmatrix} vx1 \\ vy1 \\ vz1 \end{bmatrix}\]
\[\vec{v3} = \vec{v2} \times \vec{v1} \rightarrow \begin{bmatrix} vx1 & vy1 & vz1 \\ vx2 & vy2 & vz2 \end{bmatrix}\]
\[\vec{v3} = \begin{bmatrix} vy1 \cdot vz2 - vy2 \cdot vz1 \\ vz1 \cdot vx2 - vz2 \cdot vx1 \\ vx1 \cdot vy2 - vx2 \cdot vy1 \end{bmatrix}\]
\[|\vec{v3}| = |\vec{v2}| \cdot |\vec{v1}| \cdot \sin(\theta)\]

v1 ile v2 nin vektör çarpımı (cross product) ile elde edilen v3 vektörü P3 P2 P1 noktalarının oluşturduğu üçgenin düzlemine diktir.

v1 ile v2 arasındaki açı tetadır. v3 vektörünün şiddeti v1 ile v2 nin şiddeti ile sin(teta) çarpımıyla da hesaplanabilir. Birbirlerine paralel olan iki vektörün çarpımında teta sıfır olduğu için sin(teta) da sıfır olur ve şiddeti sıfır olan bir sonuç çıkar. Geometrik olarak birbirine paralel iki çizgi düzlem oluşturmadığı için bunlara dik olan tek bir çizgi olmayacaktır.

Vektör çarpımı geometrik gösterimi

Vektörler, Matrisler, Lineer Cebir

Skaler Çarpım ve Geometrik Anlamı

\[\vec{P1} = \begin{bmatrix} x1 \\ y1 \\ z1 \end{bmatrix} \quad \vec{P2} = \begin{bmatrix} x2 \\ y2 \\ z2 \end{bmatrix} \quad \vec{P3} = \begin{bmatrix} x3 \\ y3 \\ z3 \end{bmatrix}\]
\[\vec{v1} = \vec{P3} - \vec{P1} = \begin{bmatrix} x3-x1 \\ y3-y1 \\ z3-z1 \end{bmatrix} = \begin{bmatrix} vx1 \\ vy1 \\ vz1 \end{bmatrix}\]
\[\vec{v2} = \vec{P2} - \vec{P1} = \begin{bmatrix} x2-x1 \\ y2-y1 \\ z2-z1 \end{bmatrix} = \begin{bmatrix} vx2 \\ vy2 \\ vz2 \end{bmatrix}\]
\[s1 = \vec{v2} \cdot \vec{v1} = vx1 \cdot vx2 + vy1 \cdot vy2 + vz1 \cdot vz2\]
\[s1 = |\vec{v2}| \cdot |\vec{v1}| \cdot \cos(\theta)\]

v1 ve v2 vektörleri birbirine dik iki vektör olursa cos(teta) sıfır olur ve çarpım doğal olarak sıfır olur.

Skaler çarpım geometrik gösterimi

Vektörler, Matrisler, Lineer Cebir

Lineer Bağımlılık, Baz Vektörler, Koordinat Sistemleri

Lineer Bağımlı Vektörler:

\[\vec{u0} = \begin{bmatrix} u_{00} \\ u_{01} \\ u_{02} \\ \vdots \\ u_{0(n-1)} \end{bmatrix} \quad \vec{u1} = \begin{bmatrix} u_{10} \\ u_{11} \\ u_{12} \\ \vdots \\ u_{1(n-1)} \end{bmatrix} \quad \cdots \quad \vec{u(n-1)} = \begin{bmatrix} u_{(n-1)(0)} \\ u_{(n-1)(1)} \\ u_{(n-1)(2)} \\ \vdots \\ u_{(n-1)(n-1)} \end{bmatrix}\]
\[s_0\vec{u0} + s_1\vec{u1} + s_2\vec{u2} + ... + s_{n-1}\vec{u}_{n-1} = 0\]

Bu vektörlerin herbirini farklı skaler sayılar ile çarparak toplarsak aşağıdaki eşitliği sağlayan tek skaler sayı kümesinin yalnızca sıfırlardan oluştuğu özel durumda yukarıdaki vektörler için lineer bağımsızdır denilir.

Bu eşitliği sağlayan tek s kümesi s0 = s1 = s2= ... = sn-1 = 0 olduğu durumda yukarıda tanımlı vektör kümesi lineer bağımsızdır.

\[\text{Bu durumda } \vec{u_0}, \vec{u_1}, \vec{u_2}, ..., \vec{u_{n-1}}, R^n \text{ uzayının baz vektörleridir.}\]

Vektörler, Matrisler, Lineer Cebir

Koordinat Sistemleri

Bir uzaydaki bütün vektörler baz vektörlerin lineer kombinasyonu ile elde edilebilir. Herhangi bir vektörü aşağıdaki şekilde yazmak mümkündür.

\[\vec{v} = t_0\vec{u_0} + t_1\vec{u_1} + t_2\vec{u_2} + ... + t_{n-1}\vec{u}_{n-1}\]

Bu genel kuralı 3 boyutlu uzayda somut bir örnek ile gösterebiliriz. Aşağıda verilen üç baz vektörü bir koordinat sisteminin eksen vektörleri olarak düşünebiliriz.

\[\vec{dirX} = \begin{bmatrix} 1 \\ 0 \\ 0 \end{bmatrix} \quad \vec{dirY} = \begin{bmatrix} 0 \\ 1 \\ 0 \end{bmatrix} \quad \vec{dirZ} = \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix}\]

3 boyutlu uzaydaki herhangi bir vektörü bu üç doğrultu vektörünün lineer kombinasyonları ile yazmak mümkündür. Herhangi bir konumu aşağıdaki gibi ifade edebiliriz.

\[konum = xc\vec{dirX} + yc\vec{dirY} + zc\vec{dirZ}\]

Farklı baz vektörler ile başka koordinat sistemi tanımlanabilir. Örneğin:

\[\vec{dirX_2} = \begin{bmatrix} 0.707107 \\ 0.707107 \\ 0.0 \end{bmatrix} \quad \vec{dirY_2} = \begin{bmatrix} -0.707107 \\ 0.707107 \\ 0.0 \end{bmatrix} \quad \vec{dirZ_2} = \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix}\]

Transformasyon Matrisleri

Transformasyon Matrisleri

Matriks ve vektörün çarpımı ile dönüşümler:

Bir vektör aynı zamanda matristir. Uzayda 3 boyutlu bir noktayı temsil eden vektörü 3 satırlı, tek sütunlu bir matris olarak düşünürsek bu noktayı matris çarpımları ile yeni noktalara dönüştürebiliriz. Bilgisayarlı grafik uygulamalarında vektör 3 x 1 matris olarak ele alınır, yani 3 satır, 1 sütunu olan matris. 1 x 3 matris ise tek satır üç sütundur.

3 boyutlu uzayda \(\vec{P} = \begin{pmatrix} Xc \\ Yc \\ Zc \end{pmatrix}\) noktasına 3x3 bir matris ile dönüşüm uygulayabiliriz.

\[ M = \begin{pmatrix} m_{00} & m_{01} & m_{02} \\ m_{10} & m_{11} & m_{12} \\ m_{20} & m_{21} & m_{22} \end{pmatrix}\] matrisi mesela bu noktayı döndürmek için kullanılabilir.

\[ \vec{P}_2 = M \times \vec{P} = \begin{pmatrix} m_{00} & m_{01} & m_{02} \\ m_{10} & m_{11} & m_{12} \\ m_{20} & m_{21} & m_{22} \end{pmatrix} \begin{pmatrix} Xc \\ Yc \\ Zc \end{pmatrix}\] matris çarpımı ile P noktası yeni bir konum olan P2 ye dönüşür.

Noktayı noktaya dönüştüren bu matris çarpımını ilk matrisin satır vektörleri ile noktanın sütun vektörünü skaler çarparak hesaplayabiliriz.

Matris ve Vektör Çarpımı

Vektörler, Matrisler, Lineer Cebir:

Matris ile noktanın çarpımının sonucunu aşağıdaki gibi 3 farklı skaler çarpımın sonucu ile oluşan yeni bir nokta olarak düşünebiliriz.

\[\vec{P}_2 = M \times P = \begin{bmatrix} m_{00} & m_{01} & m_{02} \\ m_{10} & m_{11} & m_{12} \\ m_{20} & m_{21} & m_{22} \end{bmatrix} \begin{bmatrix} X_c \\ Y_c \\ Z_c \end{bmatrix}\]

matris çarpımı ile P noktası yeni bir konum olan P2 ye dönüşür.

\[\vec{P}_2 = \begin{bmatrix} m_{00} X_c + m_{01} Y_c + m_{02} Z_c \\ m_{10} X_c + m_{11} Y_c + m_{12} Z_c \\ m_{20} X_c + m_{21} Y_c + m_{22} Z_c \end{bmatrix}\ = \begin{bmatrix} X_{c2} \\ Y_{c2} \\ Z_{c2} \end{bmatrix}\]

\[X_{c2} = m_{00} X_c + m_{01} Y_c + m_{02} Z_c\]

\[Y_{c2} = m_{10} X_c + m_{11} Y_c + m_{12} Z_c\]

\[Z_{c2} = m_{20} X_c + m_{21} Y_c + m_{22} Z_c\]

Bu yeni P2 noktasını tekrar hareket ettirerek P3 noktasına dönüştüren yeni bir matris ile çarpalım.

\[\vec{P}_3 = T \times P_2 = \begin{bmatrix} T_{00} & T_{01} & T_{02} \\ T_{10} & T_{11} & T_{12} \\ T_{20} & T_{21} & T_{22} \end{bmatrix} \begin{bmatrix} X_{c2} \\ Y_{c2} \\ Z_{c2} \end{bmatrix}\ = \begin{bmatrix} X_{c3} \\ Y_{c3} \\ Z_{c3} \end{bmatrix}\]

P3 noktası ile en baştaki P noktası arasındaki dönüşümü hesaplayabiliriz.

Vektörler, Matrisler, Lineer Cebir

Arka arkaya belirli bir sırayla uygulanan birden fazla dönüşümü tek bir matris dönüşümüne çevirmek mümkündür.

\[ \vec{P}_3 = T \times M \times P = \begin{bmatrix} T_{00} & T_{01} & T_{02} \\ T_{10} & T_{11} & T_{12} \\ T_{20} & T_{21} & T_{22} \end{bmatrix} \begin{bmatrix} m_{00} & m_{01} & m_{02} \\ m_{10} & m_{11} & m_{12} \\ m_{20} & m_{21} & m_{22} \end{bmatrix} \begin{bmatrix} X_c \\ Y_c \\ Z_c \end{bmatrix}\]

Matris çarpmaları arka arkaya doğru sırada uygulanırsa birden fazla dönüşümü tek bir matrise çevirmek mümkündür. \( S = T \times M \) ile \( T \) ve \( M \) dönüşümlerini bir tek matriste toplayabiliriz. Burada dikkat edilmesi gereken işlem sıralamasıdır. \( T \times M \) ile \( M \times T \) matris çarpmaları aynı sonucu vermez.

\[ \vec{P}_3 = S \times P = \begin{bmatrix} S_{00} & S_{01} & S_{02} \\ S_{10} & S_{11} & S_{12} \\ S_{20} & S_{21} & S_{22} \end{bmatrix} \begin{bmatrix} X_c \\ Y_c \\ Z_c \end{bmatrix}\]

Vektörler, Matrisler, Lineer Cebir

Transformasyon tipleri, homojen matrisler:

Bir katı cismi sınır yüzeyleri içinde kalan sonsuz noktanın kümesi olarak düşünebiliriz. Bu noktaların kendi aralarındaki konum ilişkisi değişmediği için cisme katı cisim denilir. Bu katı cisme ait sonsuz noktanın uzaydaki pozisyonunu belirlemek için katı cisme bağlanmış bir koordinat sisteminin pozisyonunu tanıtmak yeterlidir. 3 boyutlu uzayda bir koordinat merkezi tanımı için merkez noktası ve 3 adet baz vektör (X, Y, Z doğrultu vektörlerini) vermek gerekir.

Transformasyon tipleri ve homojen matrisler

Bu büyük olan koordinat sistemine mutlak koordinat sistemi, parçaya bağlanmış ufak koordinat sistemine lokal koordinat sistemi diyelim. Bir parçaya sonsuz lokal koordinat sistemi eşleştirilebilir. Örneğin bir silindirin lokal koordinat sistemi daire merkezlerinden üst ya da alt daireye konulabilir. Yine silindirde Z doğrultusu genelde yüksekliğe gelir ama X-Y doğrultularını konumlamak için geometrik bir pozisyon çok da belli değildir.

Vektörler, Matrisler, Lineer Cebir

Ana Transformasyon Tipleri

  • Taşıma (translation)
  • Döndürme (rotation)
  • Ölçekleme (scale)
  • Aynalama (mirror)
  • Kesme (shear)
  • Ortografik projeksiyon (orthographic projection)
  • Perspektif projeksiyon (perspective projection)
Transformasyon tipleri ve homojen matrisler

Şekildeki katı nesne mutlak koordinatların X ekseni doğrultusunda 92.0512 mm taşınmıştır.

Bir noktaya taşıma (translation) dönüşümünü yapmak için 3x3 matris çarpımı uygulamak yeterli olmaz. Bu dönüşümü yapmak için 3 boyutlu noktaya dördüncü bir sayı eklenir ve 4 boyutlu bir vektöre geçilir. Dönüşüm matrisi ise 4 x 4 bir matris olacaktır. Buna homojen dönüşüm denilir.

Vektörler, Matrisler, Lineer Cebir

Homojen Dönüşümler

Homojen dönüşümler, bir noktayı veya vektörü 3 boyutlu uzayda bir başka noktaya veya vektöre taşıma, döndürme veya ölçekleme işlemleridir.

\[ \vec{P} = \begin{pmatrix} X_c \\ Y_c \\ Z_c \\ 1 \end{pmatrix} \]

\[ T = \begin{pmatrix} R_{00} & R_{01} & R_{02} & T_x \\ R_{10} & R_{11} & R_{12} & T_y \\ R_{20} & R_{21} & R_{22} & T_z \\ 0 & 0 & 0 & 1 \end{pmatrix} \]

Noktanın sonuna bir w koordinatı eklenir , buna 1 değeri verilir. Yukarıdaki T dönüşüm matrisinin R ile indekslenmiş sayıları dönme , Tx , Ty , Tz değerleri ise taşıma için aynı matris ile uygulanabilir.

\[ T = \begin{pmatrix} 1 & 0 & 0 & T_x \\ 0 & 1 & 0 & T_y \\ 0 & 0 & 1 & T_z \\ 0 & 0 & 0 & 1 \end{pmatrix} \quad \text{(Sadece taşıma)} \]

\[ T = \begin{pmatrix} S_x & 0 & 0 & 0 \\ 0 & S_y & 0 & 0 \\ 0 & 0 & S_z & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix} \quad \text{(Sadece ölçekleme)} \]

\[ T = \begin{pmatrix} R_{00} & R_{01} & R_{02} & 0 \\ R_{10} & R_{11} & R_{12} & 0 \\ R_{20} & R_{21} & R_{22} & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix} \quad \text{(Sadece dönme)} \]