第1章 MATLAB操作基础 1
1.1 MATLAB概述 1
1.1.1 MATLAB的发展 1
1.1.2 MATLAB的主要功能 2
1.1.3 初识MATLAB 3
1.2 MATLAB系统环境 5
1.2.1 启动与退出MATLAB系统环境 5
1.2.2 MATLAB操作界面 6
1.2.3 MATLAB的搜索路径 9
1.3 MATLAB帮助系统 10
1.3.1 MATLAB帮助窗口 10
1.3.2 MATLAB帮助命令 11
1.3.3 MATLAB演示系统 12
实验指导 12
思考练习 13
第2章 MATLAB矩阵及其运算 14
2.1 MATLAB数据类型 14
2.2 变量和数据操作 15
2.2.1 变量与赋值 16
2.2.2 预定义变量 16
2.2.3 内存变量的管理 17
2.2.4 MATLAB常用数学函数 18
2.2.5 数据的输出格式 20
2.3 MATLAB矩阵 22
2.3.1 矩阵的建立 22
2.3.2 矩阵的拆分 24
2.3.3 特殊矩阵 27
2.4 MATLAB运算 30
2.4.1 算术运算 31
2.4.2 关系运算 33
2.4.3 逻辑运算 34
2.5 矩阵分析 36
2.5.1 对角阵与三角阵 36
2.5.2 矩阵的转置与旋转 38
2.5.3 矩阵的逆与伪逆 39
2.5.4 方阵的行列式 40
2.5.5 矩阵的秩与迹 41
2.5.6 向量和矩阵的范数 41
2.5.7 矩阵的条件数 43
2.5.8 矩阵的特征值与特征向量 43
2.6 矩阵的超越函数 45
2.7 字符串 46
2.7.1 字符串的表示 47
2.7.2 字符串的操作 47
2.8 结构数据和单元数据 49
2.8.1 结构数据 49
2.8.2 单元数据 50
2.9 稀疏矩阵 51
2.9.1 矩阵存储方式 51
2.9.2 稀疏存储方式的产生 52
2.9.3 稀疏矩阵应用举例 55
实验指导 57
思考练习 58
第3章 MATLAB程序流程控制 60
3.1 M文件 60
3.1.1 M文件的分类 60
3.1.2 M文件的建立与打开 61
3.2 程序控制结构 62
3.2.1 顺序结构 63
3.2.2 选择结构 64
3.2.3 循环结构 69
3.3 函数文件 73
3.3.1 函数文件的基本结构 74
3.3.2 函数调用 75
3.3.3 函数参数的可调性 76
3.3.4 全局变量与局部变量 77
3.4 特殊形式的函数 77
3.5 程序调试与优化 79
3.5.1 程序调试方法 79
3.5.2 程序性能分析与优化 80
3.6 程序举例 82
实验指导 86
思考练习 87
第4章 MATLAB绘图 89
4.1 二维数据曲线图 89
4.1.1 绘制单根二维曲线 89
4.1.2 绘制多根二维曲线 91
4.1.3 设置曲线样式 94
4.1.4 图形标注与坐标控制 96
4.1.5 图形窗口的分割 98
4.2 其他二维图形 99
4.2.1 对函数自适应采样的绘图函数 100
4.2.2 其他坐标系下的二维数据曲线图 101
4.2.3 二维统计分析图 102
4.3 三维图形 104
4.3.1 三维曲线 104
4.3.2 三维曲面 105
4.3.3 其他三维图形 109
4.4 隐函数绘图 111
4.4.1 隐函数二维绘图 111
4.4.2 隐函数三维绘图 112
4.5 图形修饰处理 113
4.5.1 视点处理 113
4.5.2 色彩处理 115
4.5.3 图形的裁剪处理 117
4.6 图像处理与动画制作 118
4.6.1 图像处理 118
4.6.2 动画制作 119
4.7 交互式绘图工具 121
4.7.1 “绘图”选项卡 121
4.7.2 绘图工具 121
实验指导 123
思考练习 123
第5章 MATLAB数据分析与多项式计算 125
5.1 数据统计处理 125
5.1.1 最大值和最小值 125
5.1.2 求和与求积 128
5.1.3 平均值和中值 128
5.1.4 累加和与累乘积 129
5.1.5 标准差与相关系数 130
5.1.6 排序 133
5.2 数据插值 133
5.2.1 一维数据插值 134
5.2.2 二维数据插值 135
5.3 曲线拟合 137
5.3.1 曲线拟合原理 137
5.3.2 曲线拟合的实现 138
5.4 多项式计算 139
5.4.1 多项式的四则运算 139
5.4.2 多项式的导函数 140
5.4.3 多项式的求值 141
5.4.4 多项式求根 142
实验指导 143
思考练习 144
第6章 MATLAB解方程与最优化问题求解 146
6.1 线性方程组求解 146
6.1.1 直接解法 147
6.1.2 迭代解法 152
6.2 非线性方程数值求解 155
6.2.1 单变量非线性方程求解 155
6.2.2 非线性方程组的求解 156
6.3 常微分方程初值问题的数值解法 157
6.3.1 龙格-库塔法简介 157
6.3.2 龙格-库塔法的实现 158
6.4 最优化问题求解 161
6.4.1 无约束最优化问题求解 161
6.4.2 有约束最优化问题求解 162
6.4.3 线性规划问题求解 163
实验指导 164
思考练习 165
第7章 MATLAB数值积分与数值微分 167
7.1 数值积分 167
7.1.1 数值积分基本原理 167
7.1.2 数值积分的实现方法 169
7.1.3 多重定积分的数值求解 171
7.2 数值微分 172
7.2.1 数值差分与差商 172
7.2.2 数值微分的实现 173
7.3 离散傅里叶变换 174
7.3.1 离散傅里叶变换算法简介 175
7.3.2 离散傅里叶变换的实现 175
实验指导 177
思考练习 178
第8章 MATLAB符号运算 179
8.1 符号对象 179
8.1.1 建立符号对象 179
8.1.2 符号表达式运算 181
8.1.3 符号表达式中变量的确定 184
8.1.4 符号矩阵的运算 185
8.2 符号微积分 186
8.2.1 符号极限 186
8.2.2 符号导数 187
8.2.3 符号积分 188
8.3 级数 189
8.3.1 级数符号求和 189
8.3.2 函数的泰勒级数 189
8.4 符号方程求解 190
8.4.1 符号代数方程求解 190
8.4.2 符号常微分方程求解 191
实验指导 192
思考练习 193
第9章 MATLAB图形句柄 195
9.1 图形对象及其句柄 195
9.1.1 图形对象 195
9.1.2 图形对象句柄 196
9.1.3 图形对象属性 197
9.2 图形窗口与坐标轴 199
9.2.1 图形窗口对象 200
9.2.2 坐标轴对象 201
9.3 低层绘图操作 204
9.3.1 曲线对象 204
9.3.2 曲面对象 205
9.3.3 文本对象 207
9.3.4 其他核心对象 208
实验指导 211
思考练习 212
第10章 MATLAB图形用户界面设计 213
10.1 用户界面对象 213
10.2 菜单设计 214
10.2.1 建立用户菜单 214
10.2.2 菜单对象常用属性 215
10.2.3 快捷菜单 217
10.3 对话框设计 218
10.3.1 对话框的控件 218
10.3.2 控件的操作 219
10.3.3 对话框设计示例 225
10.4 可视化图形用户界面设计 228
10.4.1 图形用户界面设计窗口 228
10.4.2 可视化图形用户界面设计工具 229
10.4.3 可视化图形用户界面设计示例 233
实验指导 237
思考练习 237
第11章 Simulink动态仿真集成环境 239
11.1 Simulink操作基础 239
11.1.1 Simulink的启动与退出 239
11.1.2 Simulink仿真初步 241
11.2 系统仿真模型的建立 244
11.2.1 Simulink的基本模块 244
11.2.2 模块操作 245
11.2.3 模块的连接 246
11.2.4 模块的参数和属性设置 246
11.3 系统的仿真与分析 248
11.3.1 设置仿真参数 248
11.3.2 运行仿真与仿真结果分析 251
11.3.3 系统仿真实例 254
11.4 子系统及其封装技术 258
11.4.1 子系统的创建 258
11.4.2 子系统的条件执行 259
11.4.3 子系统的封装 263
11.5 S函数的设计与应用 266
11.5.1 用MATLAB语言编写S函数 266
11.5.2 S数的应用 268
实验指导 272
思考练习 273
第12章 MATLAB外部接口技术 275
12.1 MATLAB与Microsoft Office的混合使用 275
12.1.1 在Word中使用MATLAB 275
12.1.2 在Excel中使用MATLAB 278
12.2 MATLAB数据接口 281
12.2.1 文件操作 281
12.2.2 MAT文件及其应用 286
12.3 MATLAB与其他语言的接口 294
12.3.1 C语言MEX文件的创建 294
12.3.2 MATLAB引擎技术 297
实验指导 299
思考练习 300
附录1 MATLAB常用命令与函数分类索引表 302
附录2 MATLAB常用的LaTeX字符 317
主要参考文献 318