MATLAB Eklentileri MATLAB Compiler MATLAB C Math Library Araçkutuları Control System. Communications



Benzer belgeler
MATLAB A GİRİŞ

MATLAB. Grafikler DOÇ. DR. ERSAN KABALCI

Bilgisayar Programlama MATLAB

MatLab. Mustafa Coşar

MATLAB ile ANALİZ (MIA)

MAK1010 MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI

Matlab da 2-boyutlu Grafik Çizimi. Arş. Gör. Mehmet Ali ÜSTÜNER

Grafik Komutları. Grafik Türleri plot: çizgisel grafikler bar: sütun bar şeklindeki grafikler stem: sütun çizgisel grafikler pie: pasta grafikleri

BİLGİSAYAR PROGRAMLAMA DERSİ

MATLAB. Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI

GÖRÜNTÜ İŞLEME MATLAB DERS-2

MATLAB de GRAFİK İŞLEMLERİ

1. GİRİŞ 1.1. GENEL BAKIŞ 1.2. KULLANICI ARAYÜZÜ

MAK1010 MAKİNE MÜHENDİSLİĞİ BİLGİSAYAR UYGULAMALARI

BİLGİSAYAR PROGRAMLAMA MATLAB

Yrd. Doç. Dr. A. Burak İNNER

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

DENEY 1: Matlab de Temel Uygulamalar

SAYISAL ANALİZ. Doç.Dr. Cüneyt BAYILMIŞ. Sayısal Analiz. Doç.Dr. Cüneyt BAYILMIŞ

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi,

BM202 SAYISAL ÇÖZÜMLEME

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

Bilgisayar Programlama MATLAB

GÖRÜNTÜ İŞLEME DERS-2

Yukarıdaki program çalıştırıldığında aşağıdaki sonucu elde ederiz.

MATLAB MATLAB MAT LAB MAT LAB MATLAB

Bilgisayar Programlama MATLAB

MATLAB ile ANALİZ (MIA)

MATLAB Temelleri. EE-346 Hafta 2 Dr. Ayşe DEMİRHAN

Bilgisayar Programlama

2.3. MATRİSLER Matris Tanımlama

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad.

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

Algoritma ve Akış Diyagramları

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007

MATLAB A GİRİŞ. EE-346 Hafta-1 Dr. Ayşe DEMİRHAN

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

6. ÇİZİM İŞLEMLERİ Boyutlu Eğri Çizimi x ve y vektörleri ayni boyutta ise bu vektörleri ekrana çizdirmek için plot(x,y) komutu kullanılır.

FORMÜLLER VE FONKSİYONLAR

MATLAB GRAFİK. Matlab, 2D ve 3D başta olmak üzere çok gelişmiş grafik araçları sunar:

BİLGİSAYAR PROGRAMLAMA DERSİ

MATLAB DE 2 BOYUTLU GRAFİK TÜRLERİ

ÖRNEK: Ax+B=0 şeklinde 1. derece denklemin çözümünü veren programa ait akış diyagramını çiziniz.

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

Excel' de formüller yazılırken iki farklı uygulama kullanılır. Bunlardan;

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA VE FİZİKTE PROGRAMLAMA DERSLERİ İÇİN MATLAB ÇALIŞMA NOTLARI. Mehmet ÖZKAN

Pencereler Pencere Özellikleri

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

MATLAB DA 2 BOYUTLU GRAFİK İŞLEMLERİ

>> 5*3-4+6/2^0 ans = 17 ( Matlab da sayılar arası işlemler [ +, -, /, *, ^ ] bu şekilde ifade edilmektedir.)

Ders 5 : MATLAB ile Grafik Uygulamaları

1. BÖLÜM Polinomlar BÖLÜM II. Dereceden Denklemler BÖLÜM II. Dereceden Eşitsizlikler BÖLÜM Parabol

AST415 Astronomide Sayısal Çözümleme - I. 7. Grafik Çizimi

Algoritmalar ve Programlama. DERS - 4 Yrd. Doç. Dr. Ahmet SERBES

MATLAB

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Algoritma & Matlab.

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

MATLAB ve Simulink Kullanımına Giriş

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

HSancak Nesne Tabanlı Programlama I Ders Notları

fprintf ( Ekranda Görüntülenen Mesaj )

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

BÖLÜM 5 5. TABLO OLUŞTURMAK

Bu uygulama saatinde, dinamik sistemlerin simülasyonu (benzetimi) için geliştirilmiş olan, oldukça kullanışlı bir arayüz, Simulink, tanıtılacaktır.

Algoritma ve Akış Diyagramları

Matematikte karşılaştığınız güçlükler için endişe etmeyin. Emin olun benim karşılaştıklarım sizinkilerden daha büyüktür.

MATLAB DA SAYISAL ANALİZ DOÇ. DR. ERSAN KABALCI

.docx veya.doc (2007 ve üzeri sürümlerde.docx iken sürümlerinde.doc tur.) 1.Belge Başlığı

STEM komutu ayrık zamanlı sinyalleri veya fonksiyonları çizmek amacı ile kullanılır. Bu komutun en basit kullanım şekli şöyledir: stem(x,y).

Animasyon Teknikleri, Ses ve Video İşlemleri 1 / 18

TEMEL BİLGİSAYAR. Ders Notları. Yard. Doç. Dr. Seyit Okan KARA

EXCEL 2007 ELEKTRONİK ÇİZELGE

Microsoft Office Excel 2007

BİLGİSAYAR DESTEKLİ TASARIM II

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo

BÖLÜM 1 GİRİŞ 1.1 GİRİŞ

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

AÇILIŞ EKRANI. Açılış ekranı temelde üç pencereye ayrılır:

Lineer Cebir. Doç. Dr. Niyazi ŞAHİN TOBB. İçerik: 1.1. Lineer Denklemlerin Tanımı 1.2. Lineer Denklem Sistemleri 1.3. Matrisler

