Matlab是一種數(shù)值計算和圖形圖像處理的工具軟件,它的特點是語法結(jié)構(gòu)簡明、數(shù)值計算高效、圖形功能完備、易學易用。它在矩陣運算、數(shù)值分析、優(yōu)化、圖形圖像處理、系統(tǒng)建模與仿真等領(lǐng)域都有廣泛的應(yīng)用。
《Matlab基礎(chǔ)與實例教程》從Matlab的基礎(chǔ)知識入手,循序漸進地介紹了Matlab的知識體系結(jié)構(gòu)及操作方法。其中主要介紹了如何使用Matlab進行數(shù)據(jù)分析、圖形圖像處理、Matlab編程、圖形用戶界面建立、Matlab仿真,以及文件輸入/輸出、編譯器和應(yīng)用程序接口等高級技術(shù)。本書利用大量的實例來引導(dǎo)讀者快速學習和掌握Matlab的各種功能。
《Matlab基礎(chǔ)與實例教程》系統(tǒng)全面,內(nèi)容合理,實例豐富,層析清晰,使用方便,適用于初、中級Matlab用戶,可作為高等學校理工科專業(yè)本科生、研究生和教師的教學用書,也可作為廣大科研和工程技術(shù)人員的參考用書。
系統(tǒng)全面,實例豐富
考慮到Matlab進行仿真和運算分析時的基礎(chǔ)知識和實踐操作,講解從基礎(chǔ)的變量、函數(shù)、數(shù)據(jù)類型等入手,涉及到數(shù)學分析、圖形可視化、Simulink仿真、文件讀寫等,全面地介紹了Matlab的分析方法。
精心編排,方便查閱
精心選擇了Matlab有代表性的實例。采用表格的形式歸納總結(jié),方便讀者在學習時,翻閱查找相關(guān)部分的命令、函數(shù)。
配書資料,超值實用
免費提供配書PPT課件,以及書中案例源代碼。
前言
與其他高級語言相比,Matlab提供了一個人機交互的教學系統(tǒng)環(huán)境,并以矩陣作為基本的數(shù)據(jù)結(jié)構(gòu),可以大大節(jié)省編程時間。Matlab語法規(guī)則簡單、容易掌握、調(diào)試方便,調(diào)試過程中可以設(shè)置斷點,存儲中間結(jié)果,從而很快查出程序中的錯誤。正是由于Matlab的強大功能,Matlab語言受到了越來越多院校師生的歡迎和重視。由于它將使用者從煩瑣重復(fù)的計算中解放出來,把更多的精力投入到對數(shù)學基本含義的理解上,因此,它已逐步成為許多大學生和研究生課程中的重要工具。像線性代數(shù)、高等數(shù)學、信號處理、自動控制等許多領(lǐng)域,它都表現(xiàn)出高效、簡單和直觀的性能,是強有力的計算機輔助設(shè)計工具。因此,在高等院校里,Matlab已經(jīng)成為線性代數(shù)、自動控制理論、概率論及數(shù)理統(tǒng)計、數(shù)字信號處理、時間序列分析、動態(tài)系統(tǒng)仿真等課程的基本教學工具,熟練運用Matlab已成為大學生、研究生必須掌握的基本技能;在設(shè)計研究單位和工業(yè)部門,Matlab已成為研究必備軟件和標準軟件。國際上許多新版科技書籍(特別是高校教材)在講述其專業(yè)時都把Matlab作為基本工具使用。
本書內(nèi)容共有12章。第1章介紹Matlab的發(fā)展歷史、基本功能特點、安裝和軟件使用界面;第2章介紹Matlab數(shù)學運算的基本使用方法,包括Matlab的常用數(shù)學函數(shù)、數(shù)據(jù)類型、操作函數(shù)及Matlab腳本文件等;第3章介紹Matlab數(shù)組和向量,包括數(shù)組和向量的創(chuàng)建、數(shù)組的基本運算、數(shù)組和向量的操作;第4章介紹Matlab的數(shù)學運算功能,包括數(shù)據(jù)插值、函數(shù)運算及微分方程求解等;第5章介紹Matlab的其他數(shù)據(jù)結(jié)構(gòu),包括字符串、單元數(shù)組和結(jié)構(gòu)體,為Matlab編程及更多功能的實現(xiàn)打下基礎(chǔ);第6章介紹Matlab編程,包括Matlab程序設(shè)計的腳本文件、程序設(shè)計與開發(fā)、基本語法、語句結(jié)構(gòu)及程序調(diào)試等;第7章介紹Matlab的符號運算工具箱,包括功能和實現(xiàn)等;第8章介紹Matlab繪圖,繪圖是Matlab的一項重要功能,主要介紹基本的圖形繪制、繪制圖形的常用操作、特殊圖形的繪制等內(nèi)容;第9章介紹Matlab句柄圖形,為學習Matlab圖形用戶界面(GUI)設(shè)計做好準備;第10章介紹MatlabGUI設(shè)計;第11章介紹Simulink仿真工具箱;第12章介紹Matlab的文件輸入與輸出操作。
本書內(nèi)容特色如下。
1. 內(nèi)容新穎,知識全面
本書內(nèi)容安排考慮到Matlab進行仿真和運算分析時的基礎(chǔ)知識和實踐操作,從基礎(chǔ)的變量、函數(shù)、數(shù)據(jù)類型等入手,到數(shù)學分析、圖形可視化、Simulink仿真、文件讀寫等,全面、詳細地幫助讀者掌握Matlab的分析方法。
2. 講解深入,實例清楚
Matlab的基礎(chǔ)內(nèi)容中涉及比較多的方面,本書在對相關(guān)主題介紹的同時,對函數(shù)或命令中比較常用的部分進行重點的分析介紹,同時,通過實例對函數(shù)和命令中的一些典型知識點進行講解,從而幫助讀者掌握和深入學習。
3. 精心編排,便于查閱
本書在講解Matlab命令時,精心選擇了有代表性的實例。同時,將相關(guān)內(nèi)容和函數(shù)命令通過表格的形式歸納總結(jié),從而使讀者在學習的同時,翻閱查找相關(guān)部分的命令、函數(shù)。因此,非常有利于讀者閱讀和查閱。
本書由華北理工大學的趙驥老師、曹巖老師、李洪波老師以及唐山市曹妃甸區(qū)教育體育局的楊紅艷老師編寫,參與編寫的老師還有陳艷華、封素潔、封超、代小華等。本書既可以作為高等院校的教科書,又可供廣大科技工作者閱讀使用。
編 者
趙驥,高級實驗師。自2001年起在華北理工大學從事教學管理工作,現(xiàn)任華北理工大學現(xiàn)代技術(shù)教育中心副主任,唐山市計算機協(xié)會理事。
目錄
第1章 Matlab概述 1
1.1 Matlab簡介 2
1.1.1 Matlab的發(fā)展 2
1.1.2 Matlab的優(yōu)點 4
1.2 Matlab的安裝 6
1.3 Matlab操作界面介紹 9
1.3.1 命令窗口 10
1.3.2 命令歷史窗口 12
1.3.3 工作空間窗口 13
1.3.4 當前目錄窗口 13
1.4 Matlab幫助系統(tǒng) 14
1.4.1 幫助窗口 14
1.4.2 幫助命令 15
1.4.3 Matlab遠程幫助系統(tǒng) 17
1.5 課后練習 18
第2章 Matlab 基礎(chǔ)知識 19
2.1 一般運算符及操作符 20
2.1.1 運算符 20
2.1.2 操作符 23
2.2 數(shù)據(jù)格式顯示 25
2.3 關(guān)系運算符 27
2.4 邏輯運算及邏輯函數(shù) 29
2.4.1 邏輯運算 29
2.4.2 邏輯函數(shù) 31
2.5 數(shù)值數(shù)據(jù)類型 39
2.5.1 整數(shù) 39
2.5.2 浮點數(shù) 42
2.5.3 整型浮點數(shù)間的操作函數(shù) 43
2.5.4 復(fù)數(shù) 44
2.6 函數(shù)和特殊函數(shù)簡明介紹 46
2.7 課后練習 47
第3章 數(shù)組 49
3.1 一維數(shù)組的創(chuàng)建 50
3.2 多維數(shù)組的創(chuàng)建 52
3.3 數(shù)組的運算 55
3.4 常用的標準數(shù)組 56
3.5 低維數(shù)組的尋址和搜索 58
3.6 低維數(shù)組的處理函數(shù) 62
3.7 高維數(shù)組的處理和運算 64
3.8 課后練習 66
第4章 Matlab數(shù)學運算 67
4.1 極限、導(dǎo)數(shù)與微分 68
4.1.1 極限 68
4.1.2 導(dǎo)數(shù)與微分 68
4.2 積分 72
4.2.1 一元函數(shù)的積分 73
4.2.2 二元及三元函數(shù)的數(shù)值積分 76
4.3 化簡、提取與替換代入 79
4.3.1 化簡 79
4.3.2 提取與替換代入 82
4.4 級數(shù)求和 85
4.4.1 symsum(s) 85
4.4.2 symsum(s,v) 85
4.4.3 symsum(s,v,a,b) 86
4.5 泰勒、傅里葉級數(shù)展開 87
4.5.1 一元函數(shù)泰勒展開 87
4.5.2 多元函數(shù)的完全泰勒展開 89
4.5.3 傅里葉級數(shù)展開 90
4.6 多重積分 90
4.6.1 二重積分 91
4.6.2 三重積分 92
4.7 課后練習 93
第5章 字符串、單元數(shù)組和結(jié)構(gòu)體 95
5.1 字符串操作 96
5.1.1 Matlab中的字符串符號 96
5.1.2 一般通用字符串操作 98
5.1.3 字符串比較操作 101
5.1.4 字符串與數(shù)值間的相互轉(zhuǎn)換 106
5.1.5 進制間的轉(zhuǎn)換 108
5.2 單元數(shù)組和結(jié)構(gòu)體 110
5.2.1 單元數(shù)組的創(chuàng)建和操作 110
5.2.2 單元數(shù)組函數(shù) 113
5.2.3 結(jié)構(gòu)體創(chuàng)建 114
5.2.4 結(jié)構(gòu)體函數(shù) 115
5.3 課后練習 117
第6章 Matlab編程 119
6.1 M文件編輯器 120
6.1.1 運行M文件編輯器 120
6.1.2 設(shè)置M文件編輯器的屬性 121
6.2 M文件和P文件 122
6.2.1 M文件函數(shù)文件 122
6.2.2 M文件腳本文件 123
6.2.3 M文件規(guī)則與屬性 126
6.2.4 P文件及操作 126
6.3 Matlab編程的構(gòu)件 127
6.3.1 變量 127
6.3.2 變量的檢測、傳遞 128
6.3.3 運算關(guān)系與運算符號 130
6.3.4 關(guān)鍵字 134
6.3.5 指令行 134
6.3.6 常見函數(shù) 134
6.4 數(shù)據(jù)流結(jié)構(gòu) 136
6.4.1 順序結(jié)構(gòu) 136
6.4.2 if和switch選擇結(jié)構(gòu) 137
6.4.3 for和while循環(huán)結(jié)構(gòu) 140
6.4.4 try-catch容錯結(jié)構(gòu) 142
6.4.5 其他數(shù)據(jù)流結(jié)構(gòu) 143
6.5 控制命令 144
6.5.1 continue和break命令 144
6.5.2 return和pause命令 146
6.5.3 input和keyboard命令 147
6.5.4 error和warning命令 148
6.6 課后練習 149
第7章 符號及其運算 151
7.1 符號變量的創(chuàng)建 152
7.1.1 字符型數(shù)據(jù)變量的創(chuàng)建 152
7.1.2 符號型數(shù)據(jù)變量的創(chuàng)建 153
7.1.3 符號變量的基本操作 154
7.2 符號表達式與符號方程創(chuàng)建 156
7.2.1 符號表達式的創(chuàng)建 156
7.2.2 符號方程的創(chuàng)建 158
7.2.3 符號表達式的操作 158
7.3 符號矩陣的創(chuàng)建 163
7.3.1 用sym命令直接創(chuàng)建符號矩陣 164
7.3.2 由數(shù)值矩陣轉(zhuǎn)換為符號矩陣 164
7.3.3 利用矩陣元素的通式創(chuàng)建符號矩陣 165
7.3.4 符號矩陣及符號數(shù)組的運算 166
7.4 符號微積分 171
7.4.1 符號極限 171
7.4.2 符號微分和求導(dǎo) 172
7.4.3 符號積分 173
7.5 符號積分變換 175
7.5.1 Fourier變換及其逆變換 175
7.5.2 Laplace變換及其逆變換 176
7.5.3 Z變換及其反變換 177
7.6 符號代數(shù)方程求解 179
7.7 符號微分方程求解 180
7.8 圖示化符號函數(shù)計算器 181
7.8.1 單變量符號函數(shù)計算器 181
7.8.2 泰勒級數(shù)逼近計算器 184
7.9 課后練習 185
第8章 圖形繪制 187
8.1 基本繪圖命令 188
8.1.1 圖形窗口簡介 188
8.1.2 基本繪圖操作 192
8.1.3 圖形注釋 194
8.1.4 特殊函數(shù) 196
8.2 二維繪圖 200
8.2.1 二維繪圖命令 200
8.2.2 交互式繪圖操作 203
8.3 三維繪圖 204
8.3.1 三維繪圖命令 204
8.3.2 三維繪圖改進命令 207
8.3.3 三維視圖的可視效果控制 209
8.3.4 三維圖形的光照控制 210
8.3.5 柱面和球面的表達 212
8.4 課后練習 214
第9章 Matlab 句柄圖形系統(tǒng) 215
9.1 句柄圖形基礎(chǔ) 216
9.1.1 圖形對象概述 216
9.1.2 圖形對象句柄 218
9.1.3 圖形對象屬性 219
9.2 圖形對象的創(chuàng)建 224
9.2.1 創(chuàng)建圖形窗口對象 224
9.2.2 創(chuàng)建坐標軸對象 227
9.2.3 創(chuàng)建曲線對象 229
9.2.4 創(chuàng)建文字對象 230
9.2.5 創(chuàng)建曲面對象 231
9.2.6 核心圖形對象 232
9.3 句柄圖形對象的基本操作 236
9.3.1 設(shè)置查詢圖形對象屬性 236
9.3.2 設(shè)置對象的默認屬性操作 237
9.3.3 高層繪圖對象操作 240
9.4 課后練習 242
第10章 圖形用戶界面GUI設(shè)計 243
10.1 圖形用戶界面GUI設(shè)計過程 244
10.1.1 設(shè)計的一般步驟以及原則 244
10.1.2 GUI設(shè)計的基本方式 244
10.2 使用GUIDE創(chuàng)建GUI 246
10.2.1 GUIDE概述 246
10.2.2 啟動GUIDE 246
10.2.3 GUI的設(shè)計窗口簡介 248
10.2.4 使用GUIDE創(chuàng)建GUI的步驟 253
10.3 M文件創(chuàng)建GUI 262
10.4 課后練習 266
第11章 Simulink基礎(chǔ) 267
11.1 Simulink的基礎(chǔ)操作 268
11.1.1 Simulink概述 268
11.1.2 Simulink安裝步驟 268
11.1.3 Simulink啟動方式 269
11.1.4 模型窗口的菜單欄 270
11.2 Simulink仿真系統(tǒng)操作步驟 274
11.2.1 啟動添加Simulink 模塊庫 274
11.2.2 設(shè)置模塊屬性 275
11.2.3 模塊連接 276
11.2.4 運行系統(tǒng)輸出結(jié)果 276
11.3 Simulink的模塊庫 276
11.3.1 Simulink的公共模塊庫 277
11.3.2 Simulink的專業(yè)模塊庫 285
11.4 Simulink模塊的基本操作 290
11.4.1 Simulink模型的工作原理 290
11.4.2 模塊的選定復(fù)制 292
11.4.3 模塊大小改變與旋轉(zhuǎn) 293
11.4.4 模塊顏色的改變與名的改變 294
11.4.5 模塊參數(shù)設(shè)置 296
11.4.6 連線分支與連線改變 297
11.4.7 信號組合 299
11.5 模型注釋 299
11.6 設(shè)置Simulink仿真系統(tǒng)界面 300
11.6.1 模塊框圖屬性編輯 300
11.6.2 信號標簽與標簽傳遞 302
11.7 仿真運行過程 304
11.7.1 運行仿真 304
11.7.2 仿真參數(shù)設(shè)置 305
11.7.3 示波器的使用 310
11.8 Simulink連續(xù)系統(tǒng)建模 311
11.8.1 線性系統(tǒng)建模 311
11.8.2 非線性系統(tǒng)建模 318
11.9 課后練習 319
第12章 文件和數(shù)據(jù)的導(dǎo)入與導(dǎo)出 321
12.1 低級文件I/O介紹 322
12.2 文件打開和關(guān)閉 322
12.2.1 打開文件 322
12.2.2 關(guān)閉文件 324
12.3 數(shù)據(jù)的讀寫 325
12.3.1 讀取TXT文件 325
12.3.2 寫入二進制文件 335
12.4 文件的定位和文件的狀態(tài) 338
12.5 高級文件I/O介紹 342
12.5.1 Mat文件操作 342
12.5.2 圖像、聲音、影片格式文件的 操作 345
12.6 課后練習 348