BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi 2018-19 Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (e-mail: edemir@sirnak.edu.tr ) 04.10.2018 1
Matrisler ile İşlem Yapma Toplama ve Çıkarma 2
Matrisler ile İşlem Yapma Toplama ve Çıkarma 3
Matrisler ile İşlem Yapma Toplama ve Çıkarma Bir matrise skaler bir sayı eklendiğinde veya çıkarıldığında, o sayı matrisin tüm elemanlarına eklenir veya çıkarılır. 4
Çarpma A ve B gibi iki matrisin çarpma işlemi ancak ve ancak A matrisinin sütun sayısı ile B matrisinin satır sayısı eşit olduğunda gerçekleşir. Bu çarpımdan oluşan sonuç matrisi ise, A matrisinin satır sayısı kadar satıra ve B matrisinin sütun sayısı kadar sütuna sahip olur. 5
Çarpma 6
Çarpma Aynı boyutlarda iki tane kare matrisin çarpımı, yine aynı boyutlarda başka bir kare matris oluşturur. Ancak A ve B matrisi nxn boyutlarında iki matris ise A*B B*A Üs alma işlemi sadece kare matrislerle yapılabilir. Çünkü A*A işleminde birinci matrisin sütun sayısı ile ikinci matrisin satır sayısı eşittir. İki vektör ancak eşit sayıda elemana sahip olduğunda çarpılabilir. Aynı sayıda elemana sahip bir satır vektörü ile sütun vektörünün çarpımın sonucu ise 1x1 lik bir matris yani skaler bir sayıdır. İki vektörün çarpım işlemine nokta çarpımı (dot product) denir ve MATLAB built-in fonksiyonu dot(a,b) bu işi yapar. Aynı sayıda (n kadar) elemana sahip olan bir sütun vektörü ile satır vektörünün çarpımı ise nxn boyutlarında kare matris oluşturur. 7
Çarpma 8
Çarpma 9
Çarpma 10
Linear Denklemlerden Oluşan Bir Sistem 11
Bölme Birim matris (identity matrix) diagonal elemanları 1 diğer tüm elemanları 0 olan kare matrislerdir ve MATLAB da eye komutu ile oluşturlabilir. Eğer bir matris kare matris ise sağdan veya soldan birim matris ile çarpılması sonucu değiştirmez 12
Bölme Eğer bir B matrisi ile A matrisi çarpıldığında sonuç birim matris oluyorsa, B matrisi A matrsinin tersidir. Her iki matrisde kare matris olmak zorundadır ve çarpma işlemi sırası B*A veya A*B olabilir. 13
Bölme Bir matrisin tersi şeklinde yazılır. Ancak MATLAB da bu işlem A nın -1 inci kuvveti şeklinde yazılır. Yani A^-1 yazarak ya da inv(a) fonksiyonu kullanarak yapılabilir. Her matrisin tersi yoktur. Bir matris ancak kare matris olur ve determinantı sıfırdan farklı olursa tersi bulunabilir. 14
Bölme 15
Bölme Determinant özel bir takım kurallara göre hesaplanır. Örnel 2x2 lik bir matrisin determinantı aşağıdaki gibi hesaplanır. MATLAB da det(a) komutu ile bulunur. 16
Bölme MATLAB da iki tür matris bölme işlemi vardır. Sağ bölme ve Sol bölme 17
Bölme MATLAB da iki tür matris bölme işlemi vardır. Sağ bölme ve Sol bölme 18
ÖRNEK Aşağıda verilen lineer denklemlerden oluşan sistemin bilinmeyen değişkenlerini (x,y ve z ) bulunuz. 19
ÖRNEK (Çözüm) 20
ÖRNEK (Çözüm) 21
Element by Element İşlemleri Matrislerde toplama ve çıkarma işlemi element by element işlemleridir. Çünkü toplama veya çıkarma yapılırken birbirine karşılık gelen elemanlar toplanır veya çıkarılır. Element by Element işlemi ancak ve ancak aynı boyutlardaki matrisler ile gerçekleştirilebilir. Element by Element çarpması, bölmesi ve üs alması işlemleri yapılırken normal işlem operatörünün önüne nokta işareti (.) konulur. 22
Element by Element İşlemleri 23
Element by Element İşlemleri 24
Element by Element İşlemleri 25
Element by Element İşlemleri 26
Element by Element İşlemleri Bu örnekte element by element işlemi 3 kez yapılmıştır. 27
Element by Element İşlemleri 28
Matris Analizi İçin MATLAB Built-In Fonksiyonları 29
Matris Analizi İçin MATLAB Built-In Fonksiyonları 30
Matris Analizi İçin MATLAB Built-In Fonksiyonları 31
Matris Analizi İçin MATLAB Built-In Fonksiyonları 32
Rastgele Sayı Üretimi Mühendislikte bir çok simülasyon sürecinde rastgele sayı üretimine ihtiyaç duyulur. MATLAB da değişkenlere rastgele sayı ataması yapabilmek için kullanılan 3 komut vardır. Bu komutlar rand, randn, randi 33
Rastgele Sayı Üretimi Bu komut 0 ve 1 arasında uniformly dağıtılmış rastgele sayılar üretir. 34
Rastgele Sayı Üretimi Bazen (0,1) aralığı yerine belirlenen bir (a,b) aralığında rastgele sayılar üretmek isteriz. Ya da integer (tam sayı) sayılar üretmek isteriz. Bu durumda (a,b) gibi bir aralıkta sayı üretmek için aşağıdaki formül kullanılır. 35
Rastgele Sayı Üretimi Bu komut ile uniformly dağıtılmış rastgele integer (tam sayılar) üretilir. 36
Rastgele Sayı Üretimi imax değişkeni yerine [imin imax] yazarak rastgele sayıların üretilmek istendiği sayı aralığı da belirtilebilir. 37
Rastgele Sayı Üretimi Bu komut ortalaması 0 ve standart sapması 1 olan norma dağıtılmış rastgele sayılar üretir. 38
Rastgele Sayı Üretimi Ancak istenilen ortalama ve standart sapma için randn ile üretilen sayı, istenilen standart sapma değeriyle çarpılıp yine istenilen ortalama değeri ile toplanır. Örneğin rastgele 6 elemana sahip ve bu elemanların ortalaması 50 ve standart sapması 6 olan bir vektör oluşturmak istersek; 39
Rastgele Sayı Üretimi Bu elemanları tam sayılardan oluşması için ise round komutu kullanılabilir; 40