google it!

23.02.2010

Temel Sinyaller-Birim basamak

     Merhabalar herkese,

    Daha önceki konularda Matlab a giriş yaptık. Umarım bir sorun yoktur matlab la ilgili, zaten çok kolay. Önemli olan teoriyi anlamamız, matlab tarafı çok kek. Tabii matlabla yapabileceğimiz daha çok şey var ancak onları da zamanı gelince irdeleyeceğiz.Şimdi birkaç altbaşlıkla sinyallere bir giriş yapacağız. Haberleşme öğreneceksek önce sinyalleri bilmemiz gerekir, dolayısıyla bu da nerden çıktı demeyiniz lütfen. Şimdi aşağıda bir besleme kaynağı, bir direnç ve bir anahtardan oluşan bir devre var. Onu önce bir inceleyin bakalım.

   Şimdi bu devrede Vs devreye verilen gerilimin kaynağı (zamanla değişmeyen gerilim-DC), R direncimiz, anahtarımız var, bide devre çıkışında  Vout diye bir gerilim ölçüyoruz. t=0 anında anahtarı kapattığımızı düşünelim. Yani t=0 anına kadar devre akım akıtmayacaktır, açık devre durumundadır. Ancak anahtar kapandıktan sonra Vout da bir gerilim değeri oluşacaktır. Bu değerde Vs olacaktır. Bunları hepimiz biliyoruz zaten. o zaman Vout da ki gerilim zamana bağlı olarak aşağıda ki gibi olacaktır.
      Siz değerli arkadaşlarımında gördüğü gibi bu işaret t=0 anından önce 0 olacak yani olmayacak, var olmayacak ancak t=0 anından sonra zamanla değişmeyen bir işaret olacaktır. Devam edelim. Bu şekilde görülen işaret, sürekli zamanlı bir işarettir. Adında anlaşılacağı gibi sürekli, hiç değer almadığı bir zaman aralığı yok. O zaman diyeceksiniz ki t=0 dan önce hiç değer almamış. Öle değil işte, şunu demek istiyorum. Mesela başladığı noktadan sonra hiç durmamış, 0 olmamış. t=0 anında başlamış ve hep değer almış sonsuz kadar buraya dikkat edelim. Bu şekil size tanıdık geldi değil mi? İşte o şekil birim basamak fonksiyonuna ait! Hep u(t) ile gösterdik biz biraz daha farklı göstereceğiz; şöyleki;
                                                                                           

  t=0 sinyalimiz için referans noktamız. örneğin sinyalimiz t=4 anında da başlamış olabir. o zaman sinyalimizin zaman açısından örneğin 4 sn ötelendiğini düşünmemiz gerekebilir. tabii nereye göre t=0 noktasına göre. bu durumda birim basamak fonksiyonunu şu şekilde göstermemiz gerekiyor;
                                                                                      
 burada tsıfır değerimiz 4 olacak tabi, yukarıda verdiğimiz örnek için. t-tsıfır durumu, sinyalimizin tsıfır kadar gecikme ile başladığını gösteriyor. t+tsıfır olsaydı, sinyalimizin referans noktası 0 a göre tsıfır kadar erken başladığını gösterecekti.  önce tsıfır kadar gecikme de birim basamak fonksiyonunun nasıl gösterildiğini görelim ondan sonra tsıfırdan önce ki görümüne bakalım; ve matematiksel ifadesini görelim;
                                                                                             
                                                                                 
                                                                           
  Bir örnek yapalım. Aşağıda ki şekilde bir devre resmedilmiştir. Devrede ki anahtar t=T anına kadar açık olup, t=T anında kapatılmaktadır. Bu durumda ne olacak? Devreden T anından sonra akım akmaya başlayacaktır. Çıkış gerilimi Vout u birim basamak cinsinden gösterelim.
                                                                                               
  Şimdi burada t>T anından sonra ise anahtar kapandığı için devreden akım akacak ve birim basamak fonksiyonu 1 değerini alacaktır. yani Vout matematiksel olarak;
                                                                                                       
 biçiminde olur. Birim basamak fonksiyonunun değeri 1 olduğu için Vs ile çarpmamız sonucu değiştirmez sadece olayı zaman açısından açıklar. Bu örnekteki birim basamak fınksiyonu;
                                                                                         
  Birde şekil olarak birim basamak fonksiyonu başka nasıl durumlarda olabilir onların şekillerini ve hemen altlarında matematiksel gösterimlerini verelim;
                                                                  
   Hani hep karşılaşırız işte haberleşmede 1 ve 0 ları kullanırız diye. Bu 1 leri kare darbelerle gösteririz. İşte bu darbeleride birim basamak fonksiyonları ile elde edebiliriz. Mesela şu şekli inceleyelim;
                                                                     
  Şeklin a sında  haberleşmede kullanılan 1 bitini görmekteyiz. İşte bu biri elde etmek için b ve c deki birim basamak fonksiyonlarını toplarız. Matematiksel olarak gösterimi ise şu biçimdedir;
                                                                                                                      
    Birim basamak fonksiyonu bir devredeki gerilim veya akım kaynaklarının anlık uygulamarını göstermek için uygun bir metoddur. Mesela bir devreye t=0 anında 24V luk bir gerilim verirsek biçiminde gösteririz. Ya da diyelimki t=tsıfır anında V=Vm*coswt lik bir alternatif gerilim uyguluyoruz. Bu durumu ise  biçiminde birim basamak fonksiyonu cinsinden yazabilirsiniz.
  Son olarak bir soru çözelim. Örneğin aşağıdaki şekilde verilen sinyali birim basamak cinsinden gösterelim.
                                                                
   Öncelikle sinyali 3 parçaya böleceğiz. Zaman ekseninde 0 ile 1 aralığı, 1 ile 2 aralığı, 2 ile 3 aralığına bakalım. Bu aralıkları almamızın sebebi sinyalin bu aralıklarda sabit olması. Demek istediğim mesela 0 ile 1/2 aralığı ve 1/2 ile 1 aralığında sinyal aynıdır. Dolayısıyla 0 ile 1 aralığını alıyoruz. Diğer aralıklar içinde aynı şekilde düşünün. Öncelikle 0-1 aralığını ele alalım. Bu aralıkta ki doğrunun denklemi 2t+1 dir. Birim basamak fonksiyonu cinsinden ise şöyle düşünün;
                                                                 
  Gördüğünüz gibi 0-1 aralığını iki birim basamak fonksiyonu cinsinden gösterip doğrunun denklemi ile çarptığımızda 0-1 aralığının matematiksel gösterimini elde ediyoruz. Diğer 2 aralığın gösterimini size bırakıyorum. Yapamazsanız bir mail kadar uzağınızdayım biliyorsunuz. Bu sinyalin birim basamak cinsinden gösterimi şu şekilde olacak;
                                                                  
   Bir dahamki yazımda birim dürtü fonksiyonuna değineceğim. Kendinize iyi bakın,hoşçakalın.

  Kaynak: Signals and Systems with Matlab Applications Steven T. Karris




                                                                                                                    

