Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Matlab Ders Notları M ATLAB ’ de P rogramlama Makine Müh. & Jeoloji Müh. 2012-13/ Bahar.

Benzer bir sunumlar


... konulu sunumlar: "Matlab Ders Notları M ATLAB ’ de P rogramlama Makine Müh. & Jeoloji Müh. 2012-13/ Bahar."— Sunum transkripti:

1 Matlab Ders Notları M ATLAB ’ de P rogramlama Makine Müh. & Jeoloji Müh / Bahar

2 Matlab Ders Notları KAYNAKLAR 1.MATLAB ve Programlama, Dr. Aslan İnan, Papatya yayınları, MATLAB, Ömer Gündoğdu, Osman Kopmaz, M. Akif Ceviz, Paradigma Akademi, MATLAB 6.5, A. Emre Çetin, Alfa Yayınları, MATLAB ile Mühendislik Sistemlerinin Analizi ve Çözümü, İbrahim Yüksel, Vipaş, Her yönü ile MATLAB, Mehmet Uzunoğlu, Ömer Çağlar Onar, Ali Kızıl, Türkmen Kitabevi, MATLAB ile Mühendislik Sistemlerinin Analizi, Uğur Arifoğlu, Alfa Yayınları, 2003.

3 MATLAB Ders Notları K onular: M ATLAB ortamının tanıtımı M ATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a)Geliştirme ortamı b)Komut penceresi c)Başlatma penceresi (launch pad) d)Workspace e)History f)Current directory

4 MATLAB Ders Notları M ATLAB, 1970' lerin sonunda, New Mexico ve Stanford Üniversiteleri tarafından geliştirilmiştir. Fortran ve C gibi gelenekselleşmiş dillerde program yazmaksızın, matrislere dayalı problemleri çözmede kullanılmak üzere bir sayısal hesaplama kütüphanesi sunmak amacıyla, MATris LABoratuvarı (MATrix LABoratory) programı olarak tasarlanmış, Fakat daha sonra, Optimization Toolbox ve Control System Toolbox gibi bazı toolbox’lar eklenerek geliştirilmiştir. Jack Little ve Steve Bangert birlikte 1984 MathWorks şirketini kurup ticari bir şirket haline getirmislerdir (Web sayfası: MATLAB bir yorumlayıcıdır (interpreter); yani sonuç, daha ziyade eltipi hesap makinelerine benzer tarzda ekranda yazılı bir metin olarak alınabilir. Neticede diğer dillerde olduğu gibi “derleme”ye (compiler) ihtiyaç yoktur; fakat programlamaya izin vermesinden dolayı da güçlü bir paket programdır. M ATLAB

5 MATLAB Ders Notları z(x,y) = x exp( - x^2 - y^2): >> [x,y] = ndgrid(-2:.2:2, -2:.2:2); >> z = x.* exp(-x.^2 - y.^2); >> mesh(z)

6 MatLab Uygulama Alanları •Algoritma geliştirme ve kod yazma, yani programlama •Matematiksel (nümerik ve sembolik) hesaplama işlemleri. •Lineer cebir, istatistik, Fourier analizi, filtreleme, optimizasyon, sayısal integrasyon vb. konularda matematik fonksiyonlar. •2D ve 3D grafiklerinin çizimi •Modelleme ve benzetim •Grafik oluşturma •Veri analizi ve kontrolü •Gerçek dünya şartlarında uygulama geliştirme •Matlab programı kodu C/C++ diline dönüştürebilir, •20. dereceden bir denklemin köklerini bulabilir, •100x100 boyutlu bir matrisin tersi alınabilir, •Bir elektrik motoru gerçek zamanda kontrol edilebilir, •Bir otobüsün süspansiyon simülasyonunu yapılabir,

7 Matlab Toolbox

8 MATLAB dan Görünüm •Gerekli pencereleri varsayılan düzende görüntülemek için: Desktop menüsünden Desktop Layout > Default seçilmelidir.

