第1部分 实用教程 1
第1章 MATLAB 6.5环境 1
1.1MATLAB简介 1
1.1.1 MATLAB工具箱 1
1.1.2 MATLAB的特点 3
1.2 MATLAB 6.5环境设置 4
1.2.1选单 4
1.2.2工具栏 6
1.2.3通用操作界面窗口 7
1.3 MATLAB 6.5帮助 18
1.4 MATLAB6.5其他管理 22
1.4.1 MATLAB用户文件格式 22
1.4.2设置搜索路径 22
1.4.3文件管理命令 24
1.4.4退出MATLAB 26
1.5 一个实例 26
第2章 MATLAB数值计算 30
2.1 变量和数值 30
2.1.1数据类型 30
2.1.2数值 30
2.1.3变量 31
2.2 矩阵和数组 32
2.2.1矩阵输入 32
2.2.2矩阵元素和操作 35
2.2.3 字符串 41
2.2.4矩阵和数组运算 44
2.2.5多维数组 55
2.3.1稀疏矩阵的建立 58
2.3 稀疏矩阵 58
2.3.2稀疏矩阵的存储空间 61
2.3.3稀疏矩阵的运算 63
2.4 多项式 63
2.4.1 多项式的求值、求根和部分分式展开 64
2.4.2多项式的乘除和微积分运算 66
2.4.3多项式拟合和插值 67
2.5 元胞数组和结构数组 70
2.5.1元胞数组 70
2.5.2结构数组 73
2.6 数据分析 76
2.6.1数据统计和相关分析 77
2.6.2差分和积分 78
2.6.3卷积和快速傅里叶变换 80
2.6.4向量函数 83
第3章 MATLAB的符号计算 84
3.1 符号表达式的建立 84
3.1.1创建符号常量 84
3.1.2创建符号变量和表达式 86
3.1.3符号矩阵 87
3.2 符号表达式的代数运算 88
3.2.1符号表达式的代数运算 88
3.2.2符号数值任意精度控制和运算 90
3.2.3符号对象与数值对象的转换 91
3.3 符号表达式的操作和转换 92
3.3.1符号表达式中自由变量的确定 92
3.3.2符号表达式的化简 93
3.3.3符号表达式的替换 96
3.3.4求反函数和复合函数 97
3.3.5符号表达式的转换 99
3.4 符号极限、微积分和级数求和 100
3.4.1符号极限 100
3.4.2符号微分 101
3.4.3符号积分 102
3.4.4符号级数 104
3.5 符号积分变换 105
3.5.1傅里叶变换及其反变换 105
3.5.2拉普拉斯变换及其反变换 106
3.5.3 Z变换及其反变换 107
3.6 符号方程的求解 108
3.6.1代数方程 108
3.6.2符号常微分方程 109
3.7.1符号函数的绘图命令 110
3.7 符号函数的可视化 110
3.7.2 图形化的符号函数计算器 112
3.8 Maple函数的使用 112
3.8.1访问Maple函数 113
3.8.2获得Maple的帮助 113
第4章 MATLAB计算的可视化和GUI设计 115
4.1 二维曲线的绘制 115
4.1.1基本绘图命令 115
4.1.2绘制曲线的一般步骤 119
4.1.3多个图形绘制的方法 121
4.1.4 曲线的线型、颜色和数据点形 123
4.1.5设置坐标轴和文字标注 125
4.1.6交互式图形命令 129
4.2.1绘制三维图形命令 130
4.2.2绘制三维网图形和曲面图 130
4.2 MATLAB的三维图形绘制 130
4.2.3立体图形与图轴的控制 134
4.2.4色彩的控制 136
4.3 MATLAB的特殊图形绘制 141
4.3.1条形图 141
4.3.2面积图和实心图 142
4.3.3直方图 143
4.3.4饼形图 144
4.3.5离散数据图 144
4.3.6对数坐标和极坐标图 145
4.3.7等高线图 146
4.3.8复向量图 147
4.4图形窗口的功能 148
4.5对话框 150
4.6.1句柄图形体系 153
4.6 句柄图形 153
4.6.2图形对象的操作 154
4.6.3 图形对象属性的获取和设置 157
4.7 图形用户界面设计 159
4.7.1可视化的界面环境 159
4.7.2创建选单 161
4.7.3控件的使用 162
4.7.4对象对齐工具、属性编辑器和对象浏览器 164
4.7.5回调函数 164
4.7.6应用举例 166
4.8 动画 168
4.8.1 以电影方式产生动画 169
4.8.2以对象方式产生动画 170
5.1.1 M文本编辑器 172
第5章 MATLAB程序设计 172
5.1 脚本文件和函数文件 172
5.1.2 M文件的基本格式 173
5.1.3 M脚本文件 174
5.1.4 M函数文件 175
5.2 程序流程控制 176
5.2.1 for…end循环结构 176
5.2.2 while…end循环结构 177
5.2.3 if…else…end条件转移结构 178
5.2.4 switch…case开关结构 178
5.2.5 try…catch…end试探结构 179
5.2.6流程控制语句 180
5.3 函数调用和参数传递 183
5.3.1子函数和私有函数 183
5.3.2局部变量和全局变量 184
5.3.3函数的参数 185
5.3.4程序举例 188
5.4 M文件性能的优化和加速 190
5.4.1 P码文件 190
5.4.2M文件性能优化 191
5.4.3 JIT和加速器 193
5.5 内联函数 195
5.6 利用函数句柄执行函数 197
5.6.1函数句柄的创建 197
5.6.2用feval命令执行函数 198
5.7 利用泛函命令进行数值分析 199
5.7.1求极小值 199
5.7.2求过零点 201
5.7.4微分方程的数值解 202
5.7.3数值积分 202
第6章 线性控制系统分析与设计 205
6.1 线性系统的描述 205
6.1.1状态空间描述法 205
6.1.2传递函数描述法 206
6.1.3零-极点描述法 207
6.1.4 离散系统的数学描述 208
6.2 线性系统模型之间的转换 210
6.2.1连续系统模型之间的转换 210
6.2.2连续系统与离散系统之间的转换 214
6.2.3模型对象的属性 216
6.3结构框图的模型表示 219
6.4 线性系统的时域分析 223
6.4.1零输入响应分析 224
6.4.2脉冲响应分析 225
6.4.3阶跃响应分析 226
6.4.4任意输入的响应 228
6.4.5 系统的结构参数 229
6.5 线性系统的频域分析 231
6.5.1频域特性 231
6.5.2连续系统频域分析 232
6.5.3幅值裕度和相角裕度 235
6.5.4离散系统频域分析 236
6.6 线性系统的根轨迹分析 237
6.6.1绘制根轨迹 237
6.6.2根轨迹的其他工具 239
6.7 线性系统的状态空间设计 242
6.7.1极点配置法 242
6.7.2最优二次型设计 243
7.1 演示一个Simulink的简单程序 245
第7章 Simulink仿真环境 245
7.2 Simulink文件操作和模型窗口 247
7.2.1 Simulink文件操作 247
7.2.2 Simulink模型窗口 248
7.3 模型创建 250
7.3.1模块操作 250
7.3.2信号线操作 251
7.3.3给模型添加文本注释 252
7.4 Simulink基本模块 253
7.4.1基本模块 253
7.4.2常用模块的参数和属性设置 255
7.5.1仿真设置 260
7.5 复杂系统仿真与分析 260
7.5.2连续系统仿真 262
7.5.3 离散系统仿真 265
7.5.4仿真结构参数化 267
7.6 子系统与封装 268
7.6.1建立子系统 268
7.6.2条件执行子系统 270
7.6.3子系统的封装 272
7.7 用MATLAB命令创建和运行Simulink模型 277
7.7.1用MATLAB命令创建Simulink模型 277
7.7.2用MATLAB命令运行Simulink模块 280
7.8以Simulink为基础的模块工具箱简介 281
8.1 MATLAB应用接口 282
8.1.1 MEX文件 282
第8章 MATLAB的高级应用 282
8.1.2使用MATLAB编译器生成MEX和EXE文件 288
8.2 低级文件的输入、输出 291
8.2.1打开和关闭文件 291
8.2.2读写格式化数据 292
8.2.3读写二进制数据 294
8.2.4文件定位 295
8.3图形文件转储 297
8.4 Notebook 298
8.4.1安装Notebook 298
8.4.2启动Notebook 298
8.4.3使用Notebook 300
8.4.4在Notebook中使用MATLAB 304
第2部分 习题 307
实验1 MATLAB环境及命令窗口的使用 317
第3部分 实验 317
实验2 MATLAB数值计算 327
实验3 MATLAB的符号计算 337
实验4 MATLAB计算的可视化和GUI设计 344
实验5 MATLAB程序设计 354
实验6 线性控制系统分析与设计 362
实验7 Simulink仿真环境 371
附录A 模拟测试题 379
附录B 习题答案 381
附录C 模拟测试题答案 402
附录D MATLAB的安装 405
附录E 例题索引 407
附录F 程序的调试 412
附录G MATLAB主要函数命令分类 416