标题：MATLAB编程基础与典型应用
版权信息
书 名: MATLAB编程基础与典型应用 
作　者：刘会灯,朱飞
出版社： 人民邮电出版社
出版时间： 2008
ISBN: 9787115179326
开本： 16
内容简介
本书详细介绍了MATLAB的编程基础及其扩展应用，使读者能够快速掌握MATLAB基本编程的方法和不同工具箱的使用方法。
本书结构清晰、内容丰富、论述翔实，适合学习MATLAB的本科生、研究生阅读，也可作为广大科研工作人员的参考用书。
编辑推荐
从MATLAB基础讲起，引导读者快速入门。
通过实例详细讲解MATLAB的各种工具箱的实际应用。
深入剖析Simulink建模仿真技术、外部接口技术、Notebook的使用方法。
目录
第1章　MATLAB概述　11.1　MATLAB简介　1
1.2　MATLAB的安装　2
1.3　MATLAB的启动与退出　5
1.4　MATLAB的运行环境　5
1.4.1　MATLAB的工作界面　6
1.4.2　命令窗口　8
1.4.3　历史命令窗口　11
1.4.4　当前目录浏览器窗口　12
1.4.5　工作空间浏览器窗口　13
1.4.6　数组编辑器窗口　15
1.5　MATLAB的帮助系统　15
1.5.1　帮助导航/浏览器窗口　15
1.5.2　通过命令实现帮助　17
1.5.3　PDF帮助　17
1.5.4　其他帮助　17第2章　数组及矩阵的创建和操作　182.1　基本概念　18
2.1.1　常量和变量　18
2.1.2　数组和矩阵　19
2.2　数组及矩阵的创建和操作　20
2.2.1　数组及矩阵的输入　20
2.2.2　数组及矩阵元素操作　25
2.3　多维数组　31
2.3.1　多维数组的创建　31
2.3.2　多维数组的标识　32第3章　矩阵运算　343.1　矩阵的基本运算　34
3.1.1　加、减运算　34
3.1.2　乘法运算　35
3.1.3　除法运算　36
3.1.4　乘方运算　37
3.1.5　矩阵函数　39
3.1.6　矩阵转置　40
3.1.7　矩阵和数组的数学函数　41
3.1.8　矩阵和数组运算比较　42
3.1.9　关系操作和逻辑操作　42
3.2　矩阵的分解　45
3.2.1　LU分解　45
3.2.2　奇异值分解　46
3.2.3　特征值分解　46
3.2.4　Cholesky分解　47
3.2.5　QR分解　47
3.2.6　Schur分解　48
3.2.7　复数特征值对角阵与实数块特征值对角阵的转换　48
3.2.8　广义奇异值分解　49
3.2.9　特征值问题的QZ分解　49
3.2.10　海森伯格形式的分解　50
3.3　线性方程组的求解　50
3.3.1　利用矩阵除法求线性方程组的特解(或一个解)　50
3.3.2　LU分解求线性方程组的解　51
3.3.3　Cholesky分解求线性方程组的解　52
3.3.4　QR分解　52
3.3.5　求线性齐次方程组的通解　52
3.3.6　求非齐次线性方程组的通解　53
3.4　稀疏矩阵　54
3.4.1　稀疏矩阵的创建　54
3.4.2　将稀疏矩阵转化为全元素矩阵　55
3.4.3　矩阵中非零元素的查找　56
3.4.4　其他稀疏矩阵的创建方法　56
3.4.5　稀疏矩阵中非零元素信息的查看　57
3.4.6　用图形方式查看稀疏矩阵的信息　58
3.4.7　矩阵排序　59
第4章　字符、元胞和结构数组　614.1　字符数组　61
4.1.1　字符数组的创建　61
4.1.2　字符与数值的相互转化　63
4.1.3　创建复杂字符数组　63
4.1.4　字符串的比较　65
4.1.5　字符的分类　67
4.1.6　字符串的查找和替换　69
4.1.7　类型转换　69
4.2　元胞数组　72
4.2.1　元胞数组的创建　72
4.2.2　元胞数组的内容获取　74
4.2.3　元胞数组的显示　75
4.3　结构数组　77
4.3.1　结构数的创建　77
4.3.2　结构数组数据的获取　78
4.3.3　结构数组的数据修改　80
第5章　多项式与数据分析　815.1　多项式　81
5.1.1　多项式的四则运算　81
5.1.2　多项式的导函数　83
5.1.3　多项式的求值　83
5.1.4　多项式求根　85
5.1.5　部分分式展开　86
5.1.6　多项式的微分和积分　87
5.2　数据插值　87
5.2.1　一维数据插值　87
5.2.2　二维数据插值　88
5.3　曲线拟合　89
5.4　数据统计处理　90
5.4.1　最大值和最小值　90
5.4.2　求和与求积　92
5.4.3　平均值和中值　93
5.4.4　累加和与累乘积　94
5.4.5　标准方差　95
5.4.6　相关系数　97
5.4.7　排序　97
第6章　符号计算　996.1　符号对象　99
6.1.1　建立符号常量和符号变量　99
6.1.2　建立符号表达式　100
6.1.3　符号表达式运算　101
6.1.4　符号表达式中变量的确定　104
6.1.5　符号矩阵　105
6.2　符号微积分　108
6.2.1　符号极限　108
6.2.2　符号导数　110
6.2.3　符号积分　111
6.2.4　积分变换　111
6.3　级数　113
6.4　符号方程求解　114
6.4.1　符号代数方程求解　115
6.4.2　符号常微分方程求解　116
6.4.3　符号函数计算器　117
6.5　maple函数　118
6.5.1　maple内核访问函数　118
6.5.2　maple函数帮助命令　120
第7章　MATLAB程序设计　1217.1　MATLAB的工作模式　121
7.1.1　命令窗口模式　121
7.1.2　m文件模式　121
7.2　m文件的创建　122
7.3　m文件的类型　123
7.3.1　数据文件　123
7.3.2　m文件　124
7.4　MATLAB的程序结构　127
7.4.1　循环结构　127
7.4.2　分支结构　128
7.5　MATLAB程序流的控制　129
第8章　句柄图形及图形用户界面设计　1318.1　句柄图形概述　131
8.2　图形对象和句柄　131
8.2.1　图形对象　132
8.2.2　创建图形对象的底层函数　133
8.2.3　图形对象的属性　133
8.2.4　句柄与句柄操作　134
8.3　图形对象属性的操作　134
8.3.1　对象属性的获得　134
8.3.2　对象属性的直接操作　137
8.3.3　对象属性的继承操作　138
8.4　图形用户界面设计　139
8.4.1　菜单设计　139
8.4.2　对话框设计　140
8.5　图形用户界面设计工具　141
8.5.1　图形用户界面设计窗口　141
8.5.2　属性查看器　143
8.5.3　菜单编辑器　143
8.5.4　位置调整工具　144
8.5.5　对象浏览器　144
8.5.6　Tab顺序编辑器　145
第9章　MATLAB图形功能　1469.1　二维基本图形　146
9.1.1　基本绘图函数plot　146
9.1.2　单窗口单曲线绘图　147
9.1.3　单窗口多曲线绘图　148
9.1.4　单窗口多曲线分图绘图　148
9.1.5　设置颜色与线型　149
9.1.6　图案填充　151
9.1.7　图形加注　151
9.1.8　自适应采样的绘图函数　153
9.1.9　隐函数绘图　153
9.2　二维特殊图形　154
9.2.1　阶梯曲线　155
9.2.2　极坐标图　156
9.2.3　火柴杆图　157
9.2.4　彗星曲线图　157
9.2.5　区域图　158
9.2.6　饼图　159
9.2.7　离散点图　159
9.2.8　伪彩色图　160
9.2.9　带形图　161
9.2.10　条形图　161
9.2.11　误差条图　162
9.2.12　散点矩阵图　163
9.2.13　对数坐标图　163
9.3　三维基本图形　164
9.3.1　三维线图　164
9.3.2　三维饼图　165
9.3.3　三维多边形　166
9.3.4　三维网格图　166
9.3.5　三维网线图　167
9.3.6　三维曲面图　168
9.3.7　标准三维曲面　169
9.3.8　其他三维图　170
9.4　图形修饰　171
9.4.1　图形颜色修饰　171
9.4.2　图形效果修饰　174
第10章　MATLAB在工程数学中的应用　　17610.1　MATLAB在高等数学中的应用　176
10.1.1　基本函数　176
10.1.2　极限　179
10.1.3　导数与微分　180
10.1.4　积分　181
10.1.5　微分方程　182
10.1.6　级数　184
10.2　MATLAB在复变函数中的应用　185
10.2.1　复数表示及基本运算　185
10.2.2　复数的基本函数　187
10.2.3　复变函数的极限和微积分运算　188
10.2.4　复变函数的级数　190
10.2.5　复变函数的留数计算　192
第11章　MATLAB在工程优化中的应用　　19411.1　工程优化问题概述　194
11.2　优化问题　195
11.2.1　线性规划问题　198
11.2.2　无约束优化问题　201
11.2.3　有约束优化问题　204
11.2.4　二次规划问题　210
11.2.5　“半无限”多元函数优化问题　214
11.2.6　最小最大化问题　216
11.2.7　多目标规划问题　217
11.2.8　整数规划问题　219
11.3　最小二乘曲线拟和问题　221
11.3.1　线性最小二乘曲线拟和问题　222
11.3.2　非线性最小二乘曲线拟和问题　223
11.3.3　曲线拟和综合实例　228
11.4　方程求解　238
第12章　MATLAB在自动控制中的应用　　24112.1　系统模型　241
12.1.1　传递函数模型　242
12.1.2　零极点模型　244
12.1.3　状态空间函数模型　247
12.1.4　模型的转换　248
12.1.5　连续系统和离散系统之间变换　249
12.1.6　系统的互连和反馈　251
12.1.7　归纳总结　255
12.2　系统时域分析　256
12.2.1　系统时域分析方法和特点　256
12.2.2　实例演示　257
12.2.3　归纳总结　262
12.3　系统根轨迹分析　262
12.3.1　根轨迹分析法　262
12.3.2　实例演示　263
12.3.3　归纳总结　266
12.4　系统频域分析　267
12.4.1　幅相频率特性(Nyquist图)　267
12.4.2　对数频率特性(Bode图)　269
12.4.3　对数幅相特性(Nichols图)　272
12.4.4　归纳总结　273
12.5系统校正　274
12.5.1　串联超前校正　274
12.5.2　串联滞后校正　277
12.5.3　串联滞后－超前校正　279
12.5.4　归纳总结　282
12.6　控制工具箱用户接口界面　282
12.6.1　LTIViewer　282
12.6.2　SISODesignTool　287
12.6.3　归纳总结　296
第13章　MATLAB在数字信号处理中的应用　　297
13.1　数字信号处理基础知识　297
13.1.1　信号的产生　297
13.1.2　信号的运算　305
13.1.3　信号的抽取与插值　308
13.1.4　归纳总结　311
13.2　信号的变换技术　311
13.2.1　离散傅立叶变换　312
13.2.2　快速傅立叶变换　313
13.2.3　Hilbert变换　315
13.2.4　归纳总结　316
13.3　数字滤波器的分析与实现　316
13.3.1　数字滤波器的概念　316
13.3.2　数字滤波器的分析　317
13.3.3　滤波器的实现　322
13.3.4　归纳总结　324
13.4　IIR数字滤波器的设计　325
13.4.1　典型模拟滤波器的设计　325
13.4.2　模拟滤波器的转换　328
13.4.3　模拟滤波器的离散化　331
13.4.4　IIR阶次的选择　334
13.4.5　IIR数字滤波器的直接设计法　336
13.4.6　归纳总结　340
13.5　FIR数字滤波器的设计　341
13.5.1　FIR数字滤波器设计的窗函数法　341
13.5.2　FIR数字滤波器设计的频率抽样法　344
13.5.3　FIR数字滤波器设计的切比雪夫逼近法　344
13.5.4　归纳总结　347
13.6　窗函数　347
13.6.1　矩形窗　347
13.6.2　巴特里特(Bartlett)窗　348
13.6.3　汉宁(Hanning)窗　349
13.6.4　汉明(Hamming)窗　350
13.6.5　归纳总结　351
第14章　MATLAB在人工神经网络中的应用14.1　人工神经网络简介　352
14.1.1　历史及现状　352
14.1.2　基本结构　353
14.1.3　神经网络特点　355
14.1.4　几种著名的神经网络　355
14.2　感知器　356
14.2.1　感知器原理　356
14.2.2　感知器相关函数　357
14.2.3　感知器应用举例　361
14.3　线性神经网络　364
14.3.1　线性神经网络原理　365
14.3.2　线性神经网络相关函数　366
14.3.3　线性神经网络应用举例　368
14.4　BP网络　369
14.4.1　BP网络原理　369
14.4.2　BP网络相关函数　370
14.4.3　Bp网络应用举例　380
14.5　径向基网络　385
14.5.1　径向基网络原理　385
14.5.2　径向基网络相关函数　386
14.5.3　径向基网络应用举例　390
14.6　回归网络　391
14.6.1　回归网络相关函数　391
14.6.2　回归网络应用举例　393
第15章　Simulink建模与仿真　39615.1　Simulink简介　396
15.2　Simulink启动和文件建立　397
15.2.1　Simulink的启动　397
15.2.2　Mdl文件的建立　398
15.2.3　Simulink库文件的建立　403
15.3　Simulink建模与基本操作　405
15.3.1　演示实例　405
15.3.2　模块操作　408
15.3.3　模块及属性编辑　410
15.3.4　模型仿真参数设置　411
15.3.5　模型属性设置　415
15.3.6　模型格式设置　416
15.4　Simulink基本模块库介绍　416
15.4.1　连续模块库(Continuous)　416
15.4.2　离散模块库(Discrete)　418
15.4.3　非线性模块库(Nonlinear)　420
15.4.4　信号和系统模块库(Signals&Systems)　422
15.4.5　数学模块库(Math)　423
15.4.6　子系统模块库(Subsystems)　424
15.4.7　输出模块库(Sinks)　425
15.4.8　输入源模块库(Sources)　426
15.4.9　函数与查表模块库(Functions&Tables)　427
15.5　子系统的创建、封装和受控执行　428
15.5.1　子系统的创建和封装　429
15.5.2　触发子系统　433
15.5.3　使能子系统　434
15.5.4　触发使能子系统　435
15.5.5　if/else子系统　436
15.5.6　switch-case子系统　438
15.5.7　while子系统　439
15.5.8　for子系统　440
15.6　Simulink的命令行仿真技术　441
15.6.1　命令行创建Simulink仿真模型　441
15.6.2　Simulink命令行仿真技术　444
15.6.3　命令行仿真实例　448
15.7　S-function建模仿真　452
15.7.1　S-function概述　452
15.7.2　S-function的工作原理　454
15.7.3　M文件S-function的编写　455
15.8　应用实例分析　465
15.8.1　应用实例一：动力学仿真　466
15.8.2　应用实例二：电路系统仿真　468
15.8.3　应用实例三：电力电子仿真技术　470
第16章　外部接口技术　47616.1　概述　476
16.2　创建C语言MEX文件　478
16.2.1　MEX文件简介　478
16.2.2　编写C语言MEX文件　482
16.3　MAT文件应用　485
16.3.1　MATLAB数据导入导出方式　485
16.3.2　MAT函数库函数　487
16.3.3　Mex文件读写MAT文件　487
16.4　MATLAB引擎技术　491
16.4.1　VisualC++中调用MATLAB引擎配置　491
16.4.2　主要的MATLAB引擎函数　492
16.4.3　实例演示　493
16.5　VisualC++与MATLAB接口　496
16.5.1　VisualC++中使用MATLAB引擎　497
16.5.2　VisualC++中使用MATLAB语言C、C++数学函数库　497
16.5.3　VisualC++中创建MAT文件　499
16.5.4　基于MATCOM实现VisualC++与MATLAB接口　501
16.5.5　使用COM组件实现VisualC++与MATLAB的接口　509
第17章　Notebook的使用　51617.1　Notebook的安装和使用环境　516
17.1.1　Notebook的安装　516
17.1.2　Notebook基本操作　517
17.1.3　Notebook使用环境　520
17.2　M-book模板的使用　521
17.3    M-book的基本环境