9 MATLAB dan Görünüm •Matlab: File, Edit, Debug, Window ve help menülerinden oluşmaktadır. •Matlab ortamı bir çok alt pencereden meydana gelmektedir. –Komut penceresi (Command Window) : Kullanıcı matlab da komutlarını iki şekilde yazabilir. Command Window diğeri ise Editör ortamını kullanarak. –Aktif Klasör (Current Directory): O anda aktif olarak çalışan klasör içindeki dosyalara ilişkin içeriğini görüntüleme, dosya açma, –Çalışma alanı (Workspace): Komut satırından ya da çalıstırılan bir dosya ya da fonksiyon ile hafızada olusturulan değiskenlerin adlarının, tiplerinin ve özelliklerinin görüntülendiği penceredir. Bu alana çalısma alanı denir.

10 MATLAB dan Görünüm –Geçmiş Komut listesi ( Command History) : Bu pencere yardımı ile daha önce kullanılmış olan komutlara ulaşılabilir. –Başlatma penceresi (launch pad): Matlab kısayollarının bulunduğupenceredir.Bu pencereden Matlab uygulamalarına, simulink penceresine, araç kutularına ve blok setlerine ulasılabilir.Örneğin Matlab ile ilgili yapılabilecek olan islemler hakkında bilgi sahibi olmak için bu pencereden yararlanabiliriz.Örneğin Matlab ile ilgili yapılabilenleri, demo olarak izlemek istersek; MATLAB-Demos sekmesine tıklamalıyız.Karsımıza Desktop Environment, Matrices, Numerics, Graphics, Language... gibi alt bölümler çıkar. –Yardım Penceresi (Help Window) : Komut pencersinde help yazarak yardım pencerisini yada Menüden Help seçeğine tıklayarak ulaşabilirsiniz.

11 MATLAB Ders Notları 1. Temel Bilgiler Komut Penceresi: MATLAB ile iletişim kurulan ana penceredir. MATLAB yorumlayıcısı kullanıcıdan gelecek komutları kabul etmeye hazır olduğunu gösteren “ >> ” biçiminde bir ileti görüntüler. Örneğin, 4*25+6*52+2*99 gibi basit matematiksel işlemi yapmak için >> 4*25+6*52+2*99 ifadesini yazıp Enter tuşuna basılınca, ans= 610 Komut satırında yanlışların düzeltilmesi: Klavyede yer alan ok tuşları komut satırında yapılan yanlışlıkları düzeltilmesine olanak tanır. Bunlar yukarı “↑” aşağı “↓” sol “←” sağ “ →”. Yukarı tuşu kullanılarak bir önceki satır tekrar görüntülenerek sağ ve sol tuşları ile yanlış yazılı yere kursör taşınarak düzenleme gerçekleştirilir. Sonucun Ekranda Görüntülenmesini Gizleme: bir deyim yazıp, Enter tuşuna basılınca sonuçlar ekranda otomatik olarak görüntülenir. Buna karşılık, deyimin sonuna “ ; ” ilave edilecek olursa, bu deyim ile yapılan hesaplamalar ekranda görüntülenmez.

12 MATLAB Ders Notları 2. MATLAB DEĞİŞKENLERİ VE KURALLAR Diğer programlama dillerinin pek çoğunda olduğu gibi MATLAB da matematik deyimler şart koşmakla beraber, diğer pek çok programlama dillerinden farklı olarak bu deyimler tümüyle matrisleri kapsar. Örneğin, >>x =50 yazıldığında “x” adı altında bir değişken oluşturur ve 50 değerini bu değişkene atar. Diğer bilgisayar dillerinde olduğu gibi MATLAB’ın da değişken isimleri konusunda bazı kuraları vardır. Değişkenler: Degiskenler verileri tutmak icin kullanilir. Her tanımlanan bir değisken belirli bir yer ayrılmasına neden olur. MATLAB bir değişken ile karşı karşıya geldiğinde, otomatik olarak bu değişkeni oluşturulur ve yeteri kadar bellek ayrılır. Eğer değişken daha önceden tanımlı ise MATLAB onun içeriğini değiştirir ve gerekirse yeni bellek ayırır. Deyim oluşturma gurupları: Değişkenler, rakamlar, işletmenler ve fonksiyonlardır. MATLAB deyimleri ise komut ortamında yazılan her türlü komut satırlarıdır.