18.02.2010

Matlab da ressamlık

               Merhaba Sevgili Arkadaşlar,

     Bu yazımı tamamen okuyup anladığınızda Matlab ın çizim özelliklerine hakim olacaksınız. Hemen başlayalım.

 Bazen elde ettiğiniz verilerin zamanla, frekansla, güçle ya da akım la ya da herhangi bir veri çeşidine bağlı olarak nasıl değiştiğini dünya gözü ile görmek istersiniz. Ya da görmek istersiniz ki acaba bir veri bir veriye bağlımıdır değilmidir? Bunları görmek isteyebilirsiniz yani insanlık hali. O zaman en çok kullanılan komutlardan biri plot() ile başlayalım.  plot(x,y) şeklinde bir komut y değişkeninin x değişkenine bağlı olarak nasıl değiştini gösteren bir figür çizdirir. Burada plot un içine yazdığınız ilk değişken x eksenini, virgül koyup yanına eklediğiniz değişken ise y eksenini temsil etmektedir.
        Yukarıda ki şekilde bir devre temsili olarak gösterilmiştir ve altında bu devreye ait 2 değişkenden oluşan çeşitli değerlerin olduğu bir tablo verilmiştir. Devreye uygulanan alternatif gerilimin genliği sabit kalırken, açısal frekansı ω (radians/second) 300 ile 3000 arasında 100 er 100 er artmaktadır ya da değişmektedir. Devredeki ampermetre ise her artışta bir ölçüm almaktadır. Devrenin empedansı Z nin genliğini hesaplamak için ise formülünü kullanıyoruz. Ancak biz hesaplama yapmayacağız, empedans verisi yukarıda ki tabloda zaten verilmiş. Şimdi o zaman plot() komutumuzu kullanarak empedans genliğinin ya da şiddetinin açısal frekansa bağlı olarak nasıl değiştiğini görelim. Aşağıda Matlab porogramı kullanılarak çözüm üretilmiştir. Görünüz;
                                          
  Şekilde görüldüğü gibi önce kodu yazıyoruz ve ardından enter tuşuna bastığımız da Matlab programı çalıştırıp görmek istediğimiz figure u önümüze çıkarttırıyor. Burada bahsetmek istediğim birkaç nokta var. Matlabda komut satırına (command window da) uzun bir dizi yazıyorsanız ve satırın sizin gördüğünüz kısmından çıkıp bilinmeyen uzaklara gittiğini hissediyorsanız ve buna engel olmak istiyorsanız yani alt satıra geçmek istiyorsanız bu işlemi 4 adet nokta (....) ile halledebilirsiniz. Şöyle oluyor;
                                                                           
