第一章 基础准备及入门 1
1.1 MATLAB的安装和内容选择 1
1.2 Desktop操作桌面的启动 3
1.2.1 MATLAB的启动 3
1.2.2 Desktop操作桌面简介 3
1.3 Command Window运行入门 5
1.3.1 Command Window指令窗简介 5
1.3.2 最简单的计算器使用法 6
1.3.3 数值、变量和表达式 7
1.3.4 计算结果的图形表示 12
1.4 Command Window操作要旨 13
1.4.1 指令窗显示方式的操作 13
1.4.2 数值计算结果的显示格式 14
1.4.3 指令行中的标点符号 14
1.4.4 指令窗的常用控制指令 15
1.4.5 指令窗中指令行的编辑 16
1.5.2 历史指令行的再运行 17
1.5.1 Command History历史指令窗简介 17
1.5 Command History和实录指令diary 17
1.5.3 指令窗实录指令diary 18
1.6 Current Directory、路径设置器和文件管理 19
1.6.1 Current Directory当前目录浏览器简介 19
1.6.2 MATLAB的搜索路径 21
1.6.3 MATLAB的搜索路径的扩展和修改 22
1.7 Workspace Browser和Array Editor 23
1.7.1 Workspace Browser工作空间浏览器简介 23
1.7.2 现场菜单用于内存变量的查阅和删除 24
1.7.3 Array Editor数组编辑器和大数组的输入 27
1.7.4 数据文件的存取 27
1.8 Launch Pad交互界面分类目录窗 29
1.9 Editor/Debugger和脚本编写初步 30
1.9.1 Editor/Debugger M文件编辑器简介 30
1.9.2 M脚本文件编写初步 31
1.10 帮助系统 32
1.10.1 帮助方式概述 32
1.10.2 Help Navigator/Browser帮助导航/浏览器简介 35
习题1 38
第二章 数值数组及其运算 40
2.1 引导 40
2.2 一维数组的创建和寻访 41
2.2.1 一维数组的创建 41
2.2.2 一维数组的子数组寻访和赋值 42
2.3 二维数组的创建 43
2.3.1 直接输入法 43
2.4 二维数组元素的标识 44
2.3.2 利用M文件创建和保存数组 44
2.4.1 “全下标”标识 45
2.4.2 “单下标”标识 45
2.4.3 “逻辑1”标识 45
2.5 二维数组的子数组寻访和赋值 46
2.6 执行数组运算的常用函数 47
2.6.1 函数数组运算规则的定义 47
2.6.2 执行数组运算的常用函数 48
2.7.1 数组运算和矩阵运算指令对照汇总 49
2.7 数组运算和矩阵运算 49
2.8.1 标准数组生成函数 50
2.8 标准数组生成函数和数组操作函数 50
2.8.2 数组操作函数 51
2.9 数组构作技法综合 53
2.10 高维数组 56
2.10.1 高维数组的创建 56
2.10.2 高维数组的标识 58
2.10.3 高维数组构作和操作函数汇总 59
2.11.1 非数NaN 61
2.11 “非数”和“空”数组 61
2.11.2 “空”数组 63
2.12 关系操作和逻辑操作 64
2.12.1 关系操作 65
2.12.2 逻辑操作 66
2.12.3 关系、逻辑函数 67
习题2 68
3.1 字符串数组 70
3.1.1 字符串入门 70
第三章 字符串数组、元胞数组和构架数组 70
3.1.2 串数组的属性和标识 71
3.1.3 复杂串数组的创建 73
3.1.4 串转换函数 76
3.1.5 串操作函数 77
3.2 元胞数组 77
3.2.1 元胞数组的创建和显示 78
3.2.2 元胞数组的扩充、收缩和重组 80
3.2.3 元胞数组内容的调取 81
3.3 构架数组 82
3.3.1 构架数组的直接创建法及显示 83
3.3.2 利用构造函数创建构架数组 85
3.3.3 数值运算操作和函数对构架数组的应用 86
3.4 关于数据类型的归纳性说明 87
习题3 88
4.1 线性方程组的解 89
4.1.1 LU分解、行列式、逆和恰定方程的解 89
第四章 数值计算 89
4.1.2 奇异值分解和矩阵结构 90
4.1.3 线性二乘问题的解 91
4.2 特征值分解和矩阵函数 92
4.2.1 特征值分解问题 92
4.2.2 矩阵的谱分解和矩阵函数 95
4.3 多项式和卷识 97
4.3.1 多项式 97
4.3.2 卷积 101
4.4.1 随机数发生器和统计分析指令 103
4.4 数据分析函数 103
4.4.2 差分和累计指令 105
4.5 MATLAB泛函指令 108
4.5.1 求函数零点 108
4.5.2 求函数极值点 110
4.5.3 数值积分 112
4.5.4 解常微分方程 113
4.6 信号处理 114
4.6.1 快速Fourier变换和逆变换 115
4.6.2 数字滤波 118
4.7 系统分析 119
4.7.1 线性时不变对象LTI 119
4.7.2 系统的时域和频域分析 123
习题4 125
第五章 符号计算 128
5.1 符号对象和符号表达式 128
5.1.1 符号对象的生成和使用 128
5.1.2 符号计算中的算符和基本函数 130
5.1.3 识别对象类别的指令 131
5.1.4 符号表达式中自由变量的确定 132
5.2 符号对象的操作和转换 134
5.2.1 符号表达式的操作 134
5.2.2 置换操作 134
5.2.3 符号数值精度控制和任意精度计算 136
5.2.4 符号对象与其他数据对象间的转换 137
5.3 符号微积分 137
5.3.1 符号序列的求和 137
5.3.2 符号微分和Jacobian矩阵 138
5.3.3 符号积分 139
5.3.4 符号卷积 141
5.4 符号积分变换 142
5.4.1 Fourier变换及其反变换 142
5.4.2 Laplace变换及其反变换 144
5.4.3 Z变换及其反变换 145
5.5 符号代数方程的求解 147
5.5.1 线性方程组的符号解 147
5.5.2 一般代数方程组的解 147
5.6.1 符号解法和数值解法的互补作用 149
5.6 符号微分方程的求解 149
5.6.2 求微分方程符号解的一般指令 150
5.6.3 微分方程符号解示例 150
5.7 利用MAPLE的深层符号计算资源 151
5.7.1 经典特殊函数的调用 152
5.7.2 MAPLE库函数在线帮助的检索树 152
5.7.3 发挥MAPLE的计算潜力 153
习题5 155
6.1.1 离散数据和离散函数的可视化 157
6.1 引导 157
第六章 数据和函数的可视化 157
6.1.2 连续函数的可视化 158
6.1.3 可视化的一般步骤 159
6.2 二维曲线绘图的基本操作 160
6.2.1 plot的基本调用格式 160
6.2.2 曲线的色彩、线型和数据点形 162
6.2.3 坐标、刻度和分格线控制 163
6.2.4 图形标识 165
6.2.5 多次叠绘、双纵坐标和多子图 169
6.2.6 交互式图形指令 171
6.3 三维绘图的基本操作 173
6.3.1 三维线图指令plot3 173
6.3.2 三维网线图和曲面图 173
6.3.3 透视、镂空和裁切 175
6.4 高维可视化 177
6.4.1 二维半图指令 pcolor,contour,contourf 177
6.4.2 四维表现 178
6.4.3 动态图形 180
6.5.2 色彩控制 182
6.5 三维图形的精细控制 182
6.5.1 视点控制 182
6.5.3 照明和材质处理 185
6.6 图像 188
6.7 图形窗功能简介 191
6.8 函数绘图的简捷指令 192
6.8.1 一元函数简捷绘图指令 192
6.8.2 二元函数简捷绘图指令 193
习题6 195
7.1 M文本编辑器 197
第七章 M文件和函数句柄 197
7.2 MATLAB控制流 198
7.2.1 for循环结构 198
7.2.2 while循环结构 198
7.2.3 if-else-end分支结构 199
7.2.4 switch-case结构 200
7.2.5 try-catch结构 202
7.3.1 M脚本文件 203
7.2.6 控制程序流的其他常用指令 203
7.3 脚本文件和函数文件 203
7.3.2 M函数文件 204
7.3.3 局部变量和全局变量 204
7.3.4 M文件的一般结构 205
7.3.5 P码文件 206
7.3.6 MATLAB的搜索过程 207
7.4 变量的检测传递和限权使用函数 207
7.4.1 输入输出宗量检测指令 207
7.4.2 跨空间变量传递 208
7.4.3 子函数和私用函数 210
7.5 串演算函数 210
7.5.1 eval 211
7.5.2 feval 211
7.5.3 内联函数 212
7.6 函数句柄 214
7.6.1 函数句柄的创建和观察 214
7.6.2 函数句柄的基本用法 215
习题7 219
第八章 SIMULINK交互式仿真集成环境 221
8.1 引导 221
8.1.1 使用入门 221
8.1.2 SIMULINK模型窗的组成 224
8.2 模型的创建 226
8.2.1 模型概念和文件操作 226
8.2.2 模块操作 228
8.2.3 信号线操作 230
8.2.4 对模型的注释 231
8.2.5 常用的Sourse库信源 232
8.2.6 常用的Sink库信宿 234
8.2.7 仿真的配置 236
8.3 连续系统建模 238
8.3.1 线性系统 238
8.3.2 非线性系统 243
8.4 封装子系统的创建及受控执行 249
8.4.1 简装子系统及其应用 249
8.4.2 条件执行子系统 251
8.5 离散时间系统和混合系统 254
8.5.1 若干基本模块 254
8.5.2 多速率离散时间系统 255
8.6 用MATLAB指令运行SIMULINK模型 256
习题8 257
第九章 句柄图形 259
9.1 句柄图形体系 259
9.1.1 图形对象、对象句柄和句柄图形树结构 259
9.1.2 对象属性 260
9.2 图形对象的操作 261
9.2.1 图形对象创建指令一览 261
9.2.2 对象句柄的获取方法 261
9.3 对象属性的获取和设置 263
9.3.1 创建对象时设置属性 263
9.3.2 get和set 263
9.3.3 对象属性的缺省设置和查询 264
9.3.4 属性查询和设置示例 264
9.4.2 准备图/轴的简捷指令newplot 266
9.4.1 ‘NextPlot’属性 266
9.4 为低层指令绘图准备图/轴 266
9.4.3 高层绘图文件的形成 267
9.5 轴对象 269
9.5.1 轴位框的几何属性和多轴位框 269
9.5.2 轴刻度的属性控制 270
9.5.3 坐标轴尺度、方向、位置属性 270
9.5.4 任意布置子图和轴外注释 271
9.6.1 擦除属性‘EraseMode’ 273
9.6 实时动画 273
9.6.2 屏幕刷新指令drawnow 274
9.6.3 动画制作示例 274
习题9 276
第十章 图形用户界面(GUI)制作 277
10.1 入门 277
10.2 图形用户界面的设计原则和一般步骤 281
10.2.1 设计原则 281
10.2.2 一般制作步骤 281
10.3.1 图形窗的标准菜单 282
10.3 界面菜单(uimenu) 282
10.3.2 自制的用户菜单 283
10.3.3 用户菜单的属性 284
10.3.4 现场菜单的制作 286
10.4 用户控件(uicontrol) 287
10.4.1 控件制作函数 287
10.4.2 用户控件的种类 287
10.4.3 控件制作示例 288
10.5 图形用户界面设计工具 295
习题10 296
第十一章 MATLAB编译器 297
11.1 M编译器的功用和前提准备 297
11.2 创建MEX文件 298
11.2.1 MEX文件编译的验证 298
11.2.2 由M文件创建C MEX文件的算例 300
11.3 创建独立的外部应用程序 301
11.3.1 M编译器的预配置 302
11.3.2 独立外部程序的工作特点和创建过程 305
11.3.4 科学计算和结果可视化独立应用程序的创建 306
11.3.3 关于指令mbuild 306
习题11 309
第十二章 Notebook 310
12.1 Notebook的安装 310
12.2 Notebook的启动 311
12.2.1 从Word中启动Notebook 311
12.2.2 从MATLAB中启动Notebook 311
12.2.3 Notebook成功启动标志和中文M-book模板的形成 312
12.3.1 输入细胞(群)的创建和运行 313
12.3 M-book模板的使用 313
12.3.2 Notebook菜单的其他选项 316
12.3.3 输出细胞的格式控制 317
12.3.4 细胞的样式 319
12.3.5 使用M-book模板的若干参考技法 319
习题12 320
附录A MATLAB主包函数指令表 321
附录B 光盘使用说明 346
参考文献 350