Ankara Üniversitesi Fen Fakültesi. Astronomi ve Uzay Bilimleri. AST206 İstatistik Astronomi Dersi OCTAVE GİRİŞ. Öğr. Gör.

İÇİNDEKİLER ÖNSÖZ Bölüm 1 SAYILAR 11 Bölüm 2 KÜMELER 31 Bölüm 3 FONKSİYONLAR

İÇİNDEKİLER ÖNSÖZ Bölüm 1 KÜMELER Bölüm 2 SAYILAR

WORD KULLANIMI

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

MATLAB/Değişkene Değer Atamak

MICROSOFT OFFICE WORD 2010 ÖRNEK TEST SORULARI

Matlab da Dizi ve Matrisler. Mustafa Coşar

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1

Fen ve Mühendislik Uygulamaları ile MATLAB

Metin İşlemleri, Semboller

BİLGİSAYAR PROGRAMLAMA

BÖLÜM 04. Çalışma Unsurları

Ders 1 : MATLAB Programlama Ortamı

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Giriş.

Buna göre, eşitliği yazılabilir. sayılara rasyonel sayılar denir ve Q ile gösterilir. , -, 2 2 = 1. sayıdır. 2, 3, 5 birer irrasyonel sayıdır.

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

Transkript:

GİRİŞ MATLAB; (MATrix LABoratuvary); ilk defa 1985 de C.B. Moler tarafından geliştirilmiş ve özellikle de matris esaslı matematik ortamında kullanılabilen etkileşimli bir paket programlama dili olarak tanımlanmıştır. Başlangıçta MATLAB özellikle mühendislik alanında, iyi grafik özelliklere sahip daha çok sayısal hesaplamalarda kullanılmak amacı ile geliştirilmiş bir paket programlama dili olarak ortaya çıkmıştır. MATLAB, orijinal olarak matris yolu ile matris hesaplamalarının öncüleri olarak bilinen LINPACK ve EISPACK projeleri yolu ile geliştirilen matris yazılım programlarına kolay erişim sağlamak amacı ile yazılmıştır. O zaman için özellikle FORTRAN dilinde uzun zaman alan programlama işlemlerine bir alternatif olarak ortaya çıkmıştır. İlk sürümleri FORTRAN diliyle yazılmış olmakla beraber son sürümleri C dilinde hazırlanmıştır. Bugün için farklı alanlarda kullanılabilen çok geniş bir ürün yelpazesine sahip MATLAB, teknik hesaplamalarda kullanılan yüksek başarılı dil olarak tanımlanmaktadır. MATLAB ın belli başlı kullanım alanları; Matematik ve hesaplama işleri, algoritma geliştirme. Modelleme, benzetim ve prototipleme. Verilerin analizi, incelenmesi ve görüntülenmesi. Bilimsel ve mühendislik alanında grafik işlemleri. Grafiksel kullanıcı arayüz yapısını da içine alan uygulama geliştirme. MATLAB, temel veri elemanı için boyutlandırma gerektirmeyen bir dizim (array) olan etkileşimli sistemdir. 1.1 MATLAB ürün ailesi MATLAB, bütün mathworks ürünleri için bir alyapıdır. MATLABta, kullanımı kolay olan tek bir ortamda sayısal hesaplama, 2-d ve 3-d grafikleri ve dil yeteneklerini birleştirilmiştir. MATLAB eklentileri, MATLABta geliştirilen sistemlerin gerçekleştirmesini destekleyen seçimli araçlardırlar. Araç kutuları, özel sorunların çözümü için MATLABa uyarlanan MATLAB işlevlerinin bir tür kitaplıklarıdır. Araç kutuları, açık ve eklenebilir olup; kendi algoritmalarını ve ekini görebilirsiniz. Simulink,

Blok diyagram arayüzü ile doğrusal olmayan simulasyonu ve canlı simulasyon yetenekleriyle öz sayıları, MATLAB ın grafiklerini ve dil fonksiyonlarını birleştiren bir sistemdir. MATLAB SIMULINK Simulink Eklentileri Simulink Accelerator Real-Time Workshop Stateflow Blocksetler DSP Fixed-Point Nonlinear Control Design Communications MATLAB Eklentileri MATLAB Compiler MATLAB C Math Library Araçkutuları Control System Communications Financial Frequency Domain System Identification Fuzzy Logic Higher-Order Spectral Analysis Image Processing LMI Control Model Predictive Control m-analysis and Synthesis NAG Foundation Neural Network Optimization Partial Differential Equation QFT Control Design Robust Control Signal Processing Spline Statistics Symbolic Math System Identification Wavelet Şekil 1.1 Simulink eklentileri, simulinkte geliştirilen sistemlerin gerçekleştirmesini destekleyen seçime dayalı araçlardır. Bloksetler, özgül uygulama alanlarında kullanım için tasarlanmış sımulink bloğunun toplamlarıdır.

