• Sonuç bulunamadı

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

N/A
N/A
Protected

Academic year: 2022

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

Copied!
16
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

MATLAB’de MATLAB de

Bilgisayar Bilgisayar

Programlama Programlama

Dersin Sorumlusu:

Yrd. Doç. Dr. Birol SOYSAL

S l H l

Sunumları Hazırlayan:

Doç. Dr. Bülent ÇAKMAK

(2)

KAYNAKLAR

1- MATLAB, Ömer Gündoğdu, Osman Kopmaz, M. Akif Ceviz, Paradigma Akademi, 2003.

2- MATLAB ve Programlama, Dr. Aslan İnan, Papatya yayınları, 2004.

3 MATLAB 6 5 A E Ç ti Alf Y l 2003 3- MATLAB 6.5, A. Emre Çetin, Alfa Yayınları, 2003.

4- MATLAB ile Mühendislik Sistemlerinin Analizi ve Çözümü, İbrahim Yüksel, Nobel, 3. Baskı. ,

5- Her yönü ile MATLAB, Mehmet Uzunoğlu, Ömer Çağlar Onar, Ali Kızıl, Türkmen Kitabevi, 2003.

6- MATLAB ile Mühendislik Sistemlerinin Analizi, Uğur Arifoğlu, Alfa Yayınları, 2003.

Erzurum’da bulunabilecek kaynaklar Erzurum da bulunabilecek kaynaklar

(3)

Dersin İçeriği Dersin İçeriği

1. HAFTA

MATLAB programlama ortamının tanıtımı, Bilgi türleri, Sabitler, Değişkenler Değişken türlerinin programda tanıtılması, Aritmetik işlemler, Aktarma d i l i

deyimleri,

2. HAFTA Giriş- Çıkış deyimleri 3. HAFTA Kontrol deyimleri

4. HAFTA Kontrol deyimleri (devam)

5. HAFTA Çevrim yapıları (yinelemeli yapılar)

6. HAFTA Çevrim yapıları (yinelemeli yapılar)-devam 6. HAFTA Çevrim yapıları (yinelemeli yapılar) devam 7. HAFTA Dizi kavramı

8. HAFTA İki boyutlu diziler

9 HAFTA Örnek problemler ve çözümleri 9. HAFTA Örnek problemler ve çözümleri 10. HAFTA Fonksiyonlar

11. HAFTA Dosya yönetimi G f

12. HAFTA Grafik çizme

13. HAFTA Hazır fonksiyonlar ve kullanımı

(4)

K

K

onular:onular:

M M M

M

ATLAB ortamının tanıtımıATLAB ortamının tanıtımı Matlab

Matlab sistemi (ara yüzey tanıtımı)sistemi (ara yüzey tanıtımı) a)

a) Geliştirme ortamıGeliştirme ortamı a)

a) Geliştirme ortamıGeliştirme ortamı b)

b) Komut penceresiKomut penceresi c)

c) Başlatma penceresi (Başlatma penceresi (launchlaunch padpad)) d)

d) WorkspaceWorkspace e)

e) HistoryHistory f)

f) CurrentCurrent directorydirectory

(5)

M

M

ATLABATLAB

M

ATLAB, 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ısaly p ç y hesaplama kütüphanesi sunmak amacıyla, MATris LABoratuvarı (MATrix LABoratory) programı olarak tasarlanmıştır. Fakat daha sonra, Optimization Toolbox, Control Systemy Toolbox, Communications Toolbox gibi bazı toolbox’lar eklenerek geliştirilmiştir.

MATLAB bir yorumlayıcıdır (interpreter); yani sonuç daha ziyade el 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

( p ) y ç y ; p g y

dolayı da güçlü bir paket programdır.

(6)

>> t = 0:pi/50:2*pi;

>> [x,y,z]=cylinder(4*cos(t));

>> mesh(x,y,z)

0.8 1

0.4 0.6

40 0.2

4

-2

0

2

4

-4 -2

0 2

4 -4

