《仿真建模与MATLAB实用教程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:潘巍,章兴武著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302411963
  • 页数:353 页
图书介绍:“仿真建模与MATLAB”课程是一门综合的应用技术课程,注重培养学生的科学计算、数学建模、系统设计和数值分析等能力。作者在总结近几年的教学讲义和实验素材的基础上,在参考和分析其他院校的有关教材和资料后编写而成。

第1章 MATLAB入门 1

1.1 MATLAB简介 1

1.1.1 MATLAB的由来 1

1.1.2 MATLAB的发展 1

1.1.3 MATLAB语言的特点 2

1.1.4 MATLAB的组成 6

1.1.5 Simulink简介 8

1.2 MATLAB的开发环境 9

1.2.1 开发环境概览 9

1.2.2 命令窗口 10

1.2.3 工作空间 13

1.2.4 历史命令 14

1.2.5 工作目录 14

1.2.6 编辑器 15

1.2.7 设置路径 15

1.3 MATLAB的在线帮助 17

1.3.1 利用命令窗口获得帮助 17

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

第2章 MATLAB的数据与数据类型 21

2.1 数据的基本概念 21

2.1.1 标量与向量 21

2.1.2 数组与矩阵 21

2.1.3 实数与复数 21

2.1.4 常量与变量 22

2.1.5 变量的命名规则 22

2.2 数据的类型 23

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

2.2.2 数值型 26

2.2.3 字符型 30

2.2.4 逻辑型 35

2.2.5 结构体型 38

2.2.6 元胞型 39

2.3 数据类型的转换 40

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

2.3.2 非负整数的进制转换 41

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

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

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

3.1 数组的创建 44

3.1.1 数组的创建 44

3.1.2 特殊数组的创建 45

3.1.3 数组的大小 47

3.1.4 数组的访问 47

3.1.5 数组的组合、扩充、拆分与重组 48

3.2 数组的运算 51

3.2.1 关系运算 51

3.2.2 逻辑运算 52

3.2.3 数组的四则运算 53

3.2.4 数组的集合运算 54

3.3 矩阵的运算 55

3.3.1 加减运算 55

3.3.2 乘法运算 55

3.3.3 除法运算 58

3.3.4 乘方运算 59

3.4 矩阵的求值运算 60

3.4.1 计算矩阵的行列式值 60

3.4.2 计算矩阵的逆与伪逆 61

3.4.3 计算矩阵的秩 61

3.4.4 计算矩阵的迹 61

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

3.4.6 计算矩阵的条件数 63

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

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

3.4.9 计算矩阵的正交基 65

3.5 矩阵的特殊运算 65

3.5.1 矩阵的转置 65

3.5.2 矩阵的旋转 66

3.5.3 抽取对角线元素 67

3.5.4 抽取上下三角阵 68

3.6 特殊矩阵 68

3.6.1 希尔伯特矩阵 68

3.6.2 范德蒙德矩阵 69

3.6.3 特普利茨矩阵 69

3.6.4 伴随矩阵 70

3.6.5 帕斯卡矩阵 70

3.6.6 稀疏矩阵 71

3.7 矩阵的分解 73

3.7.1 三角分解 73

3.7.2 奇异值分解 74

3.7.3 正交分解 75

3.7.4 Cholesky分解 76

3.7.5 Schur分解 76

3.7.6 特征值分解 77

第4章 MATLAB的程序设计 78

4.1 程序控制结构 79

4.1.1 顺序结构 79

4.1.2 选择结构 80

4.1.3 循环结构 85

4.2 程序的流程控制 87

4.2.1 continue命令 87

4.2.2 break命令 88

4.2.3 return命令 88

4.3 try-catch结构 89

4.4 M文件 90

4.4.1 M文件的命名规则 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 程序的优化 100

4.6.1 用数组运算取代循环 100

4.6.2 尽量调用MATLAB函数 101

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

4.7 实例分析 103

第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 多项式的求根 111

5.2 插值计算 111

5.2.1 一维数据的插值 112

5.2.2 二维数据的插值 113

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

5.3 曲线拟合 118

5.3.1 多项式拟合 118

5.3.2 最小二乘拟合 119

5.4 数据分析和统计 122

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

5.4.2 协方差和相关系数 129

5.5 概率统计 130

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

5.5.2 参数估计 133

5.5.3 假设检验 134

5.5.4 方差分析 136

5.6 数值积分 138

5.6.1 一元函数的数值积分 138

5.6.2 二元函数的数值积分 139

5.7 数值微分 140

5.8 方程的解 141

5.8.1 线性方程组的解 141

5.8.2 非线性方程的解 143

5.8.3 非线性方程组的解 144

5.8.4 无约束最优化问题 145

5.8.5 有约束最优化问题 147

第6章 MATLAB的文件操作 148

6.1 对Excel数据表和Lotus 1-2-3数据表的操作 148

6.1.1 对Excel数据表的操作 148

6.1.2 对Lotus 1-2-3数据表的操作 152

6.2 对图像文件的操作 153

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

6.2.2 读取图像文件 154

6.2.3 保存图像文件 155

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

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

6.3.2 读取音频和视频文件 158

6.3.3 保存音频和视频文件 159

6.4 对ASCII文件的操作 160