MATLAB SİSTEMLERİ MATLAB sistemi 5 ana kısımdan ibarettir. 1. MATLAB dili: Bu, şartlı deyimler, fonksiyonlar, veri yapıları, giriş/çıkış ve nesneye yönelik programlama özellikleri içeren yüksek seviyeli bir matris/dizim dilidir. Dil özellikleri MATLAB Toolbox ta 6 adet klasör içinde organize edilmiştir. Bunlar; ops lang strfun iofun timefun datatypes İşlemler ve özel karakterler Programlama dili yapıları karakter dizileri Dosya giriş/çıkış Zaman ve tarihler Veri türleri ve yapıları. 2. MATLAB çalışma ortamı: Bu, MATLAB kullanıcısı veya programcısı olarak çalışma imkanı sağlayan bir araç ve gereçler takımıdır. Çalışma ortamındaki değişkenleri kontrol etmeyi ve verileri çalışma ortamından başka bir ortama aktarmayı kolaylaştırır. Ayrıca MATLAB uygulamalarının geliştirilmesi, kontrol edilmesi, hata bulunması ve M- dosyalarının biçimlendirilmesi için gerekli araçları kapsar. Çalışma ortamı özellikleri general adı altında tek bir klasör içinde yer almaktadır. 3. Grafik Sistemleri: Bu, MATLAB da Handle Graphics olarak bilinir. İki boyutlu ve üç boyutlu veri görüntülemeleri, görüntü işleme, canlandırma (animasyon) ve grafik sunumu için gerekli yüksek seviyeli komutlar kapsar. Ayrıca MATLAB uygulamaları için tamamen kullanıcı arabirimi (GUI) oluşturmak kadar, grafiklerin görünüşünü elle düzenlemeye olanak veren düşük seviye komutları da içerir. Grafik fonksiyonları MATLAB Toolbox içinde 5 klasörde yer alır: graph2d graph3d specgraph graphics uitools İki boyutlu grafikler Üç boyutlu grafikler Özel grafikler Grafik yönetimi Grafiksel kullanıcı arabirim araçları

4. MATLAB Matematiksel Fonksiyon Kütüphanesi: Bu, sum, sine, cosine gibi elemansal fonksiyonlardan ve karmaşık aritmetikten, matris tersi, matris özdeğerleri, Bessel fonksiyonları ve hızlı Fourier dönüşümlerine kadar değişen geniş bir hesaplama algoritması toplamıdır. Matematik ve analitik fonksiyonları MATLAB Toolbox 8 klasör içinde düzenlenmiştir. Bunlar: elmat elfun specfun matfun datafun polyfun funfun sparfun Elemansal matrisler ve matris işlemleri Elemansal matematik fonksiyonları Özel matematik fonksiyonları Matris fonksiyonları-sayısal lineer cebir Veri analizi ve Fourier dönüşümleri Aradeğer (interpolation) ve polinomlar Fonksiyon fonksiyonları ve dif.denk. (ODE) çözüm fonksiyonları Seyrek (sparse) matrisler 5. MATLAB Uygulama Programı Arabirimi (AIP): MATLAB ile etkileşimli çalışan C ve FORTRAN programları yazılmasına olanak tanıyan bir kütüphanedir. MATLAB tan rutinleri çağırma (dinamik ilişki), MATLAB`ı bir hesaplama motoru gibi çağırma ve MAT-dosyalarını yazma ve okuma için gerekli gereçleri içerir. Büyük ve Küçük harf duyarlılığı(casesen off,casesen): MATLAB büyük ve küçük harf karakterlerine dutarlı bir dildir. Yani yanı simla verilmiş fakat karakterlerin durumu bakımında faklılık arzeden isimler farklıymış gibi algılanır. Örneğin dscrite, DSCRITE ve Dscrite atamaları farklı şekilde algılanır. Bu durumda bir isme birden fazla değer atamak mümkündür. Eğer istenirse casesen off komutu ile bu durum sona erdirilebilir. Böylece büyük-küçük harf duyarlığı ortadan kalmış olur. Değikenlerin ve Matrislerin durumu(who, whos, what, size): MATLAB da; kullanıcı tarafından program içinde tanımlanan değişkenlerin ve matrislerin durumunu gözden geçirmek için who,whos,what,size gibi kullanışlı komutlar bulunmaktadır. who;komutu kullanıcı tarafından tanımlanan değişkenlerin lsitesini görüntüler, whos;komutu bu değişkenleri boyutları ile birlikte ve bu değişkenlerin sıfır olamayan sanal kısımları olup olmadığını da görüntüler,

listesini verir. what;komutu kullanıcı diskinin halihazır dizininde mevcut M-dosyaları Yardım Komutu(help): Yardım imkanı MATLAB ta en önemli bir kaynaktır. Çalışma ortamındahelp komutu ile yardım alınabilecek dosyaların bulunduğu dizinler ve sonrada yardım alınabilecek komutlar görüntülenir.ardından help komutunun ardına yardım istediği konuyu peşi sıra yazarak istediği konuda yadım alabilir. Örnek olarak >>help sin komutu girilerek SIN SIN(X) is the sine of the elements of X şeklinde sinüs ile ilgili bir yardım alınabilir. Yazım(type):type komutu ile bir dosyanın içeriğini görüntüler. M-dosyalarının görüntülenmesinde dosya adından sonra M uzantısının yazılmasına gerek yoktur. Örneğin type device komutudevice.m dosyasında yazılı olan tüm satırları görüntüler. Buna karşılık typedevice.m komutu isedevice dosyasında yer alan % işareti ile belirlenmiş açıklama satırları görüntüler. Tablo.1.1 Kısaca genel komutların isimleri ve açıklamaları Tablo 1.1 de verilmiştir. Komut help who whos what size lenght clear quit save İşlev MATLAB'ın operatör ve fonksiyonlarını tanımlar Değişkelerin isimlerini listeler Değişkenlerin simlerini ve boyularını listeler Diskinizdeki M-dosyalarını listeler Argümanların boyutlarını verir Argümanların maksimum boyutlarını verir Çalışma ortamındaki tüm değişkenleri temizler MATLAB ortamını sona erdirir MATLAB çaışma ortamında bir MAT-dosyasını saklar ÖĞRENCİ SÜRÜMLERİ MATLAB 4.0 itibaren öğrenci sürümleri oldukça güçlü hale getirilmiştir. Öğrenci MATLAB 5.0 da profesyonel MATLAB ile erişilen tüm fonksiyon ve özelliklere erişmek mümkün olup, yalnız kullanılabilecek matris elemanı sayısında bir sınırlandırma vardır.

Öğrenci sürümü MATLAB 4.0 da matris eleman sayısı 8192 de sınırlandırılmış bu sayı öğrenci sürümü MATLAB 5.0 da iki katına çıkarılarak 16384 (128x128) olmuştur. MATLAB 5.3 veya Release 11 kadar (MATLAB 4.0 ve MATLAB 5.0 da) The Student of MATLAB 5.0 adı altında Prentice Hall kitabevi tarafından program disketi veya CD leri ile birlikte kitap şeklinde pazarlanmaktadır. MATLAB 5.3 ile birlikte karşımıza MATLAB Student Version adı altındafarklı bir öğrenci sürümü çıkmaktadır. Gerek 5.0 ve gerek 5.3 sürümleri The Student Edition of MATLAB temel çekirdek programına ilaveten Symbolic Math, Control System ve Signal Processing Toolbox ları kapsamaktadır. Sınırlama yalnızca matris eleman sayısındadır. Yalnız MATLAB 5.0 kadar MATLAB yanında SIMULINK ın öğrenci sürümü yoktu. Learning MATLAB ve Learning Simulink adı altında iki ayrı kitapla gelen bu sürüm Windows yazımda Linux ortamında kullanılabilmektedir. Bu sürümün diğer bir önemli üstünlüğü de profesyonel MATLAB a göre oldukça düşük bir maliyet ile diğer MATLAB eklenti paketlerini de bu sürüm ile birlikte kullanabilme imkanıdır. DİZİM (array) ve DİZİM İŞLEMLERİ (MATLAB temel işlemleri) hesaplamaların pek çoğunda kullanılan rakamlar skalar adını alırlar. Skalarda ilgili işlemler matematiğin temelini teşkil eder. Bilgisayar ortamında skalar işlemi bir anda birden fazla icra edilmeye kalkılırsa tekrarlı skalarlar işlemler çok zaman kaybettirici ve elverişsiz hale gelir. MATLAB bu tür problemleri çözmek için işlemleri veri dizimleri (arrays) üzerinde tanımlar. DİZİM MATLAB içinde bütün işlemler dizim (array) olarak isimlendirilen bir sıralama veya tertip üzerinde yerine getirilir. Gerçekte MATLAB`da array olarak isimlendirilen dizim deyimi matematik işlemlerde farklı yapıları içine alan genel bir kavramdır. Örneğin bir matris satır ve sütunların meydana gelmiş iki boyutlu bir gerçek veya karmaşık sayılar dizimidir. Dizimlerin Oluşturulması MATLAB`ta dizimlerin oluşturulması aslında çok kolay işlemdir. Bunun için sadece iki nokta üst üste : işaretini kullanmak yeterlidir. Örneğin;

X=0:0.1:10; Komut satırı 0 ile başlayan 0.1 er adım ile artan 10 sayısına kadar bir vektör dizim oluşturur ve bunları X değişkenine atar. Başlangıç değeri sıfırdan küçük veya büyük olabilir. Diğer bir dizim oluşturma yolu linspace ve logspace fonksiyonlarıdır. linspace fonksiyonu verilen iki değer arasında belli sayıda doğrusal aralıklı bir dizim oluşturur. Bunun genel komut satırı linspace (X1, X2,N) biçimdedir. Buna göre X1ve X2 değişkenleri arasında N adet bir dizim oluşturur. Üçüncü argüman N kullanılmaz ise 100 adetlik bir dizim oluşturur. logspace fonksiyonu verilen iki değişken arasında belli sayıda 10 tabanına göre, logaritmik aralıklı bir dizim oluşturur. Bunun genel komut satırı; longspace (X1, X2,N) biçimdedir. Burada X1 ve X2 dizim oluşturacak değişkenlerin logaritmik (üst) değerleri olup üçüncü giriş argümanın varsayılan değeri 100 dür. Örneğin longspace (0,10); komut satırı 10 0 dan başlayan 10 2 sona eren 100 adet (varsayılan) logaritmik aralıklı bir dizim oluşturur. Dizimlerin Adreslendirilmesi MATLAB içinde her bir dizim elemanına indisler kullanılarak ulaşılır. Vektör biçimindeki tek boyutlu dizimlere tek bir indis kullanarak, matris biçimdeki iki boyutlu dizimlere iki adet indis kullanarak ve çok boyutlu dizimlere de üç adet indis kullanarak adresleme yapılır. MATLAB İLE ÇALIŞMAK MATLAB`ı gözünüzde canlandırmanın en kolay yolu, onu tüm niteliklerle donatılmış bir hesap makinesi gibi düşünülmektedir. Basit bir hesap makinesinin yaptığı toplama, çıkarma, çarpma ve bölmeden ibaret dört işlemi kolaylıkla yapar. Bunlara ilaveten teknik bir

