MATLAB Kılavuzu PDF indir
şimdi satın al
Bu eser, temel bilimler ve mühendislikte güçlü bir yazılım desteği sunan MATLAB’i anlatmaktadır; ayrıca MATLAB’in hesaplama, çözümleme, görsellik ve algoritma geliştirme araçları programlama, grafik, matematik ve mühendislik uygulamaları açısından çeşitli örneklerle öğretilmektedir. Eser; her temel bilimci (matematik, fizik, kimya...), mühendis (elektronik, bilgisayar, inşaat, endüstri, makina...), mimar veya sosyal bilimci için önemli bir kaynak niteliğindedir.
MATLAB, farklı birçok uygulamanın olduğu bir yazılım paketidir; istatistiksel ve matematiksel hesaplamalar, optimizasyon, finans, yapay sinir ağları, bulanık (fuzzy) mantık, kontrol, görüntü ve işaret işleme gibi birçok alanda kullanılabilir. "Toolbox"ları ve "blockset"leriyle eğitim ve araştırmaya yönelik gereksinimleri karşılayan programlama ortamı sayesinde kullanıcıların her türlü isteklerine özgü uygulamalar geliştirilmesini sağlar.
Türkiye'nin İnternet kitapçısı --->
www.tdk.com.tr
şimdi
satın al
Önsöz.
MATLAB, sayısal ve sembolik hesaplamalar, veri çözümlemesi, gerçek ortamda test ve ölçüm yapabilme, çok gelişmiş çizim işlemleri, algoritma geliştirme, ileri seviye programlama, C/C++ ile tümleşik çalışabilmesi, mühendislik ve bilimsel uygulamaları ile tüm dünyada bir çok alanda yaygın olarak kullanılan yazılımdır.
Bu kitapta kullanılan bazı örnek ve uygulamalarda
www.mathworks.com sitesinden yararlanılmıştır. Zaten Matlab yazılım ailesinin en güzel yanı Web sitesinin çok zengin yardımcı kaynaklara sahip olması ve bunları ücretsiz sunmasıdır.
Matlab yazılımı, kullanıcıya çok kolay ve etkin uygulama geliştirme olanağı verir. Özellikle Toolbox adı verilen ve hemen hemen birçok matematiksel ve mühendislik alanını kapsayan alt modülleri ile ilgili her konuda kolayca ve pratik bir şekilde uygulamalar yapılabilir. Gün geçtikçe gelişen Simulink ile gerçek zamanlı uygulamaların (iletişim, işaret ve görüntü işleme, mekanik ve elektriksel sistemler vb) benzetimini gerçekleştirmeyi olanaklı hale getirmiştir.
MATLAB, ülkemizde de başta üniversitelerimiz olmak üzere özel sektörde de kullanılmaya başlanmıştır. Matlab gerek istatistik ve matematik öğrencilerine gerekse finans ve mühendislik alanlarındaki öğrencilere öğretim yaşamlarında ve sonrası iş yaşamlarında bilgisayarı kullanabilme ortamı sunmaktadır. Birçok üniversitede sayısal hesaplamaya dayanan derslerin uygulamaları Matlab ile kolayca yapılmaktadır. Her geçen gün MATLAB’in birçok derste de yardımcı araç olarak kullanılacağına inanıyorum. -
Doç. Dr. Aslan İNAN
İÇİNDEKİLER
ÖNSÖZ
Bölüm
1. MATLAB Giriş
15
1.1.
MATLAB’in Tarihi 16
1.2.
MATLAB’in Genel Yapısı 17
Bölüm 2.
MATLAB Temelleri 21
2.1.
MATLAB’ı Açmak
ve Kapatmak 21
2.2.
MATLAB Ekranı
22
2.2.1.
Komut Penceresi (Command Window) 24
2.2.2.
Geçerli Dizin / Aktif Klasör Penceresi (Current Folder) 28
2.2.3.
Çalışma Penceresi (Workspace Window) 29
2.2.4.
Komut Geçmişi Penceresi 31
2.3.
MATLAB’de Yardım Alma Yöntemleri 32
2.4.
Geçerli Klasörü Değiştirme 35
2.5.
Komut Kullanımı 36
2.6.
Komut Satırında Klavye Kısayolları 37
2.7.
İfadeler
37
2.8. Bilimde Sayı kavramı
38
2.9.
Sayılar 39
2.9.1. Sayı Çıkış Formatı
40
2.9.2. Sayı Formatını Varsayılan Yapmak
43
2.10. Operatörler
44
2.10.1 Temel Aritmetik İşlemler
45
2.10.2 Aritmetik İşlem Uygulama Örnekleri
49
2.11. Değişkenler
51
2.11.1. Değişken Atama İşlemleri 52
2.11.2. Değişkenleri Geri Çağırma ve Değiştirme 55
2.11.3. Değişkenleri Listeleme 55
2.11.4.
MATLAB’de Veri Türleri
57
2.11.5. Özel
Değişkenler ve Sabitler 59
2.11.6. Değişken Değerini Ekranda Görüntülememe 61
2.11.7. Birden Fazla Değişkeni Tek Satırda Kullanma 62
2.11.8. Tek Satıra Sığmayan Uzun İfade Kullanımı 63
2.11.9. Değişken Silme 63
2.11.10. Komut Penceresini Temizleme 65
2.11.11. Değişkenleri Kaydetme ve Tekrar Çağırma 65
2.11.12. Oturum Kaydetme 66
2.11.13. Değişken Kullanımı Uygulama Örnekleri 67
2.12. Fonksiyonlar
68
2.12.1. Trigonometrik Fonksiyon İşlemleri 70
2.12.1.1 Trigonometrik Fonksiyonlar Uygulama Örnekleri 72
2.12.2. Logaritmik ve Üstel Fonksiyon İşlemleri 72
2.12.2.1 Logaritmik ve Üstel Fonksiyon Uygulama Örnekleri 73
2.12.3. Kesir Yuvarlatma İşlemleri 76
2.12.4. Kalan Bulma İşlemleri 76
2.12.5. Diğer Bazı Matematiksel İşlemler 77
2.13.
Çalışma Alanını Saklama/Yazdırma İşlemleri 78
2.14. Temel Matlab Kullanımı Uygulama Örnekleri
80
2.15.
Özet 85
2.16.
Alıştırma Soruları 85
Bölüm
3. Diziler
87
3.1. Skaler
(Tekil) İşlemler 87
3.2. Vektör İşlemleri
88
3.2.1. Vektör
Oluşturma 88
3.2.1.1. Köşeli
Parantez Kullanarak Vektör Oluşturma 88
3.2.1.2.
Uygulama Örnekleri 92
3.2.2. Eşit Aralıklı
Elemanlar Kullanarak Vektör Oluşturma 93
3.2.2.1. :
Operatörü 93
3.2.2.2.
Uygulama Örnekleri 93
3.2.2.3.
linspace ve logspace Fonksiyonları 94
3.2.3.
Utility
Fonksiyonlarla Üretilen Vektörler 96
3.2.3.1.
Rastgele Değer Üreten Fonksiyonlar 96
3.2.3.2. zeros
ve ones Fonksiyonları 99
3.3. Vektör İşlemleri
99
3.3.1.
Vektörlerde Temel İşlem Örnekleri 100
3.3.2.
Vektörlerde Noktalı İşlemler 102
3.4. Vektör
Bilgilerini Elde Etmek 104
3.5. Vektörlere
Fonksiyonları Uygulamak 105
3.6. Vektör İşlemleri
Genel Özellikleri 108
3.7. Matrisler
111
3.7.1. Matris
Oluşturma 111
3.7.1.1. Köşeli
Parantez Kullanarak Matris Oluşturma 111
3.7.1.2.
Utility
Fonksiyonlar Kullanarak Matris Oluşturma 113
3.7.1.3. Özel
Matrisler Oluşturma 116
3.7.1.4. Vektörleri
Kullanarak Matrisler Oluşturma 118
3.8. Matris İşlemleri
119
3.8.1. Matris
ve Skaler İşlemler 121
3.8.2. Matris
ve Vektör İşlemleri 122
3.8.3. Matris
ve Üs Alma İşlemleri 123
3.8.4. Matris
Matris İşlemleri 124
3.9. Matris Bilgi
Alma Fonksiyonları 126
3.10. Matris
İndeksleme ve Kolon (:) Notasyonu 130
3.10.1. Matris
Elemanlarını Değiştirme 132
3.10.2. Matris
Elemanlarını Silmek 132
3.10.3. Matrise Yeni
Elemanlar Ekleme 134
3.11. Matrislere
Fonksiyonları Uygulamak 135
3.12. Matrisleri
Saklama ve Yükleme 137
3.13. Genel Uygulama
Örnekleri 137
3.14. Özet
142
3.15. Alıştırma
Sorular 142
Bölüm 4.
Temel Programlamaya Bir Bakış 145
4.1.
Programlama Dilleri 145
4.2.
Derleyiciler ve Yorumlayıcılar 146
4.3.
Problem Çözme ve Programlama 146
4.4.
Algoritma Kurma 147
4.5.
Akış Şemaları 149
4.6.
Kaba-Kod 151
4.7.
Özet 151
4.8.
Alıştırma Soruları 152
Bölüm
5. Matlab’de Programlama
153
5.1.
Komut Satırında Programlama 153
5.2.
M-Dosyaları ile Programlama 153
5.2.1. M-Dosyaları’nın Oluşturulması 154
5.3.
Düz Yazı (Script) M-Dosyaları 155
5.3.1.
input
Fonksiyonu 162
5.3.2.
disp
Fonksiyonu 164
5.3.3. Düzyazı M-Dosyası’nda Bazı Önemli Noktalar 167
5.3.4. Düzyazı M-Dosyası Örnekleri 168
5.4.
Fonksiyon M-Dosyaları 172
5.4.1. Fonksiyon M-Dosyası’nda Bazı Önemli Noktalar 174
5.4.2. Fonksiyon M-Dosyası Örnekleri 177
5.5.
Düzyazı M-Dosya İçinde Düzyazı M-Dosya Kullanımı
179
5.6.
Düzyazı M-Dosya İçinde Fonksiyon M-Dosya Kullanımı
181
5.7.
Fonksiyon M-Dosya İçinde Fonksiyon M-Dosya Kullanımı
181
5.8.
M-Dosyaları’nda Hata Bildirimi 181
5.9.
M-Dosyaları’nda Değişken Kullanımı 182
5.9.1. Yerel Değişkenler 182
5.9.2. Genel Değişkenler 182
5.9.3. Kalıcı Değişkenler 185
5.10.
M-Dosyaları’nın Yönetimi 186
5.10.1. Matlab’de Tanımlı Dosya Türleri 186
5.10.2. M-Dosyaları’nı Listeleme 186
5.10.3. M-Dosyaları’nı Görüntüleme ve Düzenleme 188
5.10.4. Birden Çok M-Dosyası ile Çalışma 190
5.10.5. M-Dosyaları’nı Silme 191
5.10.6. Varsayılan Çalışma Klasörü 192
5.10.7. M-Dosyaları’nı Farklı Klasörlerden Çağırma 193
5.11.
Operatörler 193
5.11.1. Operatör Önceliği 194
5.11.2. Aritmetik Operatörler 194
5.11.3. İlişkisel Operatörler 194
5.11.4. Mantıksal Operatörler 197
5.11.5. Kısa-Devre Operatörleri 199
5.12.
Mantıksal Fonksiyonlar 200
5.12.1.
find
(bul) Fonksiyonu 201
5.13.
Koşul Bildirimleri 203
5.13.1.
if
Deyimi 203
5.13.2.
else
Deyimi 205
5.13.3.
elseif
Deyimi 206
5.13.4. İçiçe
if
Yapısı 210
5.13.5.
if
ile İlgili Uygulama Örnekleri 212
5.14.
Döngüler 217
5.14.1.
for
Döngü Deyimi 217
5.14.1.1.
for
Döngülerinde
disp
Fonksiyonu 220
5.14.1.2. İçiçe
for
Deyimi Kullanımı
221
5.14.1.3.
for
Örnekleri
223
5.14.2.
while
Döngü Deyimi 234
5.14.2.1.
while
Örnekleri
236
5.14.3.
switch-case
Yapısı 241
5.14.3.1.
switch-case
Örnekleri
242
5.14.4.
continue,
break
Yapısı 244
5.14.5.
try
...
catch
Yapısı 245
5.14.6.
return
Fonksiyonu 246
5.14.7. Duraksama Noktası (breakpoint)
Koyma 248
5.15.
M-Dosyaları’nda Hata Gösterimi 250
5.15.1.
disp
Fonksiyonu 250
5.15.2.
error
Fonksiyonu 250
5.15.3.
warning
Fonksiyonu 251
5.15.4.
nargin
ve
nargout
Fonksiyonları 251
5.15.5.
varargin
ve
varargout
Fonksiyonları
253
5.16.
Alt Fonksiyonlar 255
5.17.
Özel Fonksiyonlar 257
5.18.
Fonksiyon Fonksiyonları 258
5.19.
Sözce (String) / Karakter Dizisi İşlemleri 259
5.19.1. Karakter Dizisi/Sözce Oluşturma ve Dönüşümü 261
5.19.2. Çok Boyutlu Karakter Katar Gösterimleri 264
5.19.3. Karakter Dizilerinin Karşılaştırılması 266
5.19.4. Bir Karakter Dizisi İçinde Karakter Sınıflama 268
5.19.5. Büyük-Küçük Harf Dönüşümleri 268
5.19.6. Sayı-Karakter Dönüşümü 269
5.19.7. Karakter-Sayı Dönüşümleri 270
5.19.7.1.
str2num
Fonksiyonu
270
5.19.7.2.
eval
Fonksiyonu
271
5.19.7.3.
sscanf
Fonksiyonu
273
5.20. Karakter Dizisinin
input
ile Kullanılması 274
5.21.
Program Çıkışı ve Sonuç Gösterme İşlemleri 275
5.21.1.
format
Fonksiyonu 275
5.21.2.
disp
Fonksiyonu 275
5.21.3.
fprintf
Fonksiyonu 277
5.21.4.
sprintf
Fonksiyonu 283
5.21.5.
disp,
fprintf,
sprintf
Karşılaştırılması 284
5.21.6. Program Çıkış Formatı Örnekleri 286
5.22.
MATLAB’de Veri Türleri 291
5.23.
Giriş/Çıkış Fonksiyonları 295
5.23.1.
textread
Fonksiyonu 295
5.23.2.
fopen
Fonksiyonu 296
5.23.3.
fclose
Fonksiyonu 297
5.24.
Veri Dosyalarının Kullanımı 297
5.24.1. MATLAB İçinde Veriler Oluşturma ve Çağırma 298
5.24.2. Veri Dosyası Oluşturma ve Çağırma 300
5.24.2.1. Program çıkışından .txt Dosyası Oluşturma
301
5.24.2.2. Bir Text veya Excel Dosyasını Matlab’de Kullanma
302
5.24.2.3.
fopen
Fonksiyonu 303
5.25.
Programlamada Zamanlama 306
5.25.1.
tic,
toc
Fonksiyonu 306
5.25.2.
cputime
Fonksiyonu 307
5.26.
Programlama Başarım (Performansı) Değerlendirilmesi 308
5.26.1. Döngülerin Vektörleştirilmesi 308
5.26.2. Önayırrmalı Diziler Kullanmak 309
5.27.
Bellek Yönetimi ve Diğer Yöntemler 310
5.28.
Özet 311
5.29.
Sorular 311
Bölüm
6. Grafikler
315
6.1.
İki Boyutlu Grafikler 316
6.1.1. Nokta Grafiği 316
6.1.2. Doğru Grafiği 318
6.1.3. İki Boyutlu Veri Grafikleri 322
6.1.4. Eksenleri Adlandırma ve Grafiğe Başlık Eklemek
325
6.1.5. Grafiğe Kılavuz Çizgileri Eklemek 326
6.1.6. Veri Grafik Örnekleri 327
6.1.7. Grafik Üzerinde Düzenleme İşlemleri 328
6.1.7.1. Eksen Adları ve Başlık Düzenleme İşlemleri
328
6.1.7.2. Eksen Adları ve Başlık Yazısı Özellikleri
330
6.1.7.3. Kılavuz Çizgileri (Grid) İşlemleri
332
6.1.7.4. Eksen İşlemleri 332
6.1.7.5. Grafik Arka Plan Rengi İşlemleri 333
6.1.8. Fonksiyon Grafikleri 335
6.1.8.1. Tek Değişkenli Fonksiyonların Grafikleri
335
6.1.8.2. Tek Değişkenli Fonksiyon Grafik Örnekleri
336
6.1.9. Çizgi ve İşaretleme Seçenekleri 340
6.1.10. Figure Penceresinde Çizgi ve İşaretleme İşlemleri
344
6.1.11. Grafiklerde Çizgi ve İşaretleme Örnekleri 345
6.1.12.
plot
ve
hold on ile
Çoklu Grafik – Aynı Düzlemde Bağımlı 347
6.1.13. Grafiğe Yazı Eklemek 352
6.1.13.1.
legend
Fonksiyonu 352
6.1.13.2.
text
Fonksiyonu 357
6.1.13.3.
gtext
Fonksiyonu 358
6.1.13.4. Grafik Alanı Üzerinde Yazı İşlemleri
360
6.1.14.
fiqure
Fonksiyonu 361
6.1.15.
pause
Fonksiyonu 362
6.1.16.
subplot
ile Çoklu Grafik – Aynı Düzlemde Bağımsız 363
6.1.17. Eksen Sınırlarını Ayarlamak 366
6.1.17.1.
linspace
Fonksiyonu 366
6.1.17.2.
axis
Fonksiyonu 367
6.1.17.3. Grafik Ekranında Eksen İşlemleri
370
6.1.18. Grafiklere Simgesel Karakterler Eklemek 371
6.1.19. Grafik Ölçekleri – Logoritmik Grafikler 375
6.1.20. İki Y-Eksenli Grafik Çizmek 378
6.1.21. İki Boyutlu Grafikleri Doğrudan Çizdirmek 380
6.1.21.1.
ezplot
Fonksiyonu Kullanımı 380
6.1.21.2.
fplot
Fonksiyonu Kullanımı 382
6.2.
Temel Grafik İşlemleri 384
6.2.1. Grafiği Kaydetmek 384
6.2.2. Grafiğin Word veya Powerpoint Programında
Kullanılması 386
6.3.
Grafiklerin Özelleştirilmesi 387
6.4.
Özel Grafikler 402
6.4.1. Pasta Dilimi Grafikleri 403
6.4.2.
Çubuk Grafikler 405
6.4.3. Histogram Grafikler 406
6.5.
Üç Boyutlu Grafikler 407
6.5.1. 3D Çizgi Grafikler 408
6.5.2. 3D Ağ Grafikler 409
6.5.3. 3D Yüzey Grafikler 410
6.5.4. Üç Boyutlu Grafikleri Doğrudan Çizdirmek 411
6.6.
İleri Grafik Uygulamaları 414
6.6.1.
movie
Fonksiyonu (Hareketli Grafikler) 414
6.6.2. GUI (Graphic User Interface) Uygulamaları
414
6.7.
Özet 415
6.8.
Alıştırma Soruları 415
Bölüm
7. MATLAB Programlama Örnekleri 417
Bölüm
8. Temel Matematiksel İşlemler
469
8.1.
Karmaşık Sayı İşlemleri 469
8.1.1. Karmaşık Sayı Fonksiyonları 470
8.1.2. Karmaşık Sayı Uygulama Örnekleri 472
8.1.3. Karmaşık Sayıların Kutupsal Gösterimi 473
8.1.3.1.
cart2pol
ve
pol2cart
Fonksiyonları
474
8.1.3.2. Euler Formülü 475
8.1.4. Karmaşık Sayılı Matris Oluşturma 476
8.1.5. Karmaşık Sayı Grafiği 477
8.1.5.1. Karmaşık Sayının Polar Form Grafiği
479
8.1.5.2. Karmaşık Sayının Kartezyen Form Grafiği 479
8.2.
Polinomlar 480
8.2.1. Polinomların Gösterimi 480
8.2.2. Polinomların Değerini Bulma 481
8.2.3. Polinomların Köklerini Bulma 482
8.2.4. Kökleri Belli Olan Polinomları Bulma 483
8.2.5. Polinomların Çarpımı 483
8.2.6. Polinomların Bölümü 484
8.2.7. Polinomlarda Toplama ve Çıkartma İşlemi 485
8.2.8. Polinomların Türevi 486
8.3.
Lineer Denklem Sistemlerinin Çözümü 486
8.3.1.
solve
Fonksiyonu 486
8.4.
Sembolik Matematik 491
8.4.1. Çoklu Sembolik Değişken Kullanımı -
syms
Fonksiyonu 493
8.4.2. Sembolik Sadeleştirme İşlemleri 495
8.4.3. Sembolik İfadelerde Değer Koyma İşlemleri 499
8.4.4. Laplace Dönüşümleri 501
8.5.
İntegral 502
8.5.1. Sayısal Değerli (Nümerik) İntegral Örnekleri 502
8.5.2. Sembolik İntegral Örnekleri 505
8.6.
Türev İşlemleri 511
7.6.1. Türev Örnekleri 512
8.7.
Limit İşlemleri 515
8.7.1. Limit Örnekleri 515
8.8.
Denklem Sistemlerinin Çözümü 516
7.8.1. Denklem Sistemlerinin Çözüm Örnekleri 518
8.9.
Diferansiyel Denklem Çözümü 512
8.9.1. Diferansiyel Denklem Çözüm Örnekleri 522
8.9.2. Adi Diferansiyel Denklem Çözücüleri 524
8.10.
Diğer Sembolik Matematik İşlemler 528
Kaynakça
Dizin
Üniversite ders
kitapları ve bilgisayar kitapları:
Diskrete Matematik Ortak Yazarlı
Veri Madenciliği Dr. Gökhan SİLAHTAROĞLU
Veri Madenciliği Yöntemleri Dr. Yalçın ÖZKAN
Network TCP/IP ve UNUX El Kitabı Dr. Rifat ÇÖLKESEN
Network/Veri Haberleşmesi Uygulamaları Yasin KAPLAN
Veri Haberleşmesi/Network Temelleri Yasin KAPLAN
Veri Haberleşmesi/Network Kavramları Yasin KAPLAN
Java ve Yazılım Tasarımı Altuğ Altıntaş
Bilgisayar Mimarisi Ortak Yazarlı
Elektronik Mühendisliğine Giriş Ortak Yazarlı
Endüstri Mühendisliğine Giriş Ortak Yazarlı (Editör: Prof. Dr. Ercan ÖZTEMEL)
Bilgisayar Ağları Dr. Demir ÖNER
Bilgisayar Mühendisliğine Giriş Ortak yazarlı (Editör: Dr. Rifat ÇÖLKESEN)
Veritabanı ve Uygulamaları Yılmaz KAYA ve Ramazan TEKİN
Sistem Analizi ve Tasarımı (Bilgisayar Bilimlerinde) Prof.Dr. Oya KALIPSIZ ve ark.
Yazılım Mühendisliği Dr.Erhan SARIDOĞAN
C++ ve Nesneye Yönelik C Programlama
Dr.Erhan SARIDOĞAN
Programlama Sanatı Algoritmalar (C Uyarlaması)
Dr.Rifat
ÇÖLKESEN
C Programlama Dili - İşte C
Dr.Rifat ÇÖLKESEN
Uygulamalı C Programlama Dili Bora TUNCER
Veri Yapıları ve Algoritmalar
Dr.Rifat ÇÖLKESEN
Veri Yapıları Algoritma Temelleri
Dr.Sefer KURNAZ
MATLAB Kılavuzu
Dr.Aslan İNAN
MATLAB Uygulama Çözümleri Dr.Aslan İNAN
JAVA ve Yazılım Tasarımı
Altuğ B. ALTINTAŞ
Linux Altında Programlama Ali VARDAR
GTK/GNOME Programlama
Ali VARDAR
Üniversite Kitaplarımızın tüm listesi için
buraya tıklayınız.
Mühendislik
kitaplarımız için ise
buraya tıklayınız. |