第1章 MATLAB R2010a简介 1
1.1 MATLAB简介 1
1.1.1 MATLAB概述 1
1.1.2 MATLAB的基本功能 2
1.1.3 MATLAB的更新 3
1.2 MATLAB R2010a用户界面 3
1.2.1 启动MATLAB R2010a 4
1.2.2 MATLAB R2010a的主界面 4
1.2.3 MATLAB R2010a的主菜单及其功能 4
1.2.4 MATLAB R2010a的窗口 7
1.3 MATLAB R2010a的路径搜索 9
1.3.1 MATLAB R2010a的当前路径 9
1.3.2 MATLAB R2010a的路径搜索 9
1.4 习题 11
第2章 基本使用方法 12
2.1 简单的数学运算 12
2.1.1 最简单的计算器使用法 12
2.1.2 MATLAB中的常用数学函数 13
2.1.3 MATLAB的数学运算符 16
2.1.4 标点符号的使用 17
2.2 常用的操作命令和快捷键 18
2.3 MATLAB R2010a的数据类型 19
2.3.1 整数 19
2.3.2 浮点数 21
2.3.3 复数 22
2.3.4 逻辑变量 23
2.3.5 各种数据类型之间的转换 26
2.3.6 数据类型操作函数 26
2.3.7 变量 27
2.3.8 系统预定义的特殊变量 28
2.4 MATLAB R2010a的运算符 30
2.4.1 关系运算符 30
2.4.2 逻辑运算符 30
2.4.3 运算符优先级 31
2.5 MATLAB的一些基础函数 32
2.5.1 位操作函数 32
2.5.2 逻辑运算函数 33
2.5.3 集合函数 33
2.5.4 时间与日期函数 34
2.6 MATLAB脚本文件 36
2.6.1 脚本文件的用法 36
2.6.2 块注释 37
2.6.3 代码单元 37
2.7 习题 37
第3章 数组和向量 39
3.1 MATLAB数组 39
3.2 创建数组 40
3.3 数组操作 41
3.3.1 获取数组中的元素 41
3.3.2 从数组中移除元素 42
3.3.3 数组操作 42
3.4 应用实例——计算土壤体积 49
3.5 MATLAB向量 51
3.5.1 创建向量 51
3.5.2 向量尺寸 52
3.5.3 向量索引 52
3.5.4 缩短向量 53
3.5.5 向量操作 54
3.6 应用实例——力与力矩 61
3.7 习题 62
第4章 MATLAB的数学运算 64
4.1 多项式与插值 64
4.1.1 多项式的表示 64
4.1.2 多项式的四则运算 64
4.1.3 多项式的其他运算 66
4.1.4 数据插值 68
4.2 函数运算 71
4.2.1 函数的表示 71
4.2.2 数学函数图像的绘制 72
4.2.3 函数极值 73
4.2.4 函数求解 76
4.2.5 数值积分 78
4.2.6 含参数函数的使用 80
4.3 微分方程 82
4.3.1 常微分方程初值问题 82
4.3.2 常微分方程边值问题 85
4.4 应用实例——分析火箭数据 86
4.5 习题 90
第5章 字符串、单元数组和结构体 91
5.1 字符串 91
5.1.1 字符串的生成 91
5.1.2 字符串的操作 93
5.1.3 字符串与数值之间的转化 97
5.2 单元数组 98
5.2.1 单元数组的生成 99
5.2.2 单元数组的操作 99
5.3 结构体 102
5.3.1 结构体的生成 102
5.3.2 结构体的操作 104
5.4 应用实例——加密 106
5.5 习题 109
第6章 MATLAB编程 111
6.1 脚本文件和编辑器/调试器 111
6.1.1 创建和使用脚本文件 112
6.1.2 有效使用脚本文件 113
6.1.3 有效使用命令窗口和编辑器/调试器窗口 114
6.1.4 调试脚本文件 114
6.1.5 编程风格 115
6.1.6 记录度量单位 115
6.1.7 使用脚本文件存储数据 116
6.1.8 控制输入和输出 116
6.1.9 用户输入 117
6.1.10 脚本文件示例 118
6.2 程序设计和开发 118
6.2.1 算法和控制结构 119
6.2.2 结构化程序设计 119
6.2.3 自顶向下的设计和程序文档 119
6.2.4 伪代码 121
6.2.5 查找故障 123
6.2.6 开发大型程序 123
6.3 关系运算符和逻辑变量 124
6.3.1 logical类 125
6.3.2 logical函数 125
6.3.3 使用逻辑数组访问数组 126
6.4 逻辑运算符和函数 126
6.4.1 短路逻辑运算符 129
6.4.2 逻辑运算符和find函数 130
6.5 条件语句 132
6.5.1 if语句 133
6.5.2 else语句 134
6.5.3 elseif语句 135
6.5.4 检查输入和输出参数的数量 137
6.5.5 字符串和条件语句 137
6.6 循环 139
6.6.1 for循环 139
6.6.2 break和continue语句 141
6.6.3 使用数组作为循环索引 142
6.6.4 隐含循环 143
6.6.5 使用逻辑数组作为掩码 144
6.6.6 while循环 148
6.7 switch结构 151
6.8 调试MATLAB程序 153
6.8.1 Text菜单 154
6.8.2 Debug菜单 155
6.8.3 使用断点 155
6.8.4 Stack菜单 156
6.8.5 设置首选项 156
6.8.6 查找故障 156
6.8.7 设置断点 157
6.8.8 检查变量 157
6.8.9 改变工作空间 157
6.8.10 单步执行代码和继续执行 158
6.8.11 调试一个循环 158
6.9 应用实例——液面的计算 159
6.10 习题 161
第7章 MATLAB的符号处理 163
7.1 符号运算简介 163
7.1.1 符号对象 164
7.1.2 符号变量、表达式的生成 165
7.1.3 findsym函数和subs函数 167
7.1.4 符号和数值之间的转化 168
7.1.5 任意精度的计算 169
7.1.6 创建符号方程 170
7.2 符号表达式的化简与替换 171
7.2.1 符号表达式的化简 171
7.2.2 符号表达式的替换 175
7.3 符号函数图形绘制 176
7.3.1 符号函数曲线的绘制 176
7.3.2 符号函数曲面网格图及表面图的绘制 178
7.3.3 等值线的绘制 180
7.4 符号微积分 180
7.4.1 符号表达式求极限 181
7.4.2 符号微分 181
7.4.3 符号积分 182
7.4.4 级数求和 183
7.4.5 Taylor级数 183
7.5 符号方程的求解 184
7.5.1 代数方程的求解 184
7.5.2 求解代数方程组 185
7.5.3 微分方程的求解 185
7.5.4 微分方程组的求解 187
7.5.5 复合方程 187
7.5.6 反方程 188
7.6 符号积分变换 188
7.6.1 符号傅立叶变换 188
7.6.2 符号拉普拉斯变换 190
7.6.3 符号Z变换 191
7.7 MAPLE函数的调用 192
7.7.1 maple函数的使用 192
7.7.2 mfun函数的使用 193
7.8 符号函数计算器 194
7.8.1 单变量符号函数计算器 194
7.8.2 Taylor逼近计算器 196
7.9 习题 197
第8章 MATLAB绘图 199
8.1 MATLAB图形窗口 199
8.1.1 图形窗口的创建与控制 199
8.1.2 图形窗口的菜单栏 203
8.1.3 图形窗口的工具栏 208
8.2 基本图形的绘制 208
8.2.1 二维图形的绘制 209
8.2.2 三维图形的绘制 213
8.2.3 图形的其他操作 215
8.3 特殊图形的绘制 217
8.3.1 条形图和面积图(Bar and Area Graphs) 218
8.3.2 饼状图(Pie Charts) 221
8.3.3 直方图 222
8.3.4 离散型数据图 222
8.3.5 方向矢量图和速度矢量图 223
8.3.6 等值线的绘制(Contour Plots) 225
8.4 图形注释 227
8.4.1 添加基本注释 227
8.4.2 添加其他注释 228
8.5 三维图形的高级控制 237
8.5.1 查看图形 237
8.5.2 图形的色彩控制 242
8.5.3 光照控制 244
8.6 应用实例——地理数据可视化 245
8.7 习题 248
第9章 句柄图形 249
9.1 MATLAB的图形对象 249
9.1.1 Root对象 250
9.1.2 Figure对象 250
9.1.3 Core对象 251
9.1.4 Plot对象 252
9.1.5 Annotation对象 253
9.1.6 Group对象 254
9.2 图形对象的属性 255
9.3 图形对象属性值的设置和查询 256
9.3.1 属性值的设置 256
9.3.2 对象的默认属性值 256
9.3.3 属性值的查询 258
9.4 习题 258
第10章 GUI设计 260
10.1 GUI简介 260
10.1.1 GUI简介 260
10.1.2 GUI的可选控件 261
10.1.3 创建简单的GUI 261
10.2 通过向导创建GUI界面 267
10.2.1 启动GUIDE 267
10.2.2 向GUI中添加控件 268
10.2.3 创建菜单 270
10.3 编写GUI代码 272
10.3.1 GUI文件 272
10.3.2 响应函数 273
10.3.3 控件编程 276
10.3.4 通过GUIDE创建GUI实例 277
10.4 通过程序创建GUI 279
10.4.1 用于创建GUI的函数 279
10.4.2 程序创建GUI示例 282
10.5 习题 291
第11章 Simulink的建模与仿真 292
11.1 Simulink简介 292
11.2 Simulink模块库 294
11.2.1 连续模块(Continuous) 294
11.2.2 非连续模块(Discontinuous) 294
11.2.3 离散模块(Discrete) 295
11.2.4 逻辑和位操作模块(Logic and Bit Operations) 295
11.2.5 查表模块(Lookup Table) 296
11.2.6 数学模块(Math Operations) 297
11.2.7 模型检测模块(Model Verification) 298
11.2.8 模型扩充模块(Model Wide Utilities) 299
11.2.9 端口和子系统模块(Port&Subsystems) 299
11.2.10 信号属性模块(Signal Attributes) 300
11.2.11 信号线路模块(Signal Routing) 301
11.2.12 接收模块(Sinks) 302
11.2.13 输入模块(Sources) 302
11.2.14 用户自定义函数模块(User Defined Functions) 303
11.3 Simulink基本仿真建模 303
11.3.1 仿真框图 303
11.3.2 基本建模方法 305
11.3.3 Simulink基本仿真建模实例 308
11.4 常见Simulink模型 310
11.4.1 线性状态-变量模型 310
11.4.2 分段线性模型 312
11.4.3 传递-函数模型 317
11.4.4 非线性状态-变量模型 320
11.4.5 子系统 322
11.5 S函数设计与应用 326
11.5.1 S函数的介绍 326
11.5.2 S函数的调用 327
11.5.3 S函数设计 327
11.6 工程应用实例——车辆悬挂的仿真 330
11.7 习题 333
第12章 文件和数据的导入与导出 334
12.1 数据基本操作 334
12.1.1 文件的存储 334
12.1.2 数据导入 335
12.1.3 文件的打开 336
12.2 文本文件的读写 337
12.3 低级文件I/O 340
12.4 利用界面工具导入数据 343
12.5 习题 343
参考文献 345