13 MATLAB Ders Notları Belli Başlı Kurallar Aşağıda Olduğu Gibi Özetlenebilir. 1- Değişken isimleri küçük büyük harf kullanımına duyarlıdır. Buna göre aynı anlama gelen fakat farklı yazılan “orta”, “Orta”, “orTa” ve “ORTA” kelimeleri MATLAB için farklı değişkenlerdir. Noktalama işaretleri 3- Değişken isimleri daima bir harf ile başlamalı ve bunu herhangi bir sayıda harfler, rakamlar veya alt çizgi ”_” izleyebilir. Noktalama işaretleri değişken isminde kullanılmaz. Çünkü bunların pek çoğunun MATLAB için bir anlamı vardır. 4- Değişken adı içinde Türkçe harfler olmamalıdır. 5- Matlab ortamında tanımlı olan komut adları değişken ismi olarak kullanılamaz. Not: isvarname değişkenismi komutun sonucu 0 ise değişken ismi olarak kullanılamaz, 1 ise kullanılabilinir. 2- Değişken isimleri en fazla 31 karakter içerebilir. Bundan fazla olanlar dikkate alınmaz

14 MATLAB Ders Notları Rakamlar: MATLAB rakamlar için artı veya eksi işareti ve tercihli ondalık noktası ile birlikte alışagelmiş ondalık işaretler sistemi kullanır. Bilimsel işaretler sistemi 10 tabanına göre kuvvet belirlemek için “e” harfi kullanır. Sanal rakamlar son takı olarak “ i ” veya “ j ” harfi kullanır. 3, -100, , e10, 2.5e-5, 10i, -3.4j, 3e5i

15 MATLAB Ders Notları İşletmenler (Operatörler) : MATLAB deyimler içerisinde alışageldik aritmetik operatörler ve öncelik kuralları kullanır. İşlemSembolÖrnek Toplama, a+b Çıkarma, a-b Çarpma, a*b * 3*43*4 Bölme, a/b / 14/7 Üs alma, a b ^ 2^32^3 Parantez a*(b+c) ( ) 2*(3+5) Matematik işlemlerde öncelik hakkı: Matematik işlemlerde öncelik hakkı: Tek bir matematiksel deyim içinde birden fazla işlem bir arada bulunabildiğine göre hangi işlemin öncelik hakkına sahip olduğunun bilinmesi yerinde olacaktır. Aşağıda MATLAB da kullanılan işlemlerde, işlemlerin öncelik listesi verilmiştir.

16 MATLAB Ders Notları Öncelikİşlem Parantez 1.Parantez Üst alma, soldan sağa doğru 2.Üst alma, soldan sağa doğru Çarpma ve bölme, soldan sağa doğru 3.Çarpma ve bölme, soldan sağa doğru Toplama ve çıkarma, soldan sağa doğru 4.Toplama ve çıkarma, soldan sağa doğru Fonksiyon: MATLAB sin, abs, sqrt, ve Log gibi çok önemli fonksiyonları da içine alan çok sayıda elemansal matematik fonksiyon sağlar. Bu fonksiyonların bazıları aşağıdaki Tablo’da listelenmiştir. FonksiyonSembolÖrnek Sinüs, sin(  ) sinsin(pi) Cosinüs, cos(  ) coscos(pi) Tanjant, tan(  ) tantan(pi) Arksinüs, arcsin(  ) asinasin(0) Arkkosinüs, arccos(  ) acosacos(0) Arktanjant, arctan(  ) atanatan(1)FonksiyonSembolÖrnek Eksponensiyal, e x expexp(2) Doğal logaritma ln(x)loglog(10) 10 tabanlı logaritmalog10log10(10) Kare kök,  x sqrtsqrt(25) Mutlak değer, |x|absabs(3)

17 MATLAB Ders Notları MATLAB’ DE DEĞİŞKEN TİPLERİ Double: Skaler veya vektörlerden oluşan sayısal değişkenleri ifade eder. Char: Tek bir karakter veya karakter grubundan oluşan skaler veya dizinleri ifade eder. MATLAB’ DE DEĞİŞKEN ATAMALARI Eşitlik Eşitlik İfadeleri ile Değişken Atamaları Bu şekildeki bir değişken atamasının genel hali, değişken = değer >> değişken = değer şeklindedir. Burada "değişken", herhangi bir karakter veya karakter grubu olabilir. "değer" ise, herhangi bir matematiksel ifade, bir karakter dizisi, bir sabit, bir matris veya bunların birden fazlasının matematiksel işlemler ile oluşturulmuş kombinasyonları olabilir.