Umarım ne demek istediğimi anlamışsınızdır. Birde sevgili arkadaşlar görüldüğü üzere açısal frekansımızı tanımlarken bir dizi oluşturduk. Ve 300 den 3000 e kadar artan değerlerimizi teker teker girdik. Sorarım size ne gerenk var? linspace() komutumuz varken buna ne gerenk var? linspace(x,y,z) şeklinde kullanılır. Eğer 2 değer arasında sabit bir artışla artan bir diziniz varsa bu komutu kullanabilirsiniz. Örneğin yukarıda ki tabloda açısal frekans 300 den başlıyor. x yerine 300 yazacaz. 3000 e kadar devam ediyor. y yerine 3000 yazacağız. ve 100 er 100 er artış miktarı hiç değişmeden artıyor. o zaman z yerine öyle bir değer yazmalıyız ki bu değer 300 ile 3000 arasını 100 er 100 er artan şekilde parçalasın. ufak bir hesap yaptığımızda 300 ile 3000 arasında 28 tane 100 ün katı olan sayı var. yani 300,400,500,600.... gibi. o zaman z yerinede 28 yazıyoruz. Görelim;

                                                            
  Ne kadar hoş değilmi? Bu komutu örneğimiz deki Z değerleri için kullanabilirmiyiz? hayır çünkü Z nin nasıl değiştiğini Z bile bilmiyor. Sabit bir artış yok Z de. linspace(x,y) şeklinde yani z yi eklemeden kullanırsanız x ve y aralığını 100 eşit aralıklı parçaya böler. Şimdi birde bu grid komutu var o da çizilen figure ü karelere ayırıyor, bölüyor yani. Yukarıda yazdığım komutta plot(w,z); den sonra birde grid; şeklinde ekleme yapıyorum. Birde öyle görelim figürü;
                                                     
 Çizdirdiğiniz şeklin üst kısmına başlık yazdırmak istiyorsanız title('başlık konusu') komutunu, aynı şekilde x eksenine ve y eksenine de birer isim koymak istiyorsanız sırasıyla xlabel('başlık konusu') ve ylabel('başlık konusu') komutlarını girmemiz gerekir. Bazı durumlarda çizdirdiğimiz şekil logaritmik ölçekli olarak değişir. Mesela bit hata olasılığı şekilleri. Bu durumda ise semilogy(x,y) komutunu kullanırız. Bu durumda y ekseni logaritmik olarak değişirken x ekseni lineer olarak değişir. Eğer x ekseni logaritmik ve y ekseni lineer olarak değişiyorsa semilogx(x,y) şeklinde kullanırız. Her iki ekseninde logaritmik olarak değişmesi durumunda ise loglog(x,y) komutunu kullanmamız gerekir. Bu arada logaritmaya ait fonksiyonları tanıtalım. Matlab da log(x) doğal logaritmayı yani e tabanında, log10(x) 10 tabanında, log2(x) ise 2 tabanında logaritma almayı temsil eder. Logaritması alınacak değeri x kısmına yazıp enter tuşuna bastıkmıydı herşey yoluna girer. Öğrendiğimiz komutlarla örnek tablomuzdaki değerleri bir de şu şekilde çözdirelim.
                                     
  Gördüğünüz gibi semilogx komutuyla x eksenini logaritmik olarak ölçeklendirdik ve grid fonksiyonu ile şekle bakınca daha iyi anlayabilmek için şekli logaritmik olarak parça pinçik ettik. title ile şekle başlık verdik, xlabel ve ylabel ile x ve y eksenine hayat verdik. Matlab da birde DB(x) komutu vardır. Bu komutta x değerini ya da x dizisi içerisindeki değerleri dB karşılıklarına dönüştürür. Bu komutun algoritması şu şekildedir: dB=20*log10(x) . Bir diğer ilginç komut ise gtext('açıklama') komutudur. Anlatması biraz karışık. Açıklama kısmına bişeler yazın deneyin derim. Güzel bişi ama mutlaka deneyin. Diyelimki çizdirdiğimiz şekil üzerinde x=3, y=5 noktasında bişiler yazsın. Bunu da text(3,5,’bişiler’) şeklinde yapabiliriz. Yani komutumuz genel şekliyle text(x,y,’açiklama’) biçimindedir.
   Şimdi bir örnek yapacağız ve olayı daha iyi anlamaya çalışacağız. Gelin sinüs çizdirelim. Bir sinüsün yatay ekseninde pi nin katları düşey ekseninde ise genlik değerleri yazar. O zaman sinüs çizdirmek için öncelikle yatay eksenin aralığını tanımlayalım. Düşey ekseni tanımlamaya gerek yok, çünkü sin yazdınız mı atıyorum sin(pi) değerini matlab kendisi hesaplar ve şekle koyar. Yatay ekseni linspace(x,y,z) şeklinde tanımlayacağız. Bir de bir adet değil de 3 adet sin çizdirelim yanlız bunların fazları farklı olsun. Görelim;
                                                                       
  Gordüğnüz deeemi, bizde yalan yok. Şimdi bide arkadaşlar bu Matlab da çizim yaparkene çizgileri farklı renklerde yapabilirsiniz. Ya da düz çizgi değilde noktalı çizgi ya da kısa çizgi şeklinde felan çizdirebiliriz. Bide bunlara bakalım. Önce bir aşağıdaki tabloyu inceleyelim.
                                        