hesap makinesinde bulunan karmaşık sayılar, karekök, ve üst alma ve sinüs, kosinüs ve tanjant gibi geometrik işlemlerde kolaylıkla yürütülür. Bunun dışında, programlanabilir bir hesap makinesinde olduğu gibi veri saklama ve geri yükleme gibi işlemler ile önemli bir sorunun hesaplamasını otomatik hale getirmek için komut satırlarını oluşturabilir, icra edebilir veya saklayabiliriz. Ayrıca çok güçlü bir hesap makinesinde olduğu gibi çok çeşitli yollardan veri grafiklerinin oluşturulması, matris aritmetiğinin icrası, polinomların incelenmesi, fonksiyonların integre edilmesi, denklemlerim sembolik olarak kullanılması v.b. işlemlerin yapılmasına mümkün kılar. Gerçekte, MATLAB çok daha fazla özelliklere sahip olup, herhangi bir hesap makinesinden daha çok yönlüdür. MATLAB matematik hesaplamalar yapmaya yarayan bir araçtır. FORTRAN, BASIC, PASCAL, C gibi bilgisayar programlama dillere göre kullanımı daha kolay ve daha gelişkin niteliklere sahip bir programlama dilidir. Güçlü grafik yetenekleri sayesinde verilerin görüntülenmesi ve canlandırılası için zengin bir ortam sağlar. MATLAB, özgün problemlerin çözümüne görsel yaklaşım sunan grafik kullanıcı ara birimleri (GUIS) oluşturulmasına olanak sağlayan bir uygulama geliştirme platformudur. Bütün bunlara ilaveten MATLAB Toolbox`lar adı altında özgün uygulama alanları için problem çözücü araç takımları sunar. Örneğin MATLAB öğrenci baskısı Control Sistem Toolbox, Signal Processing Toolbox ve Symbolic Math Toolbox gibi üç önemli toolbox içermektedir. Ayrıca özgün problemle uğraşanlar kendi Toolbox`larını da oluşturabilirler. MATLAB ÇALIŞMA ALANI MATLAB çalışma alanı, MATLAB komut hattından kullanılabilecek değişkenler (dizimler olarak bilinen) takımını içerir. who veya whos komutlarını kullanarak o andaki çalışma alanı içindekiler görüntülenebilir. who komutu sadece değişkenlerin isimlerini kısa bir liste halinde verirken, buna karşılık whos komutu ayrıca boyutu ve veri türü bilgileri de içerir. Çalışma alanı ayrıca komut penceresinde yer alan araçlar üzerindeki çalışma alanı tarayıcısı (Workspace Brower) penceresini açarak da görüntülenebilir. Tüm bilgilerin görüntülendiği bu pencerenin araçlar üzeride küp biçimde bir şekil vardır. Bu şekil üzerinde tıklandığında tarayıcı pencere açılır. Çalışma alanında yer alan tüm değişkenleri silmek için clear Komutu kullanılır. 1.4.3 MATLAB komut penceresi