6.4.1 读取ASCII文件 161

6.4.2 写入ASCII文件 165

6.5 对MAT文件的操作 166

6.5.1 读取MAT文件 166

6.5.2 写入MAT文件 167

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

6.6.1 打开和关闭文件 168

6.6.2 逐行读取文本文件 169

6.6.3 读取二进制文件 170

6.6.4 写入二进制文件 171

6.6.5 控制文件句柄 171

第7章 MATLAB的绘图 173

7.1 基本二维绘图 173

7.2 多图绘制与图形修饰 177

7.2.1 多图绘制 177

7.2.2 图形属性的设置 181

7.2.3 图形的辅助说明 183

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

7.3 特殊二维绘图命令 189

7.3.1 绘制区域图 190

7.3.2 绘制条形图 192

7.3.3 绘制罗盘图 193

7.3.4 绘制彗星图 194

7.3.5 绘制等高线图 194

7.3.6 绘制误差棒图 195

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

7.3.8 绘制直方图和饼图 197

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

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

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

7.3.12 ezplot和fplot绘图 201

7.4 三维绘图命令 204

7.4.1 派生的三维绘图命令 204

7.4.2 mesh三维网格绘图 205

7.4.3 surf三维曲面绘图 207

7.4.4 标准三维曲面命令 209

7.5 三维绘图的修饰 210

7.5.1 改变视角 210

7.5.2 设置光源 213

7.5.3 设置色图 214

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

8.1 图形对象基础 218

8.1.1 图形对象 218

8.1.2 图形对象句柄 219

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

8.2 GUI基础 224

8.2.1 启动GUI 224

8.2.2 Layout编辑器 224

8.2.3 保存并运行GUI 226

8.3 设计GUI:曲线绘制及属性修改系统 226

8.3.1 任务1-1:使用菜单编辑器进行GUI设计 226

8.3.2 任务1-2:为设计好的GUI编写回调函数 229

8.3.3 任务1-3:使用文本框、编辑框和按钮实现用户输入参数 234

8.3.4 任务1-4:使用Slider实现用户输入参数 237

8.3.5 任务1-5:在不同的坐标轴上绘图 237

8.3.6 任务1-6:利用Check Box控件实现加网格和去边框功能 240

8.4 设计GUI:学生成绩查询系统 242

8.4.1 MATLAB预定义的对话框 242

8.4.2 任务2-1:使用uigetfile获取学生成绩表的路径和文件名 242

8.4.3 任务2-2:使用Listbox显示学生姓名 244

8.4.4 任务2-3:使用Pop-up Menu显示课程名单 245

8.4.5 任务2-4.:从列表框中选择要查看的学生姓名 246

8.4.6 任务2-5:在表控件中显示查询结果 248

8.4.7 任务2-6:使用图标设计器设计图标 250

8.4.8 任务2-7:使用工具栏实现保存文件功能 251

8.5 设计GUI:使用ActiveX控件 252

第9章 Simulink概述 255

9.1 启动Simulink 255

9.2 模型窗口介绍 256

9.3 建立模型 257

9.3.1 选择模块 257

9.3.2 模块的操作 257

9.3.3 信号线的操作 261

9.3.4 对模型进行注释 263

9.3.5 模型的缩放 263

9.4 运行模型 264

9.5 查看仿真结果 264

9.5.1 示波器参数的设置 264

9.5.2 信号的组合 265

9.6 向量和矩阵 268

9.7 保存和打开已有模型 269

9.8 处理大的模型 269

9.9 常用的仿真参数配置 270

9.9.1 Solver求解器 271

9.9.2 Solver选项卡的参数设置 272

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

9.9.4 Optimization选项卡的参数设置 276

9.9.5 Diagnostics选项卡的参数设置 277

第10章 常用模块库及数据的导入导出 279

10.1 Simulink基本库简介 279

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

10.2.1 Sources信源库介绍 280

10.2.2 外部数据的导入 282

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

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

10.3.1 Sinks信宿库介绍 288

10.3.2 Floating Scope悬浮示波器 289

10.3.3 仿真数据的导出 291

10.4 User-Defined Functions库 293

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

11.1 连续系统 296

11.1.1 连续模块库介绍 296

11.1.2 Integrator积分器 297

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

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

11.1.5 采用零-极点模块进行连续系统的仿真 304

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

11.1.7 4种连续系统仿真方法的比较 306

11.2 离散系统 307

11.2.1 离散模块库介绍 307

11.2.2 Unit Delay单位延迟模块 308

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

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

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

11.2.6 零阶保持器 311

11.2.7 多速率的离散系统 312

11.3 命令行仿真 313

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

11.3.2 获取和设置仿真参数 316

11.3.3 确定模型的状态 318

11.3.4 寻找模型的平衡点 319

11.3.5 模型的线性化 322

第12章 子系统 325

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

12.1.1 建立子系统 325

12.1.2 子系统的基本操作 328

12.2 封装子系统 328

12.2.1 封装子系统 328

12.2.2 使用封装子系统 337

12.2.3 修改封装子系统 338

12.3 模块库技术 338

12.3.1 建立模块库 338

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

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

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

12.4.1 Enable使能子系统 344

12.4.2 Trigger触发子系统 345

12.4.3 触发使能子系统 346

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

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