18 MATLAB Ders Notları ilk değerinin silinmesine yeni değeri Bir değişkene bir değer atadıktan sonra aynı değişkene farklı bir değer atamak, o değişkenin ilk değerinin silinmesine, söz konusu değişkenin bundan sonraki işlemlerde yeni değeri ile işlem görmesine neden olmaktadır. Örnek: >> a=5 >>b=a+2 b = 7 >>a=10 >>b=a+2 b = 12 Skaler atama X = 3 A = 5-5i B = A / 5 Vektör atama >>C=[1 3 2] C = >> C= [1;3;2] C = Matris atama >>C=[1 3; 2 1] C = >> C=[1, 3; 2, 1] C =

19 Değişkenlerin içeriklerini Göstermesi •Değişken atamalarında değişkenin değeri her zaman görüntelememiz gerekmez. Bunun için sonuna ; işareti konulur. Değişken Silme/Yok Etme clear değişkenadı (bir değişkeni) veya clear all (tümünü) >> clear x >> clear all (veya sadece clear)

20 Değişkenleri Listeme Değişkenlerin listesini görmek için Who komutu ile Değişkenlerimizin özelliklerini görmek için de whos ile

21 Değişkenleri Saklama ve Tekrar Çağırma Değişkenleri ya tek tek ASCII formatında yada tüm değişkenleri topluca ikili olarak.mat dosyar formatında saklayabiliriz. >>save dosyaadı değişken_adları –ascii >> save dosyaadı (ikiliformat) >>save diyerek dosya adı belirtmeden direk matlab.mat altında saklar. Saklanan değişkenleri başka bir oturumda geri getirmek için load komudu kullanılır >>load dosyaadı değişken_adları >>load dosyadı

22 BİR DEĞİŞKENE DIŞARIDAN BİR DEĞER ATANMASINI İSTEMEK input “ input " fonksiyonu, komut penceresinde kullanıcıdan bir değişkene bir değer girmesini isteyen bir komut görüntüler ve kullanıcının bu değeri girmesini bekler, >> x=input(' x değerini giriniz= ') x değerini giriniz= x = 10 Matlab' da Sabit değişkenler ans işleminin sonucu atar pi pi sayısını içerir bitmax matlab gösterebilecek maximum sayı intmax integer sayılardaki maximun değer inf sonsuz …... ….

23 Matematiksel yazılım Bilgisayarda yazılımı ab-c+d-6+daa*b-c+d-6+d*a b+c 3 -d/8-b 2 cb+c^3-d/8-b^2*c ??? Örnekler: Ödev: İşlemini bilgisayar dilinde kodlayınız

24 MATLAB Ders Notları ÖZEL DEĞERLER VE KALICI DEĞİŞKENLER MATLAB'ın yapısında önceden tanımlanmış, kullanılacakları zaman tekrar tanımlanmalarına gerek olmayan ve herhangi bir anda kullanılmaya hazır bazı özel değerler bulunur. Örneğin: yarıçapı 2 birim olan bir kürenin alanını >> r=2; >> alan = 4 * pi * r^2 >> alan = >> date ans = 19-Mar-2003 >> clock ans =

25 Matlab ortamında sayıların tanımlanması Numeric formatOranVirgülden sonraki Hane Short Long Short e e+0014 Long e Short g50.833Short veya short e den kısa gösterim Long g Long veya long e den kısa gösterim Hex4096aaaaaaab Bank50.83Dolar yada cent cinsinden gösterim Rational5/10

26 Örnek:

27 MATLAB Ders Notları BİR DEĞİŞKENE DIŞARIDAN BİR DEĞER ATANMASINI İSTEMEK input “ input " fonksiyonu, komut penceresinde kullanıcıdan bir değişkene bir değer girmesini isteyen bir komut görüntüler ve kullanıcının bu değeri girmesini bekler, X=input('Bir değer giriniz= '); >> x=input(' x değerini giriniz= ') x değerini giriniz= 10 x = 10

Benzer bir sunumlar


Google Reklamları