(7)

1. Temel Bilgiler

Komut Penceresi: MATLAB ile iletişim kurulan ana penceredir 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 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

K t t d l l dü ltil i Kl d l k t l

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ğ e sol t şlar ile anl ş a l ere ö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, Entery y p 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.

(8)

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, operatörler ve fonksiyonlardır. MATLAB deyimleri ise komut ortamında yazılan her türlü

k l d

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 komut satırlarıdır.

ğ ş ş ş y g ğ

değişken 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

değişkene atar.

Diğer bilgisayar dillerinde olduğu gibi MATLAB’ın da değişken isimleri konusunda bazı kuraları vardır

konusunda bazı kuraları vardır.

(9)

Belli Başlı Kurallar Aşağıda Olduğu Gibi Özetlenebilir.

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

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. NoktalamaNoktalama işaretleriişaretleri değişken isminde kullanılmaz. Çünkü bunların pek çoğunun MATLAB için ayrı bir isminde kullanılmaz. Çünkü bunların pek çoğunun MATLAB için ayrı bir anlamı vardır.

4- Değişken adlarında Türkçe karakter kullanılmamalıdı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.

K k l k l t k l k “ i ” “ j ” h fi k ll

Karmaşık sayılar 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

(10)

MATLAB’ DE DEĞİŞKEN ATAMALARI MATLAB’ DE DEĞİŞKEN ATAMALARI Eşitlik

Eşitlik İfadeleri ile Değişken Atamaları 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ğerdeğişken = değer

>> değişken = değerdeğ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

X = 3

Örnek:

ğ , g , , ,

matris veya bunların birden fazlasının matematiksel işlemler ile oluşturulmuş kombinasyonları olabilir.

X = 3 A = 5-5i B = A / 5

Örnek:

Bir değişkene bir değer atadıktan sonra aynı değişkene farklı bir değer atamak, o değişkenin ilkilk değerinindeğerinin silinmesinesilinmesine, söz konusu değişkenin bundan sonraki işlemlerdeş yeniyeni değeriyy değeriğğ ile işlem görmesine neden olmaktadır.ş g

Örnek: >> a=5

>>b=a+2

>>a=10

>>b=a+2 b =

7 b =

12

(11)

Operatörler: MATLAB deyimler içerisinde alışageldik aritmetik operatörler ve öncelik kuralları kullanır

operatörler ve öncelik kuralları kullanır.

İşlem

İşlem SembolSembol ÖrnekÖrnek

Toplama, a+b + 2+3

Çıkarma, a-b - 5-2

Çarpma, a*b * 3*4

Bölme, a/b / 14/7

Ü

Üs alma, ab ^ 2^3

Parantez a*(b+c) ( ) 2*(3+5) Matematik

Matematik işlemlerdeişlemlerde önceliköncelik hakkı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 hakkına sahip olduğunun bilinmesi yerinde olacaktır. Aşağıda MATLAB da kullanılan işlemlerde, işlemlerin öncelik listesi verilmiştir.

(12)

Öncelik İşlem

1 PP

1. ParantezParantez

2. Üst alma, soldan sağa doğruÜst alma, soldan sağa doğru

3. Çarpma ve bölme, soldan sağa doğruÇarpma ve bölme, soldan sağa doğru

4 T lT l kk ldld ğ d ğğ d ğ

4. Toplama ve çıkarma, soldan sağa doğruToplama 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 içine alan çok sayıda elemansal matematik fonksiyon sağlar. Bu fonksiyonların bazıları aşağıdaki Tablo’da listelenmiştir.

F k i S b l Ö k F k iF k i SS b lb l ÖÖ kk Fonksiyon Sembol Örnek

Sinüs, sin(θ) sin sin(pi)sin(pi) Cosinüs, cos(θ) cos cos(pi)cos(pi)

Fonksiyon

Fonksiyon SembolSembol ÖrnekÖrnek Eksponansiyel, ex exp exp(2) Doğal logaritma ln(x) log log(10) Tanjant, tan(θ) tan tan(pi)tan(pi)

