全書以MATLAB 2016為基礎(chǔ),結(jié)合高等學(xué)校學(xué)生的教學(xué)經(jīng)驗和計算科學(xué)的應(yīng)用,講解MATLAB在智能計算和系統(tǒng)仿真分析中的各種方法和技巧,完整的編寫一套讓學(xué)生與零基礎(chǔ)讀者可以靈活掌握的教學(xué)指南,讓他們終脫離書本并獨立應(yīng)用于工程實踐中。本書主要內(nèi)容包括MATLAB的入門、基礎(chǔ)知識、程序設(shè)計基礎(chǔ)、圖形繪制、圖形與圖像的處理、高等數(shù)學(xué)計算、方程組的運算、符號運算、優(yōu)化設(shè)計、圖形用戶界面設(shè)計、Simulink仿真基礎(chǔ)、數(shù)理統(tǒng)計分析、概率統(tǒng)計分析和外部接口設(shè)計。本書覆蓋數(shù)學(xué)計算與仿真分析的各個方面,既有MATLAB基本函數(shù)的介紹,也有用MATLAB編寫的專門計算程序,利用函數(shù)解決不同的應(yīng)用問題,實例豐富而典型,包括兩章經(jīng)典實例,將重點知識進(jìn)行融入應(yīng)用,全書通過近400個實例指導(dǎo)讀者有的放矢地進(jìn)行學(xué)習(xí)。
MATLAB是目前國內(nèi)應(yīng)用為廣泛的工程計算軟件,有龐大的讀者群和潛在應(yīng)用群。
1)本書以MATLAB 2016新版為平臺,內(nèi)容涵蓋了MATLAB程序設(shè)計、圖形繪制、圖形圖像處理、高等數(shù)學(xué)計算、用戶界面設(shè)計、Simulink仿真、數(shù)理統(tǒng)計分析及控制系統(tǒng)分析設(shè)計實例等,使讀者能夠全面了解MATLAB 2016在諸多領(lǐng)域中的高級應(yīng)用
2)本書在理論闡述的同時穿插介紹涉及該知識點的應(yīng)用實例(多達(dá)400個),以多層次實例深入淺出地演示知識點的綜合應(yīng)用。即學(xué)即用,融會貫通。
3)本書對MATLAB軟件應(yīng)用難點均配有源程序代碼及對應(yīng)注釋文字說明,降低讀者學(xué)習(xí)軟件的難度,提升人機(jī)互動的水平。
MATLAB是美國MathWorks公司出品的一個優(yōu)秀的數(shù)學(xué)計算軟件,其強(qiáng)大的數(shù)值計算能力和數(shù)據(jù)可視化能力令人震撼。經(jīng)過多年的發(fā)展,MATLAB已經(jīng)發(fā)展到了2016a版本,功能日趨完善。MATLAB已經(jīng)發(fā)展成為多種學(xué)科必不可少的計算工具,成為自動控制、應(yīng)用數(shù)學(xué)、信息與計算科學(xué)等專業(yè)大學(xué)生與研究生必須掌握的基本技能。
目前,MATLAB已經(jīng)得到了很大程度的普及,它不僅成為各大公司和科研機(jī)構(gòu)的專用軟件,在各高校中同樣也得到了普及。越來越多的學(xué)生借助MATLAB來學(xué)習(xí)數(shù)學(xué)分析、圖像處理、仿真分析。
為了幫助零基礎(chǔ)讀者快速掌握MATLAB的使用方法,本書從基礎(chǔ)著手,詳細(xì)對MATLAB的基本函數(shù)功能進(jìn)行介紹,同時根據(jù)不同學(xué)科讀者的需求,作者在數(shù)學(xué)計算、圖形繪制、仿真分析、最優(yōu)化設(shè)計和外部接口編程等不同的領(lǐng)域進(jìn)行了詳細(xì)的介紹,讓讀者入寶山而滿載歸。
本書提供了使用MATLAB解決數(shù)學(xué)問題的實踐性指導(dǎo),它基于MATLAB 2016版,內(nèi)容由淺入深,特別是本書對每一條命令的使用格式都作了詳細(xì)而又簡單明了的說明,并為用戶提供了大量的例題加以說明其用法,因此,對于初學(xué)者自學(xué)是很有幫助的;同時,又對數(shù)學(xué)中的一些深入問題如優(yōu)化理論的算法介紹以及各種數(shù)學(xué)問題如概率問題、數(shù)理統(tǒng)計問題等進(jìn)行了較為詳細(xì)的介紹,因此,該書也可作為科技工作者的科學(xué)計算工具書。
本書共16章,分貝介紹了MATLAB的入門,基礎(chǔ)知識,程序設(shè)計基礎(chǔ),圖形繪制,圖形與圖像的處理,高等數(shù)學(xué)計算,方程組的運算,符號運算,優(yōu)化設(shè)計,圖形用戶界面設(shè)計, Simulink仿真基礎(chǔ),數(shù)理統(tǒng)計分析,概率統(tǒng)計分析,外部接口設(shè)計,控制系統(tǒng)分析設(shè)計實例,健康女性的數(shù)據(jù)分析設(shè)計實例等內(nèi)容。
MATLAB本身是一個極為豐富的資源庫。因此,對大多數(shù)用戶來說,一定有部分MATLAB內(nèi)容看起來是“透明”的,也就是說用戶能明白其全部細(xì)節(jié);另有些內(nèi)容表現(xiàn)為“灰色”,即用戶雖明白其原理但是對于具體的執(zhí)行細(xì)節(jié)不能完全掌握;還有些內(nèi)容則“全黑”,也就是用戶對它們一無所知。本書雖僅涉及MATLAB在各方面應(yīng)用的一小部分,但就是這部分內(nèi)容就已經(jīng)構(gòu)成了對本書作者的嚴(yán)重挑戰(zhàn)。作者在寫稿過程中遇到過不少困惑,通過再學(xué)習(xí)和向?qū)<艺埥屉m克服了它們的障礙,但仍難免錯誤和偏見。本書所有算例均由作者在計算機(jī)上驗證。在此,本書作者肯切期望得到各方面專家和廣大讀者的指教。
本書由華東交通大學(xué)教材基金資助,華東交通大學(xué)的李津和劉濤主編, 華東交通大學(xué)的沈曉玲、朱愛華、黃志剛、鐘禮東參與部分章節(jié)編著,其中李津執(zhí)筆編寫了第1~4章,劉濤執(zhí)筆編寫了第5~8章,沈曉玲執(zhí)筆編寫了第9~10章,朱愛華執(zhí)筆編寫了第11~12章,黃志剛執(zhí)筆編寫了第13~14章,鐘禮東執(zhí)筆編寫了第15~16章。閆聰聰、劉昌麗、康士廷、楊雪靜、李兵、宮鵬涵、孫立明等參與了部分章節(jié)的內(nèi)容整理,在此對他們的付出表示感謝。
讀者在學(xué)習(xí)過程中,若發(fā)現(xiàn)錯誤,編者將不勝感激。歡迎加入三維書屋EDA圖書學(xué)習(xí)交流群QQ交流探討。也可以登錄本QQ交流群索取本書配套資源包含全書所有實例的源文件,實例個數(shù)多達(dá) 400 個。
作 者
第1章 MATLAB入門
1.1 MATLAB中的科學(xué)計算概述
1.1.1 MATLAB的發(fā)展歷程
1.1.2 MATLAB系統(tǒng)
1.2 MATLAB 2016的用戶界面
1.2.1 標(biāo)題欄
1.2.2 功能區(qū)
1.2.3 工具欄
1.2.4 命令窗口
1.2.5 歷史窗口
1.2.6 當(dāng)前目錄窗口
1.2.7 工作空間管理窗口
1.2.8 圖像窗口
1.3 MATLAB內(nèi)容及查找
1.3.1 MATLAB的搜索路徑
1.3.2 擴(kuò)展MATLAB的搜索路徑
1.4 MATLAB的幫助系統(tǒng)
1.4.1 聯(lián)機(jī)幫助系統(tǒng)
1.4.2 幫助命令
1.4.3 聯(lián)機(jī)演示系統(tǒng)
1.4.4 網(wǎng)絡(luò)資源
第2章 MATLAB基礎(chǔ)知識
2.1 MATLAB命令的組成
2.1.1 基本符號
2.1.2 功能符號
2.1.3 常用指令
2.1.4 基本數(shù)學(xué)函數(shù)
2.2 數(shù)據(jù)類型
2.2.1 變量與常量
2.2.2 數(shù)值
2.2.3 字符串
2.2.4 向量
2.2.5 矩陣
2.2.6 單元型變量
2.2.7 結(jié)構(gòu)型變量
2.3 運算符
2.3.1 算術(shù)運算符
2.3.2 關(guān)系運算符
2.3.3 邏輯運算符
2.4 數(shù)值運算
2.4.1 矩陣運算
2.4.2 向量運算
2.5 M文件
2.5.1 命令式文件
2.5.2 函數(shù)式文件
2.6 操作實例——魔方陣函數(shù)
第3章 程序設(shè)計基礎(chǔ)
3.1 MATLAB程序設(shè)計
3.1.1 表達(dá)式、表達(dá)式語句與賦值語句
3.1.2 程序結(jié)構(gòu)
3.1.3 程序流程控制指令
3.1.4 人機(jī)交互語句
3.1.5 MATLAB程序的調(diào)試命令
3.2 函數(shù)句柄
3.2.1 函數(shù)句柄的創(chuàng)建與顯示
3.2.2 函數(shù)句柄的調(diào)用與操作
3.3 函數(shù)變量及其作用域
3.4 子函數(shù)與私有函數(shù)
3.5 程序設(shè)計的輔助函數(shù)
3.6 程序設(shè)計優(yōu)化
3.7 文件調(diào)用紀(jì)錄
3.7.1 profile函數(shù)
3.7.2 調(diào)用記錄結(jié)果的顯示
3.8 操作實例——編寫一個學(xué)生成績評定函數(shù)
第4章 二維圖形繪制
4.1 二維曲線的繪制
4.1.1 繪制二維圖形
4.1.2 多圖形顯示
4.1.3 函數(shù)圖形的繪制
4.2 圖形屬性設(shè)置
4.2.1 圖形窗口的屬性
4.2.2 坐標(biāo)系與坐標(biāo)軸
4.2.3 圖形注釋
4.3 三維繪圖
4.3.1 三維曲線繪圖命令
4.3.2 三維網(wǎng)格命令
4.3.3 三維曲面命令
4.3.4 柱面與球面
4.3.5 三維圖形等值線
4.4 三維圖形修飾處理
4.4.1 視角處理
4.4.2 顏色處理
4.4.3 光照處理
4.5 操作實例——繪制函數(shù)的三維視圖
第5章 圖形與圖像的處理
5.1 向量圖形
5.2 圖像處理及動畫演示
5.2.1 圖像的讀寫
5.2.2 圖像的顯示及信息查詢
5.2.3 動畫演示
5.3 操作實例——曲線的繪制
第6章 高等數(shù)學(xué)計算
6.1 數(shù)列
6.1.1 數(shù)列求和
6.1.2 數(shù)列求積
6.2 級數(shù)
6.2.1 級數(shù)求和
6.3 極限、導(dǎo)數(shù)
6.3.1 極限
6.3.2 導(dǎo)數(shù)
6.4 積分
6.4.1 定積分與廣義積分
6.4.2 不定積分
6.4.3 多重積分
6.5 積分變換
6.5.1 傅里葉(Fourier)積分變換
6.5.2 傅里葉(Fourier)逆變換
6.5.3 快速傅里葉(Fourier)變換
6.5.4 拉普拉斯(Laplace)變換
6.5.5 拉普拉斯(ilaplace)逆變換
6.6 復(fù)雜函數(shù)
6.6.1 泰勒(Taylor)展開
6.6.2 傅里葉(Fourier)展開
6.7 操作實例——高斯脈沖時域與頻域轉(zhuǎn)換
第7章 方程組
7.1 方程的運算
7.1.1 方程組的介紹
7.1.2 方程式的解
7.1.3 線性方程有解
7.2 線性方程組求解
7.2.1 線性方程組定義
7.2.2 利用矩陣的基本運算
7.2.3 利用矩陣分解法求解
7.2.4 非負(fù)最小二乘解
7.3 四元一次方程組求解
7.3.1 利用矩陣的逆
7.3.2 利用行階梯形求解
7.3.3 利用矩陣分解求解
7.4 非線性方程(組)的求解
7.4.1 非線性方程的求解
7.4.2 非線性方程組的求解
7.5 常微分方程的數(shù)值解法
7.5.1 歐拉(Euler)方法
7.5.2 龍格-庫塔(Runge Kutta)方法
7.5.3 龍格-庫塔(Runge-Kutta)方法解剛性問題
7.6 偏微分方程
7.6.1 介紹
7.6.2 區(qū)域設(shè)置及網(wǎng)格化
7.6.3 邊界條件設(shè)置
7.6.4 解橢圓型方程
7.6.5 解拋物型方程
7.6.6 解雙曲型方程
7.6.7 解特征值方程
7.6.8 解非線性橢圓型方程
7.7 操作實例——帶雅克比矩陣的非線性方程組求解
第8章 符號運算
8.1 符號與數(shù)值
8.1.1 符號與數(shù)值間的轉(zhuǎn)換
8.1.2 符號與數(shù)值間的精度設(shè)置
8.2 符號矩陣
8.2.1 符號矩陣的創(chuàng)建
8.2.2 符號矩陣的其他運算
8.2.3 符號多項式的簡化
8.3 多元函數(shù)分析
8.3.1 雅可比矩陣
8.3.2 實數(shù)矩陣的梯度
8.4 操作實例——希爾伯特矩陣
第9章 優(yōu)化設(shè)計
9.1 優(yōu)化問題概述
9.1.1 背景
9.1.2 最優(yōu)化問題的實現(xiàn)
9.1.3 基本概念及分支
9.2 MATLAB中的工具箱
9.2.1 MATLAB中常用的工具箱
9.2.2 工具箱和工具箱函數(shù)的查詢
9.3 優(yōu)化工具箱中的函數(shù)
9.4 優(yōu)化函數(shù)的變量
9.5 參數(shù)設(shè)置
9.5.1 參數(shù)值
9.5.2 optimset函數(shù)
9.5.3 optimget函數(shù)
9.6 模型輸入時需要注意的問題
9.7 @函數(shù)
9.8 優(yōu)化算法介紹
9.8.1 參數(shù)優(yōu)化問題
9.8.2 無約束優(yōu)化問題
9.8.3 擬牛頓法實現(xiàn)
9.8.4 最小二乘優(yōu)化
9.8.5 非線性最小二乘實現(xiàn)
9.8.6 約束優(yōu)化
9.8.7 SQP實現(xiàn)
9.9 線性規(guī)劃
9.9.1 表述形式
9.9.2 MATLAB求解
9.10 操作實例——最小化問題
第10章 圖形用戶界面設(shè)計
10.1 用戶界面概述
10.1.1 用戶界面對