Bilgisayar Programlama MATLAB

Benzer belgeler
Bilgisayar Programlama MATLAB

MATLAB de. Programlama. akifceviz/matlab/ Doç. Dr. M. Akif CEVĠZ. Matlab Ders Notları

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

MATLAB MATLAB MAT LAB MAT LAB MATLAB

BİLGİSAYAR PROGRAMLAMA MATLAB

BİLGİSAYAR PROGRAMLAMA DERSİ

MatLab. Mustafa Coşar

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

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

MATLAB ile ANALİZ (MIA)

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

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

MatLab. Mustafa Coşar

Fortran komut satırı toplam 80 kolon ve 5 bölgeden oluģur. Komut satırının yapısı aģağıdaki gibidir:

Bilgisayar Programlama

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

Fen ve Mühendislik Uygulamaları ile MATLAB

Fen ve Mühendislik Uygulamaları ile MATLAB

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

Burada dikkat edilmesi gereken nokta, bilinmeyen veya değişkeninizi yazarken diğer bilinmeyenler ile arasına boşluk koymanız gerektiğidir.

BM202 SAYISAL ÇÖZÜMLEME

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ

2. HAFTA DERS KONULARI

Bölüm: Matlab e Giriş.

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

MATLABA GİRİŞ 1. MATLAB. Komut penceresi. MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir.

Program akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n

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

MATEMATİK PROGRAMLAMA

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

Matlab da Dizi ve Matrisler. Mustafa Coşar

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II


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

2.3. MATRİSLER Matris Tanımlama

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

I=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] % 4x4 lük birim matris

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

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

BÖLÜM 1b: C++ PROGRAMLAMANIN YAPISI. C++, hard diskte TC, BIN, INCLUDE, LIB gibi alt dizinlere yüklenir.

pfrintf fonksiyonu: Çıkışın formatlı olması ve bunun bir dosyaya yazdırılması durumlarında kullanılır. fprintf fonksiyonunun genel yazım biçimi,

Bilgisayar Programlama MATLAB

MATLAB/Değişkene Değer Atamak

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

Temel Giriş/Çıkış Fonksiyonları (Devam) Örnek :

Program AkıĢ Kontrol Yapıları

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

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

Imports ifadesi, program satırlarının en üstüne (Public Class satırından önce) yazılmalıdır. Aksi halde hata mesajı ile karşılaşılır.

Algoritma ve Programlamaya Giriş

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

PROGRAMINIZI ANĠ SONLANDIRMAK ĠSTEDĠĞĠNĠZ YER BĠR DÖNGÜNÜN ĠÇĠ ĠSE NE OLUR?????????

3. ARİTMETİK FONKSİYONLAR ~ (~ tamsayı)

KONTROL SİSTEMLERİ-1 LABORATUVARI DENEY -1. Öğr. Gör. Güzin ÖZMEN Arş. Gör. Fehmi SEVİLMİŞ

Algoritma ve Akış Diyagramları

BMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1

MATLAB. Fen ve Mühendislik Uygulamaları ile. Doç. Dr. M. Akif CEVİZ. MATLAB de Dizi Kavramı

NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü. Devre Tasarımı Ders Notları MATLAB. Arş. Gör. Salim ÇINAR. salim çınar

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

Özyineleme (Recursion)

PROGRAMLAMA ALGORĠTMA

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

Diziler İndisli Değişkenler

FORMÜLLER VE FONKSİYONLAR

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

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek

Giriş. ENF102 Jeoloji

Dr. Fatih AY Tel:

1- Temel MATLAB Fonksiyonları ve Programlama

Pascal Programlama Dili (2. hafta)

Programlama Dilleri 1. Ders 4: Diziler

PASCAL PROGRAMLAMA DİLİ YAPISI

M-Dosyaları. Editor: Kodların yazıldığı kısımdır. Uzantısı.m olan dosyalarla çalışır.

