MATLAB仿真建模实用教程

2025-8-22 45 8/22

MATLAB仿真建模实用教程

作者:潘巍

页数:329

出版社:清华大学出版社

出版日期:2023

ISBN:9787302628460

高清校对版pdf(带目录)

前往页尾底部查看PDF电子书

内容简介

本书教学演示实例丰富(如数据统计与分析、数字信号处理、数字图像处理、深度学习等)。本教材的特色就是能够让学生在一门课中用一本书完成对MATLAB的学习和对仿真建模的学习。在这个过程中,会出现很多不同领域的教学演示实例(如数据统计与分析、数字信号处理、数字图像处理、深度学习等)。通过本课程的学习,学生已基本掌握MATLAB编程技巧、建模方法,以及MATLAB在近年来的一些热点领域的应用,将来在日后相关课程和科研的学习中,他们会更愿意用MATLAB来完成相关工作。

作者简介

潘巍,首都师范大学,副教授,47,博士毕业于中科院自动化所,在首都师范大学任教,主讲仿真建模、模式识别、数字图像处理等课程,积累了丰富的教学素材,多次被评为校级优秀主讲教师、校级十佳教师,及市级教学演讲片断特等奖。

本书特色

(1)同时兼顾理论深度和应用实践,定位于培养拥有一定理论基础的工程型人才。
(2)将实际项目写入教材,且贯穿始终,能让学生对仿真建模与MATLAB语言在实际项目中的应用有直观的、完整的了解。
(3)教学内容分层次编写,教师和学生可根据需要进行选择。
完成对MATLAB的学习和对仿真建模的学习,教学演示实例丰富(如数据统计与分析、数字信号处理、数字图像处理、深度学习等)。

目录

第1章MATLAB入门/1

1.1MATLAB简介1

1.1.1MATLAB的由来1

1.1.2MATLAB的发展1

1.1.3MATLAB的特点2

1.1.4MATLAB的组成6

1.1.5Simulink简介7

1.2MATLAB R2021a的开发环境9

1.2.1开发环境概述9

1.2.2命令行窗口10

1.2.3工作区12

1.2.4命令历史记录12

1.2.5工作目录13

1.2.6编辑器13

1.2.7搜索路径14

1.3MATLAB R2021a的帮助15

1.3.1利用命令行窗口获得帮助16

1.3.2利用帮助浏览器获得帮助17

第2章MATLAB的数据与数据类型/19

2.1数据的基本概念19

2.1.1标量与向量19

2.1.2数组与矩阵19

2.1.3实数与复数19

2.1.4常量与变量20

2.1.5变量的命名规则20

2.2数据的类型21

2.2.1使用数据时的注意事项21

2.2.2数值型24

2.2.3字符型28

2.2.4逻辑型34MATLAB仿真建模实用教程目录2.2.5结构体型36

2.2.6元胞型37

2.3数据类型的转换39

2.3.1数值型数据之间的类型转换39

2.3.2非负整数的进制转换39

2.3.3数值型与字符型数据的转换40

2.3.4元胞型与其他数据类型的转换40

第3章数组、矩阵及其运算/42

3.1数组的创建42

3.1.1数组的创建方法42

3.1.2特殊数组的创建43

3.1.3数组的大小45

3.1.4数组的访问45

3.1.5数组的组合、扩充与收缩、拆分、重组和缩放46

3.2数组的运算50

3.2.1关系运算50

3.2.2逻辑运算51

3.2.3四则运算52

3.2.4集合运算52

3.3矩阵的运算53

3.3.1加减运算54

3.3.2乘法运算54

3.3.3除法运算57

3.3.4乘方运算58

3.4矩阵的求值运算59

3.4.1计算矩阵的行列式值59

3.4.2计算矩阵的逆与伪逆59

3.4.3计算矩阵的秩60

3.4.4计算矩阵的迹60

3.4.5计算向量和矩阵的范数60

3.4.6计算矩阵的条件数62

3.4.7计算矩阵的最大无关组62

3.4.8计算矩阵的特征值与特征向量63

3.4.9计算矩阵的正交基64

3.5矩阵的特殊运算64

3.5.1矩阵的转置64

3.5.2矩阵的旋转64

3.5.3抽取对角线元素65

3.5.4抽取上、下三角阵66

3.6特殊矩阵66

3.6.1希尔伯特矩阵66

3.6.2范德蒙德矩阵67

