本书以MATLAB 7.7版本为基础,结合高等学校课堂教学和工程科学计算应用的需要,从实用角度出发,通过大量的算法实现和典型应用实例,系统地介绍MATLAB的各种功能与应用。全书共分12章,内容包括MATLAB基础知识MATLAB程序设计、图形绘制、线性代数中的数值计算、数据处理与多项式计算、数值微积分与常微分方程求解、符号计算、图形句柄、图形用户界面设计、Simulink仿真环境、MATLAB应用接口,以及MATLAB在各学科中的应用。
本书可作为高等院校理工科专业本科生和研究生的教材,也可供广大科技工作者阅读参考。
《MATLAB基础与应用教程》可作为高等院校理工科专业本科生和研究生的教材,也可供广大科技工作者阅读参考。
强调算法原理,突出应用实践
循序渐进,深入浅出,便于教与学
内容丰富,提供实验、课件、实例源代码
《MATLAB基础与应用教程》以MATLAB 7.7版本为基础,结合高等学校课堂教学和工程科学计算应用的需要,从实用角度出发,通过大量的算法实现和典型应用实例,系统地介绍MATLAB的各种功能与应用。全书共分1 2章,内容包括MATLAB基础知识、MATLAB程序设计、图形绘制、线性代数中的数值计算、数据处理与多项式计算、数值微积分与常微分方程求解、符号计算、图形句柄、图形用户界面设计、Slmulink仿真环境、MATLAB应用接13,以及MATLAB在各学科中的应用《MATLAB基础与应用教程》可作为高等院校理工科专业本科生和研究生的教材,也可供广大科技工作者阅读参考。
MATLAB(MATrix LABoratory)是MathWorks公司于1984年开发的科学与工程计算软件。它以矩阵运算为基础,将高性能的数值计算和符号计算功能、强大的绘图功能、动态系统仿真功能以及为数众多的应用工具箱集成在一起,是颇具特色和影响的科学计算软件,在科学研究以及工程设计领域有着十分广泛的应用。在高等院校,无论是在课程教学,还是在课程设计、毕业设计等培养环节中,应用MATLAB已十分普遍。许多高等院校将MATLAB语言列入培养方案,纳入计算机教育课程体系,开设了相应的课程。
本书是编者在教学实际需要的基础上,根据教学改革的实践经验,结合技术发展趋势,经过系统总结后编写而成的。本书具有以下特点。
(1)反映了MATLAB技术的发展和最新的应用成果。
近年来,MATLAB版本不断更新,功能不断完善。2008年,MathWorks公司推出了MAllLAB撮新的版本R2008b(MATLAB 7.7)。该版本集成了最新的:MATLAB 7.7编译器、Simulink 7.2仿真软件以及很多工具箱,增加了很多新的功能和特性,内容相当丰富。本书以MATLAB 7.7版为基础,全面介绍。MATL,AB的各种功能与应用。
在MKILAB版本不断更新的同时,MATLAB的应用领域也得到不断拓展。本书介绍了MATLAB一些学科方面的应用工具箱和应用案例,能起到引导、示范的作用。
(2)体现基本原理,突出应用特色。
本书在介绍MATLAB基本功能的同时,介绍具体的实现原理,但最终以应用为目的,体现了突出基本原理是为了更好地应用,使应用更富有规律的理念。本书让读者在理解算法原理的基础上使用MATLAB的功能,使教材既成为教学内容的载体,也成为思维方法和认知过程的载体。例如,在介绍数值计算功能时,尽可能介绍相关的算法背景,使学生能得到基本数值计算方法的训练,这对培养仓撕能力是很有必要的。
第1章 MATLAB基础知识
1.1 MATLAB的发展与主要功能
1.1.1 MATLAB的发展
1.1.2 MATLAB的主要功能
1.2 MATLAB的集成开发环境
1.2.1 MATLAB操作界面
1.2.2 MATLAB的搜索路径
1.3 MATLAB的帮助功能
1.3.1 帮助界面
1.3.2 帮助命令
1.3.3 演示系统
1.4 MATLAB的变量和数据操作
1.4.1 变量与赋值
1.4.2 变量的管理
1.4.3 数据的输出格式
1.5 MATLAB矩阵及其基本运算
1.5.1 矩阵的生成
1.5.2 冒号表达式
1.5.3 矩阵的拆分
1.5.4 算术运算
1.5.5 关系运算
1.5.6 逻辑运算
1.6 字符串
思考与实验
第2章 MATLAB程序设计
2.1 M文件
2.1.1 M文件的建立与打开
2.1.2 M文件的分类
2.2 程序控制结构
2.2.1 顺序结构
2.2.2 选择结构
2.2.3 循环结构
2.3 函数文件
2.3.1 函数文件的基本结构
2.3.2 函数调用
2.3.3 函数参数的可调性
2.3.4 全局变量与局部变量
2.4 程序调试
2.4.1 程序调试概述
2.4.2 MATLAB调试菜单
2.5 程序性能分析与优化
2.5.1 程序性能分析
2.5.2 程序优化
思考与实验
第3章 图形绘制
3.1 二维曲线的绘制
3.1.1 绘制二维曲线
3.1.2 设置曲线样式
3.1.3 图形标注与坐标控制
3.1.4 对函数自适应采样的绘图函数
3.1.5 多图形显示
3.1.6 其他坐标系
3.1.7 其他二维图形
3.2 三维图形的绘制
3.2.1 三维曲线
3.2.2 三维曲面
3.2.3 其他三维图形
3.3 图形修饰处理
3.3.1 视点处理
3.3.2 色彩处理
3.3.3 光照处理
3-3.4 图形的裁剪处理
3.4 隐函数绘图
3.5 图像处理与动画制作
3.5.1 图像处理
3.5.2 动画制作
思考与实验
第4章 线性代数中的数值计算
4.1 特殊矩阵的生成
4.1.1 通用的特殊矩阵
4.1.2 面向特定应用的特殊矩阵
4.2 矩阵分析
4.2.1 矩阵结构变换
4.2.2 矩阵求值
4.2.3 矩阵的特征值与特征向量
4.3 线性方程组求解
4.3.1 矩阵求逆及线性代数方程组求解
4.3.2 利用左除运算符求解线性方程组
4.4 矩阵分解
4.4.1 矩阵的LU分解
4.4.2 矩阵的QR分解
4.4.3 矩阵的Cholesky分解
4.5 超越函数运算
4.6 稀疏矩阵的处理
4.6.1 矩阵存储方式
4.6.2 矩阵的稀疏存储方式
4.6.3 稀疏矩阵应用举例
思考与实验
第5章 数据处理与多项式计算
5.1 数据统计处理
5.1.1 最大值和最小值
5.1.2 求和与求积
5.1.3 平均值和中值
5.1.4 累加和与累乘积
5.1.5 标准方差与相关系数
5.1.6 排序
5.2 数据插值
5.2.1 一维数据插值
5.2.2 维数据插值
5.3 曲线拟合
5.4 离散傅立叶变换
5.4.1 离散傅立叶变换算法概述
5.4.2 离散傅立叶变换的实现
5.5 多项式计算
5.5.1 多项式的四则运算
5.5.2 多项式的导函数
5.5.3 多项式的求值
5.5.4 多项式求根
5.6 非线性方程数值求解
5.6.1 单变量非线性方程求解
5.6.2 非线性方程组的求解
思考与实验
第6章 数值微积分与常微分
方程求解
6.1 数值微分
6.1.1 数值差分与差商
6.1.2 数值微分的实现
6.2 数值积分
6.2.1 数值积分的原理
6.2.2 定积分的数值求解实现
6.2.3 多重定积分的数值求解实现
6.3 常微分方程的数值求解
6.3.1 龙格.库塔法简介
6.3.2 常微分方程数值求解的实现
思考与实验
第7章 符号计算
7.1 符号对象及其运算
7.1.1 建立符号对象:
7.1.2 符号表达式运算
7.1.3 符号表达式中变量的确定
7.1.4 符号矩阵
7.2 符号微积分
7.2.1 符号极限
7.2.2 符号导数
7.2.3 符号积分
7.3 级数
7.3.1 级数符号求和
7.3.2 函数的泰勒级数
7.4 符号方程求解
7.4.1 符号代数方程求解
7.4.2 符号常微分方程求解
思考与实验
第8章 图形句柄
8.1 图形对象及其句柄
8.1.1 图形对象
8.1.2 图形对象句柄
8.1.3 图形对象屙眭
8.2 图形窗口对象与坐标轴
8.2.1 图形窗口对象
8.2.2 坐标轴
8.3 核心图形对象
8.3.1 曲线对象
8.3.2 曲面对象
8.3.3 文本对象
8.3.4 其他核心对象
思考与实验
第9章 图形用户界面设计
9.1 用户界面对象
9.1.1 用户界面对象概述
9.1.2 控件的公共属性
9.1.3 回调函数
9.1.4 GUI的设计方式
9.2 图形用户界面设计工具
9.2.1 图形用户界面设计窗口
9.2.2 对象属性查看器
9.2.3 菜单编辑器
9.2.4.位置调整工具
9.2.5 对象浏览器
9.2.6 Tab顺序编辑器
9.2.7 GLYIDE设计示例
9.3 GUI编程
9.3.1 建立控件对象
9.3.2 建立用户菜单
9.3.3 建立快捷菜单
思考与实验
第10章 Simulink仿真环境
10.1 初识Simulink——一个简单的仿真实例
10_2仿真模型的建立
10.2.1 Simulink的基本模块
10.2.2 模块操作
10.2.3 模块的连接
10.2.4 模块的参数和属性设置
10.3 系统的仿真与分析
10.3.1 设置仿真参数
10.3.2 仿真结果分析
10.3.3 系统仿真实例
10.4 子系统与封装
10.4.1 子系统的建立
10.4.2 子系统的条件执行
10.4.3 子系统的封装
10.5 S函数的设计与应用
10.5.1 用MATL_AB语言编写S函数
10.5.2 S函数的应用
思考与实验
第11章 MATLAB应用接口
11.1 MATLAB与Word和Excel的混合使用
11.1.1 Notebook的使用
11.1.2 SpreadsheetLink的使用
11.2 MATLAB数据接口
11.2.1 文件输入/{俞出操作
11.2.2 MAT文件与应用
11.2.3 多媒体文件的读写
11.3 MATLAB编译器
11.3.1 MATL,AB编译器的配置与使用
11.3.2 MATLABBuilder的使用
11.4 MATLAB与其他语青的接口
l1.4.1 MEX文件
11.4.2 MATLAB引擎
思考与实验
第12章 MATLAB的学科应用
12.1 MATLAB在优化问题中的应用
12.1.1 优化模型与优化工具
12.1.2 应用实例
12.2 MATLAB在控制系统中的应用
12.2.1 控制系统工具箱
12.2.2 应用实例
12.3 MATLAB在信号处理中的应用
12.3.1 信号处理工具箱与Simulink模块集
12.3.2 应用实例
12.4 MATAB在数字图像处理中的应用
12.4.1 图像处理工具箱
12.4.2 应用实例
12.5 MATLAB在经济和金融领域中的应用
12.5.1 经济和金融领域的工具箱
12.5.2 应用实例
思考与实验
第1章 MATLAB基础知识
1.2 MATLAB的集成开发环境
MATLAB采用流行的图形用户操作界面,集命令的输入、执行、修改、调试于一体,操作非常直观和方便。在使用MATLAB之前,首先要安装MATLAB系统。其安装过程非常简单,只要执行安装盘上的setup.exe文件来启动安装过程,然后按照系统提示进行操作即可。安装完成后,就可以使用MATLAB了。
1.2.1 MATLAB操作界面
在Windows桌面,单击任务栏上的“开始”按钮,选择“所有程序”菜单项,然后选择“MATLAB”程序组中的“MATLAB R2008b”程序选项,就可启动MATLAB系统。启动MATLAB后,将进入MATLAB 7.7集成开发环境,如图1.2所示。MATLAB 7.7集成开发环境包括多个窗口。除MATLAB主窗口外,还有命令窗口(Command Window)、工作空间(Workspace)窗口、命令历史(Command History)窗口和当前目录(Current Directory)窗口。这些窗口都可以内嵌在MATLAB主窗口中,组成MATLAB的工作界面。此外,在MATLAB主窗口的左下角,还有一个Start按钮。