Fonksiyonlar (Altprogram)

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 3. Bölüm Veri Tipleri ve Değişkenler

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur

BMT 101 Algoritma ve Programlama I 6. Hafta. Yük. Müh. Köksal Gündoğdu 1

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

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

Bilgisayar Programlama MATLAB

EXCEL 2007 ELEKTRONİK ÇİZELGE

MATLAB Kullanımı. [ sqrt(-6)] a = [ ; ; 1 sqrt(-6)] a=[] clear a. a=[ 3, , 9, 10 ] a= [a ] a=[ 1 2 a ]

Bilgisayar Programlama MATLAB

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

Karakter Değişkenlere İlişkin Komutlar

Nesne Yönelimli Programlama

MATLAB ile ANALİZ (MIA)

Programlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.

Matematikte Bilgisayar Uygulamaları. Hafta 2 Dr. Murat GEZER

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

Bilgisayar Programlama MATLAB

Excel de çalışma alanı satır ve sütunlardan oluşur. Satırları rakamlar, sütunları ise harfler temsil eder. Excel çalışma sayfası üzerinde toplam

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 8

Toplama işlemi için bir ikili operatör olan artı işareti aynı zamanda tekli operatör olarak da kullanılabilir.

BLG 1306 Temel Bilgisayar Programlama

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Transkript:

Bilgisayar Programlama MATLAB Doç. Dr. Ġrfan KAYMAZ Matlab Ders Notları

Konular: MATLAB 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

MATLAB MATLAB, bilim adamları ve mühendislere, 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ıģtır. Fakat daha sonra, Optimization Toolbox ve Control System Toolbox gibi bazı toolbox lar eklenerek geliģtirilmiģtir. MATLAB bir yorumlayıcıdır (interpreter); yani sonuç, daha ziyade el tipi hesap makinelerine benzer tarzda ekranda yazılı bir metin olarak alınabilir. Neticede diğer dillerde olduğu gibi derleme ye (compilation) ihtiyaç yoktur; fakat programlamaya izin vermesinden dolayı da güçlü bir paket programdır.

z(x,y) = x exp( - x^2 - y^2): >> [x,y] = meshgrid(-2:.2:2, -2:.2:2); >> z = x.* exp(-x.^2 - y.^2); >> mesh(z) 0.5 0-0.5 30 20 10 0 0 5 10 15 20 25

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.

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. 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. DeğiĢkenler: Deyimler içerisinde sayısal değerlerin yerini alan ifadelerdir. 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. Ö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.

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. 2- DeğiĢken isimleri en fazla 31 karakter içerebilir. Bundan fazla olanlar dikkate alınmaz 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. 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, 0.0005, 9.53564 1.456e10, 2.5e-5, 10i, -3.4j, 3e5i

ĠĢletmenler: MATLAB deyimler içerisinde alıģageldik aritmetik iģletmenler ve öncelik kuralları kullanır. İşlem Sembol Örnek Toplama, a+b + 2+3 Çıkarma, a-b - 5-2 Çarpma, a*b * 3*4 Bölme, a/b / 14/7 Üs alma, a b ^ 2^3 Parantez a*(b+c) ( ) 2*(3+5) 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.

Öncelik ĠĢlem 1. Parantez 2. Üst alma, soldan sağa doğru 3. Çarpma ve bölme, 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. Fonksiyon Sembol Örnek Sinüs, sin( ) sin sin(pi) Cosinüs, cos( ) cos cos(pi) Tanjant, tan( ) tan tan(pi) Arksinüs, arcsin( ) asin asin(0) Arkkosinüs, arccos( ) acos acos(0) Arktanjant, arctan( ) atan atan(1) Fonksiyon Sembol Örnek Eksponensiyal, e x exp exp(2) Tabii logaritme ln(x) log log(10) 10 tabanlı logaritma log10 log10(10) Kare kök, x sqrt sqrt(25) Mutlak değer, x abs abs(3)