Bu çizelgeyi nasıl kullanıcaz sorun bu. plot komutunun parantezlerinin içine x,y yi yazdıktan sonra bir virgül açar iki apostrof koyarız. Bu apostrofların arasına tablodaki sembolleri koyarız. Örnek verelim. Mesela diyelimki çizgimiz kırmızı renkte olsun, o zaman hemen tablodan kırmızıya gidiyorum ve r harfini görüyorum. plotun içine apostrofların arasına r yazıyorum ve şu hale geliyor plot(x,y,'r'). Sonra nasıl olsa bedava diyorum. Bu çizgimin üstünde baklava işareti olsun diyorum. hemen r nin yanına birde d ekliyorum ve şu hale geliyor: plot(x,y,'rd') . Bide diyorum ki bu çizgi tireli noktalı olsun. Ve en sonunda şöyle bir komut ortaya çıkıyor: plot(x,y,'rd-.') Çok güzel değil mi? Bence münkemmel! :))

   Diyelimki çizdirdiğiniz şekilin x ekseni 1 den 100 e y ekseni 10 dan 50 ye kadar. Ama size x eksenini 5 ten 20 ye, y ekseninide 10 dan 30 a kadar görmek yeterli oluyor. Buralarda kesmek istiyorsunuz. O zaman axis([]) komutunu kullanıyoruz. Bu sorun için şöyle yaparız: axis([5 20 10 30]);    Gördüğünüz üzere önce x ekseninin sınırlarını ve sonra y ekseninin sınırlarını girerek bu sorunu hallediyoruz. Ayrıca plot(x,y) komutu çizimi noktaları birleştirerek yapar. Ama direkt birleştirir. stem(x,y) komutu ise nokta şeklinde bırakır. stairs(x,y) ise basamak şeklinde çizdirir. Denemenizi ve görmenizi tavsiye ederim. Son olarak arkadaşlar bir Matlab figure penceresinde 1 den fazla şekil olsun istiyorsak subplot(x,y,z) komutunu kullanırız. Burada x satır sayısını y sütun sayısını ve z ise 1. satırın elemanlarından başlamak üzere saydığınızda kaçıncı şekle denk geliyorsa çizdireceğiniz şekil onun sırasını temsil eder. Mesela diyelimki 4 tane şekli aynı pencereye çizdircem ve 2. satır ve 2. sütundaki şekle sıra geldi. Diğer 3 ünü daha önce çizdirdim(varsayım). yani bu şekil 4. sıradadır. Dolayısıyla komutum 2 satır 2 sütun 4. sıra  ==> subplot(2,2,4); şeklinde olacaktır. Görelim;
                                             


      Ben yoruldum, bana müsade kendinize iyi bakın, örneklerle değişik denemeler yapın derim. Bir de 3 boyutlu çizimler var onlarada daha sonra değineceğiz. Ciaooo!

  Kaynak: Signals and Systems with Matlab Applications Steven T. Karris

  

