本书是对普通高等教育“十一五”国家级规划教材《MATLAB程序设计与应用》(第二版)的一次全面修订。全书总体保持第二版原有体系结构,但根据技术发展和应用的需要扩充了许多新内容。全书强调数学方法、算法原理和MATLAB实现技术并重,帮助读者更好地理解和应用MATLAB;注重理论与实践相结合,突出MATLAB在有关学科领域的应用,贴近读者需要;配套建设丰富的教学资源,依托网络平台,满足读者个性化学习需求。
《MATLAB程序设计与应用(第3版)/教育部大学计算机课程改革项目规划教材》特色:
●数学方法、算法原理与MATLAB的功能实现并重,帮助读者更好地理解MATLAB。
●理论与实践相结合,突出MATLAB在有关学科领域的实际应用,贴近读者需要。
●结构合理,体系得当,脉络清晰,循序渐进,符合认知规律。
●配套的教学资源丰富,教学适用性强,且能满足读者个性化学习需求。
《MATLAB程序设计与应用》一书出版于2002年6月,该书第二版于2006年7月出版。该书出版的10多年,也是MATLAB在我国得到不断普及和应用的10多年。时至今日,无论是课程教学,还是工程应用,MATLAB的影响力与十几年前相比已不可同日而语了。该书契合了技术的发展趋势和教学改革的实际需求,使用范围广,发行量大,涉及的读者层面多,被许多高校选做教材;该书受到专家、同行以及广大读者的好评,于2006年8月被遴选为普通高等教育“十一五”国家级规划教材,2009年6月被评为2008年度湖南省高等学校优秀教材。作者十分感谢专家、同行以及广大读者的支持和肯定,也迫切希望本书内容能赶上时代的节拍,不断更新,以满足教学与应用的现实需要。为此,作者对第二版进行改写修订,出版该书第三版。
本次改版基于三点认识,一是MATLAB版本不断更新,功能不断加强,应用范围不断扩大;二是国内外计算机教育界倡导在计算机教育中要大力培养学生的计算思维(Computational Thinking)能力;三是新型学习模式的兴起,例如微课、大规模开放式在线课程(Massive Open Online Course,MOOC)等。
首先,关于MATLAB版本的更新,这是改版的直接起因。从2006年起,MathWorks公司每年发布两次以年份命名的MATLAB版本,其中3月份左右发布a版,9月份左右发布b版,包括MATLABR2006a(7.2版)、MATLABR2006b(7.3版)、……、MATLABR2012a(7.14版)。2012年9月,MathWorks公司推出了MATLABR2012b,即MATLAB8.0版,该版本从操作界面到系统功能都有重大改变和加强,随后推出了MATLABR2013a(8.1版)、MATLABR2013b(8.2版)、……、MATLABR2015b(8.6版)。2016年3月,MathWorks公司推出了MATLABR2016a(9.0版),2016年9月推出了MATLABR2016b(9.1版),以后还会不断推出新的版本。从MATLABR2012b开始,MATLAB的操作界面和基本功能是一样的,所以不必过于在意版本的变化。本书以MATLABR2016a(9.0版)作为操作环境。
其次,关于计算思维能力培养。计算思维不仅反映了计算的原理,更重要的是体现了基于计算机的问题求解思路与方法。本书主要介绍科学计算问题的MATLAB实现方法。科学计算是研究工程问题以及其他应用问题的求解方法,并在计算机上进行编程实现的一门课程,既有数学类课程中理论上的抽象性和严谨性,又有程序设计课程中技术上的实用性和实验性的特征。20世纪80年代以来,MATLAB等科学计算软件的产生,使得科学计算问题的实现变得十分方便。科学计算方法及其软件工具的应用就是对实际问题进行分析并进行约简和抽象,从而建立数学模型,然后根据精度和效率的要求选择合适的计算方法,进而设计算法并运用程序设计方法实现。因此,科学计算方法及其软件工具的应用能体现计算思维的理念,学习科学计算方法及其软件工具对培养计算思维能力具有良好的作用。
第三,关于新型学习模式。在移动互联网时代,由于智能手机、平板电脑等移动终端的大量应用,带来了知识传播模式和学习方式的深刻变化。本教材顺应新的发展趋势,将一些重要的知识点做成了微视频,读者可利用智能移动终端扫描书中的二维码直接观看。同时,适时建设MOOC课程,线上学习和线下学习相得益彰。
基于以上认识,本书体现以下特点:第一,强调数学方法、算法原理和MATLAB实现技术并重,从而帮助读者更好地理解和应用MATLAB;第二,注重理论与实践相结合,突出MATLAB在有关学科领域的应用,贴近读者需要;第三,配套建设丰富的教学资源,依托网络平台,满足读者个性化学习需求。
刘卫国博士,中南大学信息科学与工程学院教授,教育部文科计算机基础教学指导分委员会委员,美国加州大学圣地亚哥分校(UCSD)访问学者。主要研究领域为网络与信息安全、软件工程、智能信息处理、计算机教育。先后主持完成省部级教学改革项目10余项,获省级教学成果二等奖1项、三等奖1项,省级普通高等学校优秀教材奖1项,全国高校出版社****书一等奖1项,茅以升铁路教育专项奖(教学专项奖)1项。主编出版计算机系列教材30余部,其中普通高等教育“十一五”国家级规划教材3部。
基础篇
第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 MATLAB操作界面的组成
1.3.2 MATLAB的搜索路径
1.4 MATLAB基本操作
1.4.1 交互式命令操作
1.4.2 MATLAB功能演示
1.4.3 MATLAB帮助系统
习题1
第2章 MATLAB数据及其运算
2.1 MATLAB数值数据
2.1.1 数值数据类型的分类
2.1.2 数据的输出格式
2.2 MATLAB矩阵的表示
2.2.1 矩阵的建立
2.2.2 冒号表达式
2.2.3 矩阵元素的引用
2.3 变量及其操作
2.3.1 变量与赋值语句
2.3.2 预定义变量
2.3.3 变量的管理
2.4 MATLAB常用内部函数
2.4.1 常用数学函数
2.4.2 矩阵的超越函数
2.5 MATLAB运算
2.5.1 算术运算
2.5.2 关系运算
2.5.3 逻辑运算
2.6 字符串
2.6.1 字符串的表示
2.6.2 字符串的操作
2.7 结构数据和单元数据
2.7.1 结构数据
2.7.2 单元数据
习题2
第3章 MATLAB矩阵处理
3.1 特殊矩阵
3.1.1 通用的特殊矩阵
3.1.2 用于专门学科的特殊矩阵
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 稀疏存储方式的产生
3.5.3 稀疏矩阵应用举例
习题3
第4章 MATLAB程序流程控制
4.1 M文件
4.1.1 M文件的建立与打开
4.1.2 M文件的分类
4.2 程序控制结构
4.2.1 顺序结构
4.2.2 选择结构
4.2.3 循环结构
4.3 函数文件
4.3.1 函数文件的基本结构
4.3.2 函数调用
4.3.3 函数参数的可调性
4.3.4 全局变量与局部变量
4.4 特殊形式的函数
4.5 程序调试与优化
4.5.1 程序调试方法
4.5.2 程序性能分析与优化
习题4
第5章 MATLAB绘图
5.1 二维图形
5.1.1 绘制二维曲线的基本函数
5.1.2 绘制图形的辅助操作
5.2 其他形式的二维图形
5.2.1 对函数自适应采样的绘图函数
5.2.2 其他坐标系下的二维曲线图
5.2.3 其他特殊二维图形
5.3 三维图形
5.3.1 绘制三维曲线的基本函数
5.3.2 三维曲面
5.3.3 其他三维图形
5.4 隐函数绘图
5.4.1 隐函数二维绘图
5.4.2 隐函数三维绘图
5.5 图形修饰处理
5.5.1 视点处理
5.5.2 色彩处理
5.5.3 图形的裁剪处理
5.6 图像处理与动画制作
5.6.1 图像处理
5.6.2 动画制作
5.7 交互式绘图工具
5.7.1 “绘图”选项卡
5.7.2 绘图工具
习题5
第6章 MATLAB数据分析与多项式计算
6.1 数据统计分析
6.1.1 最大值和最小值
6.1.2 求和与求积
6.1.3 平均值和中值
6.1.4 累加和与累乘积
6.1.5 标准差与相关系数
6.1.6 排序
6.2 多项式计算
……
应用篇
实验篇
参考文献