MATLAB açıldığında karşımıza gelen pencere (Şekil1) MATLAB ın komut penceresidir. Komut penceresi kullanıcı ile MATLAB komut yorumlayıcısı arasında iletişimi sağlayan bit ara yüzdür. Yorumlayıcı hazır hale geldiğinde (>>) iletisi karşımıza gelir. Bu ileti MATLAB a komut ya da komut dizileri girilebileceğini gösterir. Şekil 1.2 Genel Komutlar Demo komutu(demo): Eğer MATLAB ilk defa kullanılıyor ya da belli komutların çalışmasını merak ediliyorsa demo komutu ile demostrasyon listesini görüntülenebilir. Listeden yapacağınız bir seçimle seçtiğimiz işlevin icraatlarını adım adım izleme imkanı bulabilirsiniz. Saklama ve geri çağırma komutları(save-load): Bilgisayarınızda MATLAB ile çalışırken bilgisayarınızı kapatmayı arzulayabilirsiniz. Daha sonra geri dönerek kaldığınız yerden etmek isteyebilirsiniz. İşte bunu başarmak için kullanıyor olduğunuz bütün değişkenleri yeniden ayarlamadan bilgisayarınızı kapatmadan önce >>save komutunu kulanın. Bu komut kullanımda olan MAT dosyasını alt dizininde veya MATLAB dosyanızda MATLAB.mat diye yapar veya üstüne yazar. Sonra MATLAB.mat da yer alan çalışma alanını yeniden çağırma ihtiyacı duyduğunuzda >>load komutunu girmelisiniz.