3.6.3特普利茨矩阵67

3.6.4伴随矩阵68

3.6.5帕斯卡矩阵69

3.6.6稀疏矩阵69

3.7矩阵的分解71

3.7.1三角分解71

3.7.2奇异值分解72

3.7.3正交分解73

3.7.4Cholesky分解74

3.7.5Schur分解75

3.7.6特征值分解75

3.8数组和矩阵运算示例76

第4章MATLAB的程序设计/79

4.1程序控制结构79

4.1.1顺序结构80

4.1.2选择结构81

4.1.3循环结构85

4.2程序的流程控制87

4.2.1continue命令88

4.2.2break命令88

4.2.3return命令89

4.3try瞔atch结构89

4.4M文件90

4.4.1M文件的命名规则90

4.4.2脚本文件90

4.4.3函数文件91

4.5函数类型91

4.5.1主函数92

4.5.2子函数92

4.5.3嵌套函数93

4.5.4私有函数96

4.5.5重载函数98

4.5.6匿名函数98

4.5.7利用全局变量传递参数99

4.6程序的优化99

4.6.1用数组运算取代循环100

4.6.2调用MATLAB函数100

4.6.3使用循环时的注意事项101

4.7实例分析102

第5章MATLAB的数值计算/108

5.1多项式的计算108

5.1.1生成多项式108

5.1.2多项式的加减乘除109

5.1.3多项式的求导109

5.1.4多项式的求值110

5.1.5多项式的求根110

5.2插值计算111

5.2.1一维数据的插值111

5.2.2二维数据的插值113

5.2.3一般分布的二维数据插值115

5.3曲线拟合116

5.3.1多项式拟合117

5.3.2最小二乘拟合118

5.4数据分析和统计120

5.4.1基本的数据分析和统计120

5.4.2协方差和相关系数126

5.5概率统计128

5.5.1随机变量的分布与数字特征128

5.5.2参数估计131

5.5.3假设检验132

5.5.4方差分析133

5.6数值积分135

5.6.1一元函数的数值积分135

5.6.2二元函数的数值积分136

5.7数值微分137

5.8方程的解138

5.8.1线性方程组的解138

5.8.2非线性方程的解140

5.8.3非线性方程组的解141

5.8.4无约束最优化问题141

5.8.5有约束最优化问题144

第6章MATLAB的文件操作/145

6.1对Excel数据表的操作145

6.1.1用专用函数对Excel数据表进行操作145

6.1.2用readcell()和readmatrix()读取表格149

6.2对图像文件的操作150

6.2.1检查图像文件的相关信息150

6.2.2读取图像文件151

6.2.3保存图像文件152

6.3对音频和视频文件的操作153

6.3.1检查音频和视频文件的相关信息153

6.3.2读取音频和视频文件154

6.3.3保存音频和视频文件155

6.4对ASCII文件的操作155

6.4.1读取ASCII文件155

6.4.2写入ASCII文件159

6.5对MAT文件的操作160

6.5.1读取MAT文件160

6.5.2写入MAT文件161

6.6用低端的I/O函数操作文件162

6.6.1打开和关闭文件162

6.6.2逐行读取文本文件163

6.6.3读取二进制文件164

6.6.4写入二进制文件165

6.6.5控制文件句柄165

6.6.6应用实例: 关键字检索166

第7章MATLAB的绘图/168

7.1基本二维绘图168

7.2多图绘制与图形修饰172

7.2.1多图绘制172

7.2.2图形属性的设置176

7.2.3图形的辅助说明178

7.2.4设置坐标轴网格与坐标框181

7.3特殊二维绘图命令183

7.3.1绘制区域图184

7.3.2绘制条形图185

7.3.3绘制罗盘图187

7.3.4绘制彗星图187

7.3.5绘制等高线图188

7.3.6绘制误差棒图189

7.3.7绘制速度向量图和向量场图189

7.3.8绘制直方图和饼图191

7.3.9绘制填充图和伪彩色图192

7.3.10绘制火柴杆图和阶梯图193

7.3.11绘制极坐标图和对数坐标图194

7.3.12fplot绘图196

7.4三维绘图命令197

7.4.1派生的三维绘图命令197

7.4.2mesh三维网格绘图198

7.4.3surf三维曲面绘图199

7.4.4标准三维曲面命令202

7.5三维绘图的修饰203

7.5.1改变视角203

7.5.2设置光源206

7.5.3设置色图207