17.02.2010

Matris,Determinant ve Matlab 2

            Herkese Merhaba,

    En son kaldığımız yerden devam edelim. Daha önce Matlab da transpose almayı göstermiştim. Transpose unu alacağımız matrisi transpose() komutunun içine yazıp enter tuşuna basıyorduk. Ama başka bir yolu da var. Apostrof (') karakterini matrisin sonuna eklersek gene aynı sonucu elde ederiz. Deneyelim,
   
gördüğünüz gibi gayette transpose alıyor. Bu arada kağıt kalemle işlem yaparkene diyelim ki matrisimiz A ise transpose unu şeklinde gösteriyoruz. Burada sizi uyarmak istediğim bir konu var. Kompleks sayılardan oluşan bir matrisin apostrof ile transpose unu aldığınızda aynı zamanda eşleniğini de alıyor haberiniz olsun.  Transpose bir matriste satırların ve sütunların yerini değiştir. Dolayısıyla elemanların da yeri değişir. Gene güzel tanımlarımız var. Mesela bir matrisin transpose u kendisine eşitse bu durumda bu matrise simetrik matris denir. Şöyleki;
                                                
A bir simetrik matristir, çünkü matrisin kendisi transpose una eşittir. Bir matrisin içinde kompleks sayılar bulunabilir ve dolayısıyla kompleks sayıların eşleniklerini almak isteyebiliriz. Bu durumda matrisin eşleniğini de almak lazım gelebilir. Onuda daha önce bahsettiğimiz conj() fonksiyonu ile yapacağız. Bunu da görelim;
                                                         
 Gene A isimli bir matrisin transpose unu aldığınız da -A elde ediyorsanız o zaman da bu matrisin çarpık simetrik olduğunu iddaa edebiliriz. Mesela şu aşağıda ki matris çarpık simetriktir. 
                                                   
Şimdi diyelim ki bir A matrisinin önce transpose unu daha sonra eşleniğini aldığımızda tekrar kendisine eşit oluyorsa o zaman bu A matrisine Hermitian diyoruz. İşte ben bu Hermitian ı seviyorum. Kimdir acep kendisi? Neyse, şimdi Matlab da bir Hermitian matrisini benzetelim.
                                                    
   Eğer A matrisimiz kare matrisse ve transpose unun eşleniği kendisine değilde -A ya eşit oluyorsa bu A matrisine de çarpık Hermitian diyoruz, bu da akllınızda bulunsun.

   Gelelim determinant kavramına. Öncelikle bir matrisin determinant ı nasıl alınır bunu gösterelim. Diyelimki matrisimiz 2x2 bir kare matris. Bu durumda ilk satır ve ilk sütunun ilk elemanıyla 2. satır ve 2. sütunun 2. elemanını çarparız sonuç x olsun, daha sonra ilk satırın 2. elamanı yani 2. sütunun il elemanı ile 2. satırın ilk elemanı yani ilk sütunun 2. elamanını çarparız sonuç y olsun, x-y bu matirisin determinantını verir. Tabii her zaman işler yolunda gitmez, hayat sürprizlerle doludur. Bir bakarsınız karşınızda 3x3 lük matris var. O zaman da şöle yaparsınız;
                                                  
  Arkadaşlar anlaşılmamış olabilir ayrıca her zaman 3x3 lük bir matris gelmez karşınıza, dolayısıyla ben size hemen alıntı yaptığım kitabımdan printscreen-paste-cut-paste yaparak nxn bir kare matrisin determinantını vereyim bir de daha açıklamalı bir örnek vereyim. Sonra matlabda nasıl determinant alırız onu görelim.
                                                   
                                                             
   Tabii kağıt kalemle sınava girmediyseniz bu kadar hammallığa gerenk yok demi arkadaşlar. Hemen Matlab ımızı açıp det() fonksiyonumuzu kullanıyoruz. Nasıl mı, görelim;
                                                                 
gördüğünüz gibi çok basit. Bu arada determinantını aldığınız nxn kare matrisin determinantının derecesi n oluyormuş. Bu da öle dursun bi kenarda. En azından birçoğunuzun duyduğu kramer kuralına da gerek var diye düşünüyorum. Bir hatırlayalım kramer kuralı neydi? Diyelim ki 3 adet denklemimiz olsun, şu formda;
                                                                 

 Bu üç denklemde x,y ve z bilinmeyenlerini elde edeceğiz diyelimki. İşte bunu yapmak için kramer kuralına başvuracağız. x,y ve z yi bulmak için önce şunları bulmamız gerekiyor;
                                       
 daha sonrasında ise;
                                                        
 şeklinde x,y ve z yi bulabiliriz. Hatırlamamız gereken, Kramer kuralını 2 veya daha fazla eşitlik için uygulayabiliriz. Bir örnekle pekiştirelim.
                                                                      
   Yukarıdaki 3 eşitlikte v1,v2 ve v3 bilinmeyen değerlerdir. Bunları hesaplamak için önce Δ,D1,D2 ve D3 matrislerimizi oluşturalım. Daha sonra ise bu 4 matrisin determinantını bulacağız ve üstteki x,y ve z eşitliklerini kullanarak bilinmeyen x,y,z değerlerimizi bulacağız.
                                         
    Buradan x=85/35, y=-170/35 ve z=-55/35 olacaktır. Şimdi bunu Matlab ile benzetelim.
                                                         
  Bazen bir matrisin terisini almamız gerekebilir. Bu durumda Matlab ın ilgili fonksiyonu inv() ı kullanmamız gerekiyor. Bir bakalım nasıl işliyormuş;
                                                     
     Bir yazımın daha sonuna geldim. İyi çalışmalar diliyor, takıldığınız yerlerle ilgili sorularınızı bekliyorum.

  Kaynak: Signals and Systems with Matlab Applications Steven T. Karris


                                                           

16.02.2010

Matris,Determinant ve Matlab

             Merhaba Arkadaşlar,

       Bu yazımda matematiksel modellerin olmazsa olmazı matrisler ve determinantlar için Matlab ı nasıl kullanabiliriz sorusuna cevap arayacağız. Daha önce matrislere kısaca değinmiştik. Tabiiki yeterli değil dolayısıyla olayı biraz açalım.

     Bir A isimli matrisi genel olarak şu şekilde gösterebiliriz;
Matris elemanları lerin i si satır sırasını ve j sütun sırasını göstermektedir. Bir matrisin boyutunu oluşturan değerler satır ve sütun sayısıdır. Örneğin 3 satır 4 sütundan oluşan bir matris (3x4) şeklinde gösterilir. Ayrıca satır sayısı sütun sayısına eşit olan bir matrise ise kare matris denir. Örneğin (3x3) boyutunda bir matris kare matristir. Bir matris içerisinde birden fazla diagonal elemanlar olabilir. Ancak ana diagonal elemanlar i=j durumundaki matris elemanlarıdır.     Örneğin gene (3x3) bir matrisin ana diagonal elemanları  elemanlarıdır. Bu arada bir matrisin diagonal elemanlarının toplamı o matrisin "trace" i oluyormuş. Bunu ilk defa duydum, ne ifade eder, öğrenir öğrenmez paylaşcam ya da varsa bilen yorum yazsın tartışalım. Neyse, devam edelim.

    Matrislerle toplama ve çıkarma yapabilmemiz için bu işlemlerin yapılacağı matrislerin satır sayıları ve sütün sayıları birbirlerine eşit olmalıdır. Yani bir matris (mxn) şeklindeyse diğer matriste (mxn) şeklinde olmak zorundadır.  İlave olarak iki matris toplanır ya da çıkarılırken bu işlem her matrisin aynı satırda ve aynı sütunda ki  elemanları arasında yapılır. Örnek;
                                                 
Matlabda gerçekleştirelim;
                                                         
Bir matrisi bir skalerle ya da sabit değerle çarparsak matrisin her bir elemanını sabit değerle teker teker çarpar ve gene aynı boyutta matriste aynı yere yazarız. Örneğin mxn boyutlu bir matrisi a değeri ile çarpıyorsak 1. satır ve 1. sütunda ki elemanla a değerini çarparız ve sonucu, sonuç matrisinin 1. satır ve 1. sutununa yazarız. Unutmayalım ki skaler ile çarpımda matris boyutu değişmez gene (mxn) kalır. Matlab;
                                                                                 
Aynı şekilde bir matrisi kompleks sayı ile çarpsanız yukarıda ki prosedür aynen geçerli olacaktır. Komplekste olsa sonuçta o da sabit bir değerdir. 

   Bir kare matrisin ana diagonal elemanları dışında bütün elemanları 0 ise bu matrise diagonal matris denir. Aşağıda diagonal matris örneği görülmektedir. Şimdi üstten üçgen görünümlü, alttan üçgen görünümlü matrisler varmış bende yeni öğrendim bunlara hiç bulaşmıyoruz sevgili arkadaşlar, lazım gelirse döner bakarız.
                                                       
    Peki bir matris hem diagonal se hem de bu diagonal elemanlar birbirine eşit değerler almışsa bu matrise ne denir? Cevap skaler matris denir. Dünya gözüyle şöyle bir skaler matris görelim.
                                                                 
  Ayrıca bu skaler matrisin diagonal elemanları 1 değerini almışsa bu matrisede birim matris denmektedir. Aşağıda 2x2 3x3 ve 4x4 lük birim matrisler bulunmaktadır. Bakınız derim.
                                              
   Matlab da bu skaler birim matrisleri üretmek için eye(n) fonksiyonunu kullanırız. Burada n, matrisin boyutunu gösterir. Örneğin eye(3) fonksiyonu 3x3 lük skaler birim matris üretir. Görelim;
                                                                                
  Matlabda güzel bir fonsiyonumuz daha var o da size() fonksiyonu. Bu fonksiyonun içine herhangi bir dizinin ya da matrisin ismini yazarsanız sonuç olarak size sırasıyla satır ve sütun sayısını verir. A bir dizi ise 1 satırlı olacaktır ve diyelimki n uzunluklu olsun. Bu durumda size(A) fonksiyonunun çıktısı 1 n dir. A bir matris ise ve mxn boyutlu ise size(A) fonksiyonunun çıktısı m n şeklindedir. Görelim;
                                                                                 
 Peki size() ve eye() fonksiyonlarını beraber kullanalım.
                                                                   
    Öncelikle şunu belirtelim. Matlab içiçe fonksiyonları en içteki fonksiyondan başlayarak çalıştırır. Dolayısıyla üstteki durumda öncelikle size() komutuyla A kare matrisinin satır sütun sayısını belirler ve daha sonra skaler diagonal birim :)) matrisi oluşturmak için eye() komutunu çalıştırır. Eğer A kare matris olmasaydı yani satır ve sütun sayısı birbirine eşit olmasaydı ne olurdu? Deneyin ve görün! hah!

     Şimdilik bu kadar arkadaşlar! Bir sonraki yazımda görüşürük. Bu arada sorularınızı mail adresime ya da yorum kısmına bırakabilirsiniz. Biliyorsak yanıtlarız, bilmiyorsak araştırırız. Haydi ciaooo!

    Kaynak: Signals and Systems with Matlab Applications Steven T. Karris



Blogu faydali buldunuz mu?

İzleyiciler