DEĞİŞKENLER VE DİZİLER MATLAB de temel yapı birimi dizilerdir. Dizi, satır veya sütunlar kullanılarak yapılandırılmıģ, belli sayıda değerler içeren bir yapıdır. Dizileri, vektörler matrisler Vektörler, sadece bir sütun veya sadece bir satırdan oluģan dizilerdir. Matrisler ise birden fazla satır ve sütun sayısına sahiptirler. Bir dizinin elamanına, dizinin adını belirttikten sonra parantez içinde o elemana ait satır ve sütun numaralarını yazarak (yani elemanın dizi içindeki konumunu belirterek) ulaģabilmek mümkündür. A (1, 2) ifadesi, A dizisinin 1. satırının 2. elemanına karģılık gelir. MATLAB'da skalerler de, bir satır ve bir sütundan oluģan dizilermiģ gibi iģlem görürler.

MATLAB DE DEĞĠġKEN TĠPLERĠ Double: Char: Skaler veya vektörlerden oluģan sayısal değiģkenleri ifade eder. Tek bir karakter veya karakter grubundan oluģan skaler veya dizinleri ifade eder. MATLAB DE DĠZĠ GĠRĠġLERĠ VE DEĞĠġKEN ATAMALARI 1. Eşitlik Ġfadeleri ile DeğiĢken Atamaları Bu Ģekildeki bir değiģken atamasının genel hali, >> 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.

Örnek: Skaler atama X = 3 A = 5-5i B = A / 5 Vektör atama >>C=[1 3 2] C = 1 3 2 >> C= [1;3;2] C = 1 3 2 Matris atama >>C=[1 3; 2 1] C = 1 3 2 1 >> C=[1, 3; 2, 1] C = 1 3 2 1 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

2. Artış Miktarı Düzenli Olan Dizilerin DeğiĢkenlere Atanması MATLAB'da, satır elemanları düzenli artıģ miktarına sahip olan dizilerin elemanları bir değiģkene özel bir yöntemle atanabilir. DeğiĢken = ilk_değer : artıģ_miktarı : son_değer >> X=1:3:12 X = 1 4 7 10 linspace Fonksiyonu ilk değeri ve son değeri verilen bir diziyi, verilen eleman sayısı ile lineer olarak artırarak oluģturur DeğiĢken = linspace(ilk_deger, son_deger, eleman_sayısı) >>A=linspace(0,10,6) A = 0 2 4 6 8 10

3. MATLAB'ın Hazır Fonksiyon Özelliklerini Kullanarak OluĢturulan Dizilerin DeğiĢkenlere Atanması zeros (n) zeros (n,m) ones (n) ones (n,m) eye (n) eye (n, m) Length(x) size (x) n x n boyutunda, sıfırlarda oluģan matris n X m boyutunda, 0 lardan oluģan matris nx n boyutunda, 1'lerden oluģan matris nx m boyutunda, 1'lerden oluģan matris nx n boyutunda birim matris nx m boyutunda birim matris "x" dizisinin sütun sayısını verir "x" dizisinin satır ve sütun sayısını verir >> A=zeros(2) A = 0 0 0 0 >>B= ones(2,3) B = 1 1 1 1 1 1 >>C= eye(3,3) C = 1 0 0 0 1 0 0 0 1

ÖZEL DEĞERLER VE KALICI DEĞĠġKENLER MATLAB'ın yapısında önceden tanımlanmıģ, kullanılacakları zaman takrar 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 = 50.2655 >> date ans = 19-Mar-2003 >> clock ans = 2003 3 19 18 47 7.828

BĠR DEĞĠġKENE DIŞARIDAN BĠR DEĞER ATANMASINI ĠSTEMEK 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

Uygulama Sorusu: DıĢardan girilen 3 sayının ortalamasını bulan bir MATLAB programı yazınız. MATLAB Ders Notlari