Arksinüs, arcsin(θ) asin asin(0)asin(0)

A kk i ü (θ) (0)(0)

10 tabanlı logaritma log10 log10(10) Kare kök, √x sqrt sqrt(25) Arkkosinüs, arccos(θ) acos acos(0)acos(0)

Arktanjant, arctan(θ) atan atan(1)atan(1)

Mutlak değer, |x| abs abs(3)

(13)

Örnekler:

Matematiksel yazılım

Matematiksel yazılım Bilgisayarda yazılımıBilgisayarda yazılımı

ab-c+d-6+da a*b-c+d-6+d*a

b+c3-d/8-b2c b+c^3-d/8-b^2*c

ac b

bd ab b c

a

4 2

2 2

3

+ −

+ a/b+c(3/2)−b*d2+(2*a*b)/(b2−4*a*c)

???

ac b

b 4

f d e

f c

a (b 2 ). 3 3 + −

+ +

a 3

Ödev: a c

+

4

a a ac a

b a

c

a a b

x ( ) 2

1

4 3

3

5 3

4 2

− + +

− +

= −

a cd a

b +

5 3

İşlemini MATLAB dilinde kodlayınız

(14)

ÖZEL DEĞERLER VE KALICI DEĞİŞKENLER Ö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.

Ö ği Örneğin:

yarıçapı 2 birim olan bir kürenin alanını

>> r=2;

>> alan = 4 * pi * r^2

>> alan = 4 * pi * r^2

>> alan =

50 2655 50.2655

(15)

BİR DEĞİŞKENE

BİR DEĞİŞKENE DIŞARIDANDIŞARIDAN BİR DEĞER ATANMASINI İSTEMEKBİR DEĞER ATANMASINI İSTEMEK

inputinputinputinput " fonksiyonu, komut penceresinde kullanıcıdan bir değişkene birfonksiyonu, 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 i t('Bi d ğ i i i ') X=input('Bir değer giriniz= ');

>> x=input(' x input(xx değerini giriniz= ')değerini giriniz )

x değerini giriniz= 10

x = 10 10

(16)

Uygulama Sorusu:

Dışarıdan girilen 3 sayının ortalamasını bulan bir MATLAB programı yazınız.

Referanslar

Benzer Belgeler

a)Açık ihale usulü veya belli istekliler arasında ihale usulü ile yapılan ihale sonucunda teklif çıkmaması. b)İhalenin, araştırma ve geliştirme sürecine ihtiyaç gösteren

Yazılı sınavda başarılı sayılabilmek için sınav konularının her birinden 100 tam puan üzerinden 60’dan az olmamak üzere ortalama 70 puan almak gerekir.

INSA471 Betonarme Yapıların Tasarımı INSA211 Statik. INSA222 Cisimlerin

Adı geçen öğrencinin 30/11/2015 tarihinde saat 10.00’da yapılan doktora yeterlilik sınavı 1’den BAŞARILI olduğu yeterlilik sınav tutanağından anlaşılmış

Maddesi gereğince, 05 Ocak 2016 tarihinde yapılacak olan tez savunmasında asil jüri üyesi olarak katılmak üzere Dumlupınar Üniversitesi İktisadi Ve İdari

Enstitümüz İktisat Anabilim Dalı yüksek lisans öğrencisi Ferhat ÖZBAY’ın tez savunma sınavı ile Anabilim Dalı Başkanlığı’nın 28.12.2015 tarih ve 209 sayılı

Maddesi gereğince, 25 Aralık 2015 tarihinde yapılacak olan tez savunmasında asil jüri üyesi olarak katılmak üzere Mehmet Akif Ersoy Üniversitesi İktisadi ve İdari

Karmaşık yapıda ve farklı uzunluktaki komutlara sahip olan CISC mimarisi, birden fazla işlem ile ilgili emirleri bir komut içerisine yerleştirmesi nedeni ile komut sayısında