發表於2024-11-22
本教材嚴格參照教育部頒布的《普通高等學校本科專業目錄(2012年)》、教育部高等學校電子電氣基礎課程教學指導分委員會頒布的《電子電氣基礎課程教學基本要求》編寫;並以當今流行的MATLABR2016a和Simulink8.7為平颱,在作者十餘年從事MATLAB課程教學、課程改革、畢業設計指導和利用MATLAB進行科學研究的經驗的基礎上編著而成。本書具有以下特色:
(1)內容編排科學閤理以先基礎後應用、先理論後實踐、循序漸進的原則進行編排,便於讀者學習和掌握MATLAB編程方法。
(2)內容豐富,例題新穎本書結閤編者多年的MATLAB教學和使用經驗,詳細介紹MATLAB的基本內容,列舉豐富的例題和應用實例,便於讀者更好理解和掌握MATLAB各種函數和命令。
(3)理論與應用有機結閤本書前7章介紹MATLAB基礎內容,每章最後一節都給齣應用實例,第8到第10章詳細介紹MATLAB在電子信息處理、控製係統和通信係統中應用,從而引導讀者更好地用MATLAB解決專業領域的實際應用問題。
(4)理論教學與上機實驗相配套為瞭便於教師教學,本書提供配套的電子教案,所有例題和應用實例的源代碼以及所有圖片;為瞭便於讀者上機做實驗,本書提供MATLAB基本內容的十個實驗內容。
(5)提供配套教學課件可到清華大學齣版社網站本書頁麵下載。
(6)提供配套例題源代碼、全書圖片、教學大綱、授課計劃等教學資料。
本書係統地介紹瞭MATLAB的基礎知識以及MATLAB在電子信息處理、控製係統和通信係統中的應用。全書以MATLABR2016a和Simulink8.7為平颱詳細介紹MATLAB基本功能及其應用,內容包含三部分:MATLAB/Simulink基礎篇、MATLAB/Simulink應用篇和MATLAB/Simulink實驗篇。全書共11章,內容包括MATLAB語言概述、矩陣及其運算、程序結構和M文件、數值計算、符號計算、數據可視化、Simulink仿真、MATLAB在電子信息處理中的應用、MATLAB在控製係統中的應用、MATLAB在通信係統中的應用和MATLAB實驗,內容涉及較廣,能滿足一般用戶的各種功能需求。
本書的特色是注重MATLAB基礎與在電子信息類相關學科領域的應用相結閤,強調基礎,兼顧應用;內容編排閤理科學,先基礎,後應用,先理論,後實驗,由淺入深,循序漸進;內容豐富,例題新穎,應用實例廣泛,便於讀者學習和掌握MATLAB。
本書適閤作為高等院校理工科專業,尤其是電子信息工程、電子科學技術、自動化、電氣工程和通信工程等專業的本科生教學用書,也可以作為研究生、科研與工程技術人員的參考用書。
第一部分MATLAB/Simulink基礎篇
第1章MATLAB語言概述
1.1MATLAB語言的發展
1.2MATLAB語言的特點
1.3MATLAB語言的環境
1.3.1MATLAB語言的安裝
1.3.2MATLAB語言的界麵簡介
1.4MATLAB幫助係統
1.4.1help查詢幫助函數
1.4.2lookfor查詢幫助函數
1.4.3聯機幫助係統
1.5MATLAB數據類型
1.5.1常量和變量
1.5.2整數和浮點數
1.5.3復數
1.6MATLAB運算符
1.6.1算術運算符
1.6.2關係運算符
1.6.3邏輯運算符
1.6.4優先級
1.7應用實例
1.7.1計算一般數學公式
1.7.2繪製整流波形圖
習題1
第2章MATLAB矩陣及其運算
2.1矩陣的創建
2.1.1直接輸入矩陣
2.1.2冒號生成矩陣
2.1.3利用函數生成矩陣
2.1.4利用文本文件生成矩陣
2.1.5利用M文件生成矩陣
2.1.6特殊矩陣的生成
2.2矩陣的修改
2.2.1矩陣部分替換
2.2.2矩陣部分刪除
2.2.3矩陣部分擴展
2.2.4矩陣結構變換
2.3矩陣的基本運算
2.3.1矩陣的加減運算
2.3.2矩陣的乘法運算
2.3.3矩陣的除法運算
2.3.4矩陣的乘方運算
2.3.5矩陣的點運算
2.4矩陣的分析
2.4.1方矩陣的行列式
2.4.2矩陣的秩和跡
2.4.3矩陣的逆和僞逆
2.4.4矩陣的特徵值和特徵嚮量
2.4.5矩陣的分解
2.4.6矩陣的信息獲取函數
2.5字符串
2.5.1字符串的創建
2.5.2字符串的操作
2.5.3字符串轉換
2.6多維數組
2.6.1多維數組的創建
2.6.2多維數組的操作
2.7結構數組和元胞數組
2.7.1結構數組
2.7.2元胞數組
2.8矩陣及其運算應用實例
2.8.1矩陣在圖像處理中的應用
2.8.2綫性方程組的求解
2.8.3多維數組在彩色圖像中的應用
習題2
第3章MATLAB程序結構和M文件
3.1程序結構
3.1.1順序結構
3.1.2選擇結構
3.1.3循環結構
3.1.4程序控製命令
3.2M文件
3.2.1M文件的分類和特點
3.2.2M文件的創建和打開
3.3M函數文件
3.3.1M函數文件的格式
3.3.2M函數文件的調用
3.3.3主函數和子函數
3.3.4函數的參數
3.3.5函數的變量
3.4程序調試
3.4.1命令窗口調試
3.4.2MATLAB菜單調試
3.4.3MATLAB調試函數
3.5應用實例
習題3
第4章MATLAB數值計算
4.1多項式
4.1.1多項式的創建
4.1.2多項式的值和根
4.1.3多項式的四則運算
4.1.4多項式的微積分運算
4.1.5多項式的部分分式展開
4.2數據插值
4.2.1一維插值
4.2.2二維插值
4.2.3多維插值
4.3數據擬閤
4.4數據統計
4.4.1矩陣元素的最大值和最小值
4.4.2矩陣元素的平均值和中值
4.4.3矩陣元素的排序
4.4.4矩陣元素求和和求積
4.4.5矩陣元素的纍加和與纍乘積
4.4.6標準方差和相關係數
4.5數值計算
4.5.1函數極值
4.5.2函數零點
4.5.3數值差分
4.5.4數值積分
4.5.5常微分方程求解
4.6應用實例
習題4
第5章MATLAB符號運算
5.1MATLAB符號運算的特點
5.2MATLAB符號對象的創建和使用
5.3符號多項式函數運算
5.3.1多項式函數的符號錶達形式及相互轉換
5.3.2符號多項式的嚮量錶示形式及其計算
5.3.3反函數和復閤函數求解
5.4符號微積分運算
5.4.1函數的極限和級數運算
5.4.2符號微分運算
5.4.3符號積分運算
5.5符號方程求解
5.5.1符號代數方程求解
5.5.2符號常微分方程求解
5.5.3一維偏微分方程求解
5.6應用實例
習題5
第6章MATLAB數據可視化
6.1概述
6.2二維麯綫的繪製
6.2.1繪圖基本函數
6.2.2綫性圖格式設置
6.2.3圖形修飾
6.2.4圖形保持
6.2.5多個圖形繪製
6.3二維特殊圖形的繪製
6.3.1柱狀圖
6.3.2餅形圖
6.3.3直方圖
6.3.4離散數據圖
6.3.5嚮量圖
6.3.6極坐標圖
6.3.7對數坐標圖
6.3.8雙縱坐標繪圖
6.3.9函數繪圖
6.4三維麯綫和麯麵的繪製
6.4.1繪製三維麯綫圖
6.4.2繪製三維麯麵圖
6.4.3特殊的三維圖形
6.4.4繪製動畫圖形
6.5MATLAB圖形窗口
6.6應用實例
習題6
第7章Simulink仿真基礎
7.1Simulink概述
7.1.1Simulink的基本概念
7.1.2Simulink模塊的組成
7.1.3Simulink中的數據類型
7.2Simulink的使用
7.2.1Simulink的啓動和退齣
7.2.2在Simulink的窗口創建一個新模型
7.2.3Simulink模塊的操作
7.2.4Simulink的建模和仿真
7.3Simulink的模塊庫及模塊
7.3.1CommonlyUsedBlocks子模塊庫
7.3.2Continuous子模塊庫
7.3.3Dashboard子模塊庫
7.3.4Discontinuous子模塊庫
7.3.5Discrete子模塊庫
7.3.6LogicandBitOperations子模塊庫
7.3.7LookupTables子模塊庫
7.3.8MathOperations子模塊庫
7.3.9ModelVerification子模塊庫
7.3.10Model�瞁ideUtilities子模塊庫
7.3.11Ports&Subsystems;子模塊庫
7.3.12SignalsAttributes子模塊庫
7.3.13SignalsRouting子模塊庫
7.3.14Sinks子模塊庫
7.3.15Sources子模塊庫
7.3.16User�瞕efinedFunctions子模塊庫
7.4Simulink模塊操作及建模
7.4.1Simulink模型
7.4.2Simulink模塊的基本操作
7.4.3係統模型注釋與信號標簽設置
7.4.4Simulink建模
7.5Simulink模塊及仿真參數設置
7.5.1模塊參數設置
7.5.2Simulink仿真參數設置
7.6過零檢測和代數環
7.6.1過零檢測
7.6.2代數環
7.7應用實例
習題7
第二部分MATLAB/Simulink應用篇
第8章MATLAB在電子信息處理中的應用
8.1MATLAB在信號與係統中的應用
8.1.1信號及錶示
8.1.2信號的基本運算
8.1.3信號的能量和功率
8.1.4綫性時不變係統的創建
8.1.5綫性時不變係統的時域分析
8.1.6綫性時不變係統的頻域分析
8.2MATLAB在數字信號處理中的應用
8.2.1傅裏葉變換
8.2.2IIR數字濾波器的設計
8.2.3FIR數字濾波器的設計
8.3MATLAB在數字圖像處理中的應用
8.3.1數字圖像的讀取、顯示和存儲
8.3.2數字圖像的類型及轉換
8.3.3圖像的基本運算
8.3.4圖像增強
8.3.5圖像濾波
8.3.6圖像邊緣檢測
8.3.7圖像壓縮
第9章MATLAB在控製係統中的應用
9.1控製係統的模型描述
9.1.1控製係統的模型與錶達式
9.1.2控製係統模型間的關係
9.2控製係統的時域分析與MATLAB實現
9.2.1綫性係統的穩定性分析
9.2.2控製係統的動態響應
9.2.3控製係統的時域響應指標
9.3控製係統的頻域分析與MATLAB實現
9.3.1控製係統的頻域分析
9.3.2控製係統的頻域分析性能指標
9.4控製係統的根軌跡分析
9.4.1控製係統的根軌跡分析
9.4.2根軌跡設計工具
9.5控製係統的狀態空間分析
9.5.1狀態空間的綫性變換
9.5.2狀態空間的能控性和能觀性
9.5.3狀態空間的狀態反饋與極點配置
9.6控製係統綜閤實例與應用設計
9.6.1控製係統綜閤實例
9.6.2簡單運動係統的建模及仿真
9.6.3“彈簧�倉柿開滄枘帷畢低車慕�模及仿真
9.6.4單容過程係統的建模及仿真
第10章MATLAB在通信係統中的應用
10.1MATLAB通信工具箱的組成
10.2信息量度與信源編碼
10.2.1信息的量度計算
10.2.2模擬信號量化和數字化
10.2.3信源編碼
10.3差錯控製和信道編碼
10.3.1綫性分組碼編解碼
10.3.2交織編碼
10.3.3擾碼與解擾
10.4模擬調製與解調
10.4.1幅度調製與解調
10.4.2角度調製與解調
10.5數字調製與解調
10.5.1數字調製
10.5.2數字解調
10.6數字通信係統性能仿真
10.6.1數字信號的比特能量與AWGN信道
10.6.2數字通信係統的誤碼率仿真
第三部分MATLAB/Simulink實驗篇
第11章MATLAB實驗
實驗一MATLAB運算基礎
實驗二嚮量和矩陣的運算
實驗三字符串及矩陣分析
實驗四M腳本文件和函數文件
實驗五程序結構設計
實驗六多項式運算及多項式插值和擬閤
實驗七數據統計和數值計算
實驗八符號計算
實驗九MATLAB繪圖
實驗十Simulink仿真
附錄習題答案
參考文獻
第3章MATLAB程序結構和M文件
本章要點:
�ǔ縧蚪峁梗�
�∕文件;
�∕函數文件;
�ǔ縧虻饔謾�
MATLABR2016a和其他高級編程語言(如C語言和FORTRAN語言)一樣,要實現復雜的功能需要編寫程序文件和調用各種函數。
3.1程序結構
MATLAB語言有三種常用的程序控製結構:順序結構、選擇結構和循環結構。MATLAB語言裏的任何復雜程序都可以由這三種基本結構組成。
3.1.1順序結構
順序結構是MATLAB語言程序的最基本的結構,是指按照程序中的語句排列順序依次執行,每行語句是從左往右執行,不同行語句是從上往下執行。一般數據的輸入和輸齣、數據的計算和處理程序都是順序結構。順序結構的基本流程如圖3��1所示,程序先執行語句A,然後執行語句B,最後執行語句C。
圖3��1順序結構流程圖
1.數據的輸入
MATLAB語言要從鍵盤輸入數據,可以使用input函數,該函數的調用格式有如下兩種。
1)x=input('提示信息')
其中,提示信息錶示字符串,用於提示用戶輸入什麼樣的數據,等待用戶從鍵盤輸入數據,賦值給變量x。
例如,從鍵盤中輸入變量x,可以用下麵的命令實現:
>>x=input('輸入變量x:')
輸入變量x:3
x=
3
執行該語句時,命令行窗口顯示提示信息“輸入變量x:”,然後等待用戶從鍵盤輸入x的值。
2)str=input('提示信息','s')
其中,該格式用於用戶輸入一個字符串,賦值給字符變量str。
例如,用戶想從鍵盤輸入自己的名字,賦值給字符變量str,可以采用下麵命令:
>>str=input('what''syourname?','s')
what'syourname?XuGuobao
str=
XuGuobao
執行該語句時,命令行窗口顯示提示信息“what'syourname?”,然後等待用戶從鍵盤輸入字符變量str的值。
2.數據的輸齣
MATLAB語言可以在命令窗口顯示輸齣信息,可以用函數disp實現,該函數的調用格式如下:
disp('輸齣信息')
其中,輸齣信息可以是字符串,也可以是矩陣信息。例如:
>>disp('What''syourname?')
disp('MynameisXuGuobao')
What'syourname?
MynameisXuGuobao
>>A=[12;34];
>>disp(A)
12
34
需要注意,用disp函數顯示矩陣信息將不顯示矩陣的變量名,輸齣格式更緊湊,沒有空行。
【例3��1】從鍵盤輸入a、b和c的值,求解一元二次方程ax2+bx+c=0的根。
程序代碼如下:
a=input('a=');
b=input('b=');
c=input('c=');%從鍵盤輸入a、b和c的值
delt=b*b-4*a*c;
x1=(-b+sqrt(delt))/(2*a);
x2=(-b-sqrt(delt))/(2*a);
disp(['x1=',num2str(x1)]);%顯示x1和x2的值
disp(['x2=',num2str(x2)]);
程序運行結果是:
>>exam_3_1
a=1
b=-5
c=6
MATLAB/Simulink實用教程:編程、仿真及電子信息學科應用(高等學校電子信息類專業係列 下載 mobi epub pdf txt 電子書 格式MATLAB/Simulink實用教程:編程、仿真及電子信息學科應用(高等學校電子信息類專業係列 下載 mobi pdf epub txt 電子書 格式 2024
MATLAB/Simulink實用教程:編程、仿真及電子信息學科應用(高等學校電子信息類專業係列 下載 mobi epub pdf 電子書MATLAB/Simulink實用教程:編程、仿真及電子信息學科應用(高等學校電子信息類專業係列 mobi epub pdf txt 電子書 格式下載 2024