第8章图形用户界面的设计与实现/210

8.1图形对象基础211

8.1.1图形对象211

8.1.2图形对象句柄213

8.1.3图形对象属性的获取与设置213

8.2App基础217

8.2.1启动App217

8.2.2布局编辑器218

8.2.3保存并运行App218

8.3设计App1: 曲线绘制及属性修改系统219

8.3.1任务11: 使用菜单编辑器进行App设计219

8.3.2任务12: 在App中共享数据220

8.3.3任务13: 为设计好的App编写回调函数222

8.3.4任务14: 使用文本框、编辑框和按钮实现用户输入参数224

8.3.5任务15: 使用滑块实现用户输入参数226

8.3.6任务16: 在不同的坐标轴上绘图227

8.3.7任务17: App启动时的初始化229

8.3.8任务18: 利用复选框控件实现加网格功能229

8.4设计App2: 学生成绩查询系统230

8.4.1MATLAB预定义的对话框231

8.4.2任务21: 使用uigetfile获取学生成绩表的路径和文件名231

8.4.3任务22: 使用列表框显示学生姓名232

8.4.4任务23: 使用下拉框显示课程名单233

8.4.5任务24: 从列表框中选择要查看的学生姓名234

8.4.6任务25: 在表控件中显示查询结果236

8.5设计App3: 多App窗口应用与数据传参236

8.6打包、共享和安装App240

第9章Simulink概述/242

9.1启动Simulink242

9.2模型窗口介绍243

9.3建立模型243

9.3.1选择模块243

9.3.2模块的操作244

9.3.3信号线的操作246

9.3.4对模型进行注释248

9.3.5模型的缩放248

9.4保存和运行模型249

9.5查看仿真结果249

9.5.1示波器参数的设置249

9.5.2信号的组合249

9.6向量和矩阵252

9.7保存和打开已有模型253

9.8处理大的模型253

9.9常用的仿真参数配置254

9.9.1Solver求解器254

9.9.2Solver选项卡的参数设置256

9.9.3Data Import/Export选项卡的参数设置259

9.9.4Diagnostics选项卡的参数设置260

第10章常用模块库及数据的导入与导出/262

10.1Simulink基本库简介262

10.2Sources信源库与外部数据的导入263

10.2.1Sources信源库介绍263

10.2.2从外部导入数据265

10.2.3从工作区导入模块参数268

10.3Sinks信宿库与仿真数据的导出269

10.3.1Sinks信宿库介绍269

10.3.2Floating Scope悬浮示波器270

10.3.3仿真数据的导出272

10.4User睤efined Functions库274

第11章动态系统的仿真与分析/277

11.1连续系统277

11.1.1连续模块库介绍277

11.1.2Integrator积分器278

11.1.3采用积分器进行连续系统的仿真281

11.1.4采用传递函数进行连续系统的仿真284

11.1.5采用零布点模块进行连续系统的仿真285

11.1.6采用状态方程进行连续系统的仿真286

11.1.7四种连续系统仿真方法的比较287

11.2离散系统287

11.2.1离散模块库介绍287

11.2.2Unit Delay单位延迟模块289

11.2.3采用Unit Delay进行离散系统的仿真289

11.2.4采用传递函数进行离散系统的仿真290

11.2.5采用状态空间进行离散系统的仿真291

11.2.6零阶保持器291

11.2.7多速率的离散系统291

11.3命令行仿真292

11.3.1使用sim命令对系统进行仿真293

11.3.2获取和设置仿真参数296

11.3.3确定模型的状态297

11.3.4寻找模型的平衡点298

11.3.5模型的线性化301

第12章子系统/304

12.1子系统的建立与基本操作304

12.1.1建立子系统304

12.1.2子系统的基本操作307

12.2封装子系统307

12.2.1封装子系统的步骤307

12.2.2使用封装子系统315

12.2.3修改封装子系统316

12.3模块库技术316

12.3.1建立模块库316

12.3.2库模块与引用块的关联318

12.3.3在库浏览器中加入自建模块库319

12.4Simulink自带的子系统模块库321

12.4.1Enabled使能子系统322

12.4.2Trigger触发子系统323

12.4.3触发使能子系统323

12.4.4Switch Case子系统和Switch Case Action Subsystem子系统325

12.4.5If系统和If Action Subsystem子系统327

PDF更新中
- THE END -

非特殊说明,本博所有文章均为博主原创。