MATLAB.mat haricinde başka bir isim ile de değişkenleri saklayabilirsiniz. Örneğin >>save dosyam Bunun yanında >>load dosyam komutu ile de saklamış olduğunuz değişkenleri geri çağırabilirsiniz. Çalışma alanındaki verilerin kaydedilmesi ve yüklenmesi, save ve load komutları: MATLAB`ın save ve load komutları bir oturumun her hangi bir anında MATLAB çalışma alanı içeriklerinin kaydedilmesi ve bu oturum sırasında veya daha sonraki bir oturumda kaydedilen bu verilerin tekrar çalışma alanına yüklenmesini sağlar. save ve load komutları aynı zamanda yazı (text) türü veri dosyalarının da çalışma ortamına ithal edilmesini sağlar. save komutu çalışma alanı içeriğini bir ikili sayılar (binary) MAT-dosyası olarak kaydeder. Bu dosya daha sonra load komutu ile geri çağırılabilir. 1.5 MATLAB Komut Penceresi Menüleri: Bir çok programda olduğu gibi MATLAB da da komut penceresi menüleri büyük kolaylıklar sağlar. Buna göre MATLAB daki menüler ve işlevleri şu şekildedir. 1.5.1 File (Dosya) Menüsü: File menüsü dosya veya dosyaların oluşturulması ve yazdırma işleminin ayarlamalarının olduğu komutları içerir. New:Bu komut şu seçenekleri içerir. M-File, yeni M-dosyası oluşturmak için boş bir pencere açar. Figure, yeni bir şekil penceresi oluşturur. Model,ywni bit SIMULINK penceresi oluşturur. Open M-File: Bir dosya seçebileğiniz pencere ekrana getirerek dosya adı girilmesini veya gereken dosyanın seçilmesini ister ve ardında seçilen yada ismi yazılan dosya metin düzenleyici programı çalıştırılarak açılır. Open Selected:Komut penceresinde seçilerek belirtilen bir M- dosyasını varsayılan düzenleyiciyi çalıştırarak açar. Save Workspace As...:Çalışma alanını kaydetmek için bir iletişim kutusu görüntülenir, yeni bir dosya adı girmeniz gerekmektedir.

Run M-File: Dosya Yöneticisi nin Çalıştır... komutuna benzer. Bir M-dosyası adı girmeniz veya seçmeniz için bir iletişim kutusu görüntülenir ve belirtilen M-dosyasını çalıştırır. Look for Selected: MATLAB in lookfor komutunu çalıştırır. MATLAB in arama yolunda bulunan tüm M-dosyalarının içindeki yardım metinlerinin ilk açıklama satırlarını tarayarak komut penceresi içinde seçilen katarı araştırır ve sonucu ekranda görüntüler. Print...: Komut Penceresinde seçilen metni o içn yüklü bulunan bir yazıcıya döker. Eğer seçilen metin yoksa, tüm MATLAB oturumu boyunca girilen metni yazdırır. Printer Setup...: O andaki yazıcı ayarlarını ve seçeneklerini(renk tonu gibi) değiştirmek için bir iletişim kutusunu görüntüler. Exit MATLAB: MATLAB oturumunu kapatır. 1.5.2 Edit (Düzen) Menüsü: Edit (Düzen) menüsü komutları kullanıcıya düzenleme fonksiyonlarını uygulamak için büyük kolaylıklar sağlarlar. Cut: Komut Penceresi nde seçilen metni keser ve ortamda saklar. Copy: Komut Penceresi nde seçilen metni kopyalar ve ortamda saklar. Paste: O andaki pano içeriğini komut satırına yapıştırır. Clear Session: Komut penceresinin içeriğini siler. Bu komut, clc komutu ile aynı görevi icra eder. 1.5.3 Options (Seçenekler) Menüsü: Bu menü; MATLAB da pencere seçeneklerini ayarlamak, varsayılan düzenleme programını seçmek ve MATLAB in format ve echo komutlarının işlevlerini değiştirmek için kullanılır. Numeric Format: Ekran çıktı biçimlerini değiştirmek için bu komutu kullanabilirsiniz. Bu komut şu seçeneklerden oluşmaktadır.

Turn Echo On/Off (Yansıma Açık/Kapalı): Yansıma durumu için açık ve kapalı arasında geçiş yapar. Echo on ise verilen bir komutun sonucu ekranda görüntülenmesini sağlar. Enable/Disable Background Process: Artalan işlemlerinin olup olmaması arasında geçişi sağlar. Font...: Yazı fontları iletişim kutusunu açarak buradan komut penceresinde kullanılan font ve artalan rengini seçebiliriz. Tablo1.3 Komut Etki Short Sabit-noktalı sayıları 5 haneli olarak gösterir (varsayılan). Long Sabit-noktalı sayıları 15 haneli olarak gösterir. Hex Onaltılı gösterim biçimini seçer. Bank Dolar ve sent (Lira ve Kuruş) gösterim biçimlerini seçer. Sayıların önüne pozitif, negatif veya sıfır olma durumlarına göre +, veya boşluk koyar. Kompleks sayılarda sanal kısım dikkate Plus alınmaz. Short e Kayan-noktalı sayıları 5 haneli olarak yazar. Long e Kayan-noktalı sayıları 15 haneli olarak yazar. Rational Gerçel sayıları, tamsayıların oranı olarak verir. Katsayıları, matrisin önünde satır-atla karakteri ile birlikte Loose görüntüler. Katsayıları, matrisin önünde satır-atla karakteri olmadan Compact görüntüler. Editor Preference...: Bir metin düzenleme komutu işletilmek istendiğinde gereken metin düzenleyici programı varsayılan olarak belirtmemizi sağlar. MATLAB DA SKALER, VEKTÖR VE MATRİS İŞLEMLERİNE GİRİŞ 2.1 İfadeler: MATLAB diğer programlama dillerine göre daha vantajlıdır. Bir çok programlama dilinden farklı matematiksel ifadeler sunar ve bu ifadeler bütün matrisleri içerirler. İfadelerin temel blokları Değişkenler Sayılar Operatörler Fonksiyonlar dır.

2.2 Değişkenler: MATLAB da, herhangi bir tip tanımlaması veya boyut ifadesine gerek yoktur. MATLAB, yeni bir değişken ismi ile karşılaştığında, otomatik olarak ans isminde bir değişken oluşturur ve uygun bir bellek miktarı ayırır. Eğer değişken zaten varsa, MATLAB gerekli bir bellek ayırdığında içeriği değişir. Örneğin, ogrenci_sayı=51 ogrenci_sayı diye isimlendirilen 1x1 matrisi oluştur ve 21 i yükle. Değişken isimleri; bir harfden, sayıdan veya alt çizgiden oluşur. sayısının tarafından takip edilen harftan oluşurlar. MATLAB, sadece değişken isminin ilk 31 karakterini kullanır. MATLAB, büyük ve küçük harfe duyarlıdır, büyük harf ile küçük harfi ayırdeder. A ve a değişkenleri aynı değildir. 2.3 Sayılar: MATLAB da sayılar yaygın olarak kullanılan onluk tabanda ifade edilirler. Bunun yanısıra onluk tabanda üstel olarak veya i veya J olarak kompleks sayı biçimlerinde de ifade edilebilirler. Örnek olarak, 3-99 0.0001 9.6397238 1.60210e-20 6.02252e23 1i -3.14159j 3e5i sayıları gösterilebilir. Sayıların duyarlılığını belirtmek için kullanılaneps sayısı onluk tabanda 16 basamaklı olarak gösterilmekte ve yaklaşık olarak 10-308 den 10-308 e kadar olan tüm sayıları kapsayabilmektedir. 2.4 Operatörler(sayısal işlemciler): Matematiksel ifadeleri oluşturmak için operatörler ve önceden tanımlanmış sembolleri kullanabilirsiniz. Operatörler özetle şunlardır:

Tablo 2.1 İşlem Cebirsel Biçimi MATLAB Karşılığı Toplama a + b a+b Çıkarma a - b a-b Çarpma a x b a*b Bölme a / b a/b Sola Bölme b / a a\b Üs Alma a b a^b İki düz (skaler) sayı atasındaki aritmetiksel işlemler Tablo2.1 de gösterilmiştir. Bir deyim aşağıda olduğu gibi değer atanarak belli bir değer içinde saklanabilir. x=a + b Bu ifadede a ve b nin toplandığı ve x değişkeni içinde saklandığı belirtilmektedir. Bu atama işlemini; a içindeki bir değerin b içindeki bir değerle toplanarak bu toplamın x değişkenine atanacağı şeklinde yorumlamak mümkündür. Eğer b,r atama işlemi bu şekilde yorumlanacak olursa, aşağıda verilen bir MATLAB bildirimi de geçerli olur. say = say + 1; Açık bir şekilde bu bildirim geçerli bir cebirsel bildirim olamaz, fakat MATLAB içindeki 1 in say içindeki bir değere ilave edileceğini ve sonucun tekrar say içinde saklanacağını belirtir. Sonuçta say içindeki değerin her seferinde 1 artacağının belirtilmesine denktir. Belli bir değişken tanımlamadan girilen deyimlerin icrasında ans isimli bir değişken içinde otomatik olarak saklanır. Her defasında ans içindeki değer bir öncekinin yerini alır. Burada ans İngilizce cevap anlamına gelen answer kelimesinin kısaltılmış şeklidir. Matrislerle yapılan işlemlerde bölme işlemi için iki farklı sembol kullanılmaktadır. Bunun yanında eğer sayılar skaler ise iki bölme işleminin sonucu da aynı değeri gösterecektir. Örneğin 3/2 ile 2\3 ifadelerinin sonuçları aynı olup 1.5 dir.

Aritmetiksel İşlemlerde Öncelik Durumu:Tek bir aritmetiksel durum içinde birden fazla durum bir arada bulunabildiğine göre hangi işlemin öncelik hakkına sahip olunduğunun bilinmesi yerinde olacaktır. Aşağıda MATLAB da kullanılan işlemlerde işlemlerin öncelik listesi verilmiştir. Tablo 2.2 Öncelik İşlem 1 Parantez 2 Üs alma, soldan sağa doğru 3 Çarpma ve blme, soldan sağa doğru 4 Toplama ve Çıkarma, soldan sağa doğru Disp FONKSİYONU MATLAB da bir matematiksel ifadeyi argüman olarak alıp bu ifadenin sonucunu ekrana aktaran bir fonksiyon mevcuttur bu da disp fonksiyonudur. Ancak disp fonksiyonunu kullanmaksızın sadece ifadeyi yazarsak ta sonucu görebiliriz:» 2+8 ans = 10» disp(2+8)» 10, SEMBOLÜ Dizi ya da matris elemanları arasına ayraç olarak yerleştirilir; bu sembol yerine boşluk sembolü kullanılması da aynı etkiyi sağlar;» [5,7] ans = 5 7» disp( [3,4] ) 3 4» disp( [3 4] )

3 4» Karakter türü veriler ' sembolleri içine alınır; disp fonksiyonu ile aşağıdaki gibi görüntülenirse bitişik olarak ekrana aktarılırlar:» disp([3 4]) 3 4» disp(['a' 'c']) ac» ; SEMBOLÜ ; Sembolü, aralarında yerleştirildiği iki skaleri iki farklı satıra yazar.» disp([4;8]) 4 8» ; sembolü ayrıca ilerde görüleceği gibi matrislerde satır ayracı olarak kullanılır. : SEMBOLÜ :Sembolü başlangıç ve son değerleri belirten bir sayı dizisini 1 er artımlarla üretilir; başlangıç ve son değerler yanında bir de artım değerleri üçüncü parametre olarak verilirse bu durumda da belirten artımı kullanarak bir sayı dizisi üretir. Üç parametre kullanılırsa ilk parametre başlangıç, ikinci parametre artım ve üçüncü parametre ise son değerdir.» 1:6 ans = 1 2 3 4 5 6» disp(2:5) 2 3 4 5» ve aynı zamanda» 2:3:18 ans = 2 5 8 11 14 17» 0.4:0.7:10 ans = Columns 1 through 7

0.4000 1.1000 1.8000 2.5000 3.2000 3.9000 4.6000 Columns 8 through 14» 5.3000 6.0000 6.7000 7.4000 8.1000 8.8000 9.5000 AYNI UZUNLUKLARDAKİ VEKTÖRLER ÜZERİNDE İŞLEMLER olsun: TOPLAMA VE ÇIKARMA + ve sembolleri iki vektör arasında da kullanılabilir; av b üçer elemanlı iki vektör» a=[2 1-1] a = 2 1-1» b=[4-2 3] b = 4-2 3» a+b ans = 6-1 2» a-b ans =» -2 3-4 yukardaki örneklerde görüldüğü gibi, toplama ve çıkarma işlemlerinde bilinen vektör toplamı ve farkı işlemi gerçekleştirilecektir. ÇARPMA VE BÖLME Eşit uzunlukta iki vektör için * ve / operatörleri kullanılırken dikkatli olunmalıdır.» a=[4 5] a = 4 5» b=[3-2]

b = 3-2» c=a*b??? Error using ==> * Inner matrix dimensions must agree.» Burada Matlab için * sembolü matris çarpımı sembolüdür ve a ve b çarpılabilecek tipte matrisler olmadıkları için yukarıdaki hata mesajını alınmaktadır..* sembolü, elemanları, iki vektörün karşılıklı elemanların çarpımından oluşan aynı uzunlukta yeni bir vektör üretecektir:» c=a.*b c =» 12-10 Benzer biçimde./ ve.\ operatörleri de geçerlidir. Aşağıda örneklerde inceleyelim:» a=[4 5] a = 4 5» b=[3-2] b = 3-2» d=a./b d = 1.3333-2.5000» e=a.\b e =» 0.7500-0.4000

EŞİT UZUNLUKTA İKİ VEKTÖR ARASINDA ^ OPERATÖRÜ» a=[4 5] a = 4 5» b=[3-2] b = 3-2» h=a^b??? Error using ==> ^ Matrix dimensions must agree.» Yukarıda görüldüğü gibi iki vektör arasında ^ işlemi tanımsızdır..^ sembolü geçerlidir ve birinci vektörün bileşenleri taban ve ikinci vektörün bileşenlerini de üst kabul ederek üst alma işlemi sonucu aynı boyutta yeni bir vektör oluşturacaktır. Aşağıda örneği inceleyelim:» h=a.^b h = 64.0000 0.0400» BİR VEKTÖR VE SKALER ARASINDAKİ İŞLEMLER : TOPLAMA VE ÇIKARMA İŞLEMLERİ: Aşağıda örneklerde görüldüğü gibi, bir skaler ile bir vektör operatörü ile işleme sokulursa, skaler vektörün her iki bileşeni ile de toplanır:» 4+[2-2] ans =» 6 2 - operatörü için de aynı şey söz konusudur:» 7-[2-1] ans =

» 5 8 ÇARPMA VE BÖLME Bir skaler ile bir vektör operatörü ile işlem sokulursa sonuçta bileşenleri skaler ile vektörün bileşenlerinin ayrı ayrı çarpılması ile oluşan yeni bir vektör elde edilir:» 3*[2-1] ans = 6-3» Bir skalerin bir vektöre bölümü ise tanımsızdır ( / sembolü ile):» 3/[2-1]??? Error using ==> / Matrix dimensions must agree.» Ters bölme ( \ ) sembolü kullanılırsa vektörün bileşenlerinin skaler ile bölünmesinden elde edilen iki sayı yeni bir vektör oluşturacaktır:» 2\[4 8] ans =» 2 4 Oysa bir vektörün bir skalere bölünmesi tanımlıdır ve bileşenleri vektörün bileşenlerinin skalere bölünmesinden elde edilen yeni bir vektör elde edilecektir:» [4-8]/2 ans =» 2-4 MATLAB İLE MATRİS İŞLEMLERİ MATLAB yazılımı kullanarak matrislerle ilişkili gerçekleştirmek son derece kolaydır. Bir matrisi MATLAB içine yüklemek için, matrisin değerlerini köşeli parantez ([]) sembolleri içine yazılır. Elemanlar arasında birer boşluk ve satırlar arasında da noktalı virgül (;) sembolleri konulmalıdır.

Operatörler(sayısal işlemciler): Matematiksel ifadeleri oluşturmak için operatörler ve önceden tanımlanmış sembolleri kullanabilirsiniz. Operatörler özetle şunlardır: Tablo 3.1 İşlem Cebirsel Biçimi MATLAB Karşılığı Toplama a + b a+b Çıkarma a - b a-b Çarpma a x b a*b Bölme a / b a/b Sola Bölme b / a a\b Üs Alma a b a^b İki düz (skaler) sayı atasındaki aritmetiksel işlemler Tablo2.1 de gösterilmiştir. Bir deyim aşağıda olduğu gibi değer atanarak belli bir değer içinde saklanabilir. x=a + b Bu ifadede a ve b nin toplandığı ve x değişkeni içinde saklandığı belirtilmektedir. Bu atama işlemini; a içindeki bir değerin b içindeki bir değerle toplanarak bu toplamın x değişkenine atanacağı şeklinde yorumlamak mümkündür. Eğer b,r atama işlemi bu şekilde yorumlanacak olursa, aşağıda verilen bir MATLAB bildirimi de geçerli olur. say = say + 1; Açık bir şekilde bu bildirim geçerli bir cebirsel bildirim olamaz, fakat MATLAB içindeki 1 in say içindeki bir değere ilave edileceğini ve sonucun tekrar say içinde saklanacağını belirtir. Sonuçta say içindeki değerin her seferinde 1 artacağının belirtilmesine denktir. Belli bir değişken tanımlamadan girilen deyimlerin icrasında ans isimli bir değişken içinde otomatik olarak saklanır. Her defasında ans içindeki değer bir öncekinin yerini alır. Burada ans İngilizce cevap anlamına gelen answer kelimesinin kısaltılmış şeklidir.

Matrislerle yapılan işlemlerde bölme işlemi için iki farklı sembol kullanılmaktadır. Bunun yanında eğer sayılar skaler ise iki bölme işleminin sonucu da aynı değeri gösterecektir. Örneğin 3/2 ile 2\3 ifadelerinin sonuçları aynı olup 1.5 dir. Aritmetiksel İşlemlerde Öncelik Durumu:Tek bir aritmetiksel durum içinde birden fazla durum bir arada bulunabildiğine göre hangi işlemin öncelik hakkına sahip olunduğunun bilinmesi yerinde olacaktır. Aşağıda MATLAB da kullanılan işlemlerde işlemlerin öncelik listesi verilmiştir. Tablo 2.2 Öncelik İşlem 1 Parantez 2 Üs alma, soldan sağa doğru 3 Çarpma ve blme, soldan sağa doğru 4 Toplama ve Çıkarma, soldan sağa doğru Fonksiyonlar: MATLAB ın çok güçlü ve çok kapsamlı bir fonksiyon yapısı vardır. MATLAB da bazı fonksiyonlar daha önceden yerleştirilmiş bazıları ise sonradan dışarıdan yerleştirilmiş M- dosyalarından oluşan MATLAB kütüphanelerinde tanımlanmışlardır. Bunun yanında özel uygulamalar için kullanıcıların kendi fonksiyonlarını yazarak kendi kütüphanelerini oluşturması mümkündür. Kullanıcı tanımlı fonksiyonlar da diğer fonksiyonlar gibi kullanılabilirler. MATLAB da mevcut analitik fonksiyonları genel olarak aşağıdaki kategorilere ayırabiliriz. 1. Temel matematiksel fonksiyonlar 2. Özel fonksiyonlar 3. Temel matrisler ve matris işlemleri 4. Matrisleri çarpanlarına ayırma 5. Veri analizleri 6. Polinomlar 7. Diferansiyel denklem çözümleri 8. Lineer olmayan denklemler ve optimizasyon 9. Sayısal integral hesaplamaları 10. Sinyal işleme