MATLAB程序设计(原书第3版)pdf下载

MATLAB程序设计(原书第3版)百度网盘pdf下载

作者:
简介:MATLAB程序设计(原书第3版)
出版社:
出版时间:2018-07
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

内容简介

本书展示使用MATLAB解决各种典型问题的方法和技巧,不仅指导读者编写清晰、高效、良好的MATLAB程序,还介绍了大量MATLAB的实用函数。全书共9章,前7章涵盖MATLAB的基本概念和实现,后2章引入更多的高级应用。本书内容全面,通俗易懂,适合作为工程和计算机专业教材,同时也可作为广大科技工作者掌握MATLAB计算工具的自学用书。

作者简介

斯蒂芬 J.查普曼(Stephen J. Chapman)拥有路易斯安那州立大学电气工程学士学位、佛罗里达中央大学电气工程硕士学位,并在莱斯大学进一步深造。他曾供职于美国海军、休斯敦大学、MIT林肯实验室,目前在墨尔本负责澳大利亚BAE系统建模和运营分析,开发了一个军舰自我防御的模型,这个模型包含超过40万行的MATLAB代码且运行了十余年。他是电气和电子工程师学会的高级会员,也是澳大利亚工程师学会的会员。

目录

目  录
Essentials of MATLAB Programming, Third Edition
出版者的话
译者序
前言
第1章 MATLAB简介 1
1.1 MATLAB优势所在 1
1.2 MATLAB不足之处 3
1.3 MATLAB工作环境 3
1.3.1 操作界面 3
1.3.2 命令窗口 4
1.3.3 工具栏 5
1.3.4 命令历史窗口 6
1.3.5 文档窗口 6
1.3.6 图形窗口 8
1.3.7 窗口停靠与取消停靠 9
1.3.8 工作空间 9
1.3.9 工作空间浏览器 10
1.3.10 当前文件夹浏览器 11
1.3.11 获取帮助 11
1.3.12 几个重要命令 13
1.3.13 MATLAB搜索路径 14
1.4 MATLAB应用示例——计算器 15
1.5 本章小结 17
1.6 本章习题 17
第2章 MATLAB基础知识 19
2.1 变量和数组 19
2.2 创建和初始化变量 21
2.2.1 在赋值语句中初始化变量 22
2.2.2 使用快捷表达式初始化 23
2.2.3 使用内置函数初始化 24
2.2.4 使用键盘输入初始化变量 25
2.3 多维数组 26
2.3.1 在内存中存储多维数组 27
2.3.2 用一维方式访问多维数组 28
2.4 子数组 28
2.4.1 函数end 28
2.4.2 在赋值语句左侧使用子数组 29
2.4.3 将标量赋值给子数组 30
2.5 特殊值 30
2.6 显示输出数据 32
2.6.1 更改默认格式 32
2.6.2 函数disp 33
2.6.3 使用函数fprintf标准化输出 33
2.7 数据文件 34
2.8 标量和数组运算 36
2.8.1 标量运算 36
2.8.2 数组和矩阵运算 37
2.9 运算级别 39
2.10 MATLAB内置函数 41
2.10.1 任意返回值 41
2.10.2 使用数组作为MATLAB函数输入 42
2.10.3 常见MATLAB函数 42
2.11 绘图简介 43
2.11.1 使用简单xy绘图 43
2.11.2 打印绘图 44
2.11.3 将绘图导出为图像文件 44
2.11.4 多个绘图 46
2.11.5 线条颜色、线条类型、标记类型和图例 46
2.11.6 对数刻度 49
2.12 示例 50
2.13 调试MATLAB程序 54
2.14 本章小结 56
2.14.1 良好编程习惯总结 56
2.14.2 MATLAB总结 57
2.15 本章习题 59
第3章 二维绘图 65
3.1 二维绘图的其他功能 65
3.1.1 对数刻度 65
3.1.2 控制x轴和y轴范围 68
3.1.3 同一轴上绘制多个绘图 70
3.1.4 创建多个图形 70
3.1.5 子图 72
3.1.6 控制绘图上的点间距 72
3.1.7 绘制线的高级控制 75
3.1.8 文本字符串的高级控制 75
3.2 极坐标绘图 78
3.3 注释与保存绘图 79
3.4 二维绘图的其他类型 82
3.5 二维数组绘图 85
3.6 本章小结 87
3.6.1 良好编程习惯总结 87
3.6.2 MATLAB总结 87
3.7 本章习题 88
第4章 分支结构与程序设计 91
4.1 自顶向下设计技术简介 91
4.2 伪代码的使用 93
4.3 逻辑数据类型 94
4.3.1 关系运算符与逻辑运算符 94
4.3.2 关系运算符 94
4.3.3 运算符==和~=的注意事项 95
4.3.4 逻辑运算符 96
4.3.5 逻辑函数 99
4.4 分支 100
4.4.1 if结构 100
4.4.2 if结构示例 102
4.4.3 if结构的注意事项 106
4.4.4 switch结构 108
4.4.5 try/catch结构 109
4.5 调试MATLAB程序的更多信息 115
4.6 本章小结 120
4.6.1 良好编程习惯总结 120
4.6.2 MATLAB总结 121
4.7 本章习题 121
第5章 循环结构和向量化 125
5.1 while循环 125
5.2 for循环 129
5.2.1 操作细节 134
5.2.2 向量化:更快的循环选择 136
5.2.3 MATLAB即时编译器 136
5.2.4 break语句和continue语句 138
5.2.5 嵌套循环 140
5.3 逻辑数组和向量化 141
5.4 MATLAB探查器 143
5.5 其他示例 145
5.6 函数textread 155
5.7 本章小结 157
5.7.1 良好编程习惯总结 157
5.7.2 MATLAB总结 157
5.8 本章习题 158
第6章 用户自定义函数基本特性 163
6.1 MATLAB函数简介 164
6.2 MATLAB变量传递:值传递机制 166
6.3 可选参数 175
6.4 使用全局内存共享数据 178
6.5 函数调用之间的数据存储 183
6.6 MATLAB内置函数:排序函数 187
6.7 MATLAB内置函数:随机数生成函数 189
6.8 本章小结 189
6.8.1 良好编程习惯总结 189
6.8.2 MATLAB总结 190
6.9 本章习题 190
第7章 用户自定义函数高级特性 195
7.1 函数的函数 195
7.2 本地函数、私有函数和嵌套函数 198
7.2.1 本地函数 198
7.2.2 私有函数 199
7.2.3 嵌套函数 199
7.2.4 函数执行顺序 201
7.3 函数句柄 201
7.3.1 创建和使用函数句柄 202
7.3.2 函数句柄的优点 204
7.3.3 函数句柄和嵌套函数 204
7.3.4 应用示例:常微分方程的求解 206
7.4 匿名函数 210
7.5 递归函数 211
7.6 绘图函数 212
7.7 直方图 214
7.8 本章小结 218
7.8.1 良好编程习惯总结 218
7.8.2 MATLAB总结 218
7.9 本章习题 219
第8章 其他数据类型和绘图类型 224
8.1 复数 224
8.1.1 复数变量 225
8.1.2 复数关系运算 225
8.1.3 复数函数 226
8.1.4 绘制复数 229
8.2 字符串和字符串函数 231
8.2.1 字符串转换函数 232

前言/序言

前  言Essentials of MATLAB Programming, Third EditionMATLAB(MATrix LABoratory的简称,即矩阵实验室)是由MathWorks公司开发的专业工程与科学计算软件,其最初的设计目的是进行矩阵的数学运算。然而,近年来,MATLAB逐渐发展成为一个能够从根本上解决各种重要技术问题并且极其灵活的计算系统。
MATLAB软件执行MATLAB语言编写的程序,同时还提供十分丰富的预定义函数库,简化编程过程,提高编程效率。与其他编程语言(如Fortran或C)相比,丰富的MATLAB库函数能够帮助用户更容易地解决工程技术问题。本书将基于MATLAB R2014b版本介绍MATLAB语言的特点,并展示如何使用它来解决经典的技术问题。
通过对MATLAB编程语言的学习,学生将学会如何使用MATLAB编写整洁、高效、文档化的程序。另外,本书无意在此对所有的MATLAB函数逐一介绍,仅讲解如何使用MATLAB编程,以及如何利用联机帮助工具查找需要的MATLAB函数。
本书适合计算机科学与技术专业的大学一年级学生使用,可作为“编程与问题求解导论”课程的教材。具体课时可安排9周,每周3小时。
第3版修订本书适用于MATLAB R2014b及更高版本。MATLAB R2014b是MATLAB启用新的H2图形系统后的首个版本,其中H2图形系统旨在实现更高质量的图形输出效果。目前,图形组件成为带有句柄的MATLAB对象,其属性可通过MATLAB对象标记进行访问。下面将为大家简单介绍此版本的修订之处。
自上一版以来,面向对象思想和面向对象编程的MATLAB实现越发成熟,在此将进行详细介绍。此外,仍对旧关键字–值方法提供支持。
前面章节大幅缩短,以便更合理地安排内容让大家理解和掌握重要部分。现将分支部分和循环部分分别独立成章,并将函数部分分为两章进行讨论。
第3章着重介绍二维绘图,并整理所有绘图相关信息以确保大家理解。
第8章是对三维绘图的拓展,该章有助于加强并深化学生对三维绘图的学习和理解。
第9章介绍了最新的H2图形的特征。
本书特色本书的特色在于不断强调如何编写可靠的MATLAB程序。无论是对于初学者,还是对于已有基础的相关从业人员,本书都能给予一定的帮助。下面详细介绍本书特色。
1.注重自顶向下的设计方法本书第4章介绍了一种自顶向下的设计方法,并将其运用于书中的其余部分。首先,此方法鼓励大家在开始编程之前认真考虑好如何设计程序,即重点需要弄清楚所要解决问题的明确定义、所需的输入和输出等。其次,一旦清楚问题定义,下面就是考虑如何逐步将任务成功地分解为较小的子任务,并将各个子任务作为单独的子程序或函数来实现。最后,要理解在编程过程中测试的重要性,不管是组件程序的单元测试,还是最终程序的详细测试,都需要认真进行。
本书所讲授的通用设计过程可概括如下。
(1)清楚地陈述所要解决的问题。
(2)定义程序所需的输入和产生的输出。
(3)描述程序中的实现算法。涉及自顶向下设计和任务逐步分解,需用伪代码或流程图。
(4)将算法转换成MATLAB语句。
(5)测试MATLAB程序,包括对特定函数的单元测试,以及不同数据集下最终程序的详细测试。
2.注重函数本书重视函数的使用,其可在逻辑上将任务分解为更小的子任务,并具有数据隐藏的优点。同时,还强调了函数在组合到最终程序之前单独测试的重要性。此外,本书介绍了使用函数所犯的常见错误,以及如何避免这些错误。
3.注重MATLAB工具本书介绍了如何正确使用MATLAB的内置工具,使编程和调试更加容易。所涵盖的工具包括编辑器/调试器、工作空间浏览器、帮助浏览器和GUI设计工具。
4.“良好编程习惯”框这些框用来突出良好的编程实践。此外,在章节的最后会给大家总结良好编程习惯。下面是一个“良好编程习惯”框的示例。
良好编程习惯始终将if结构的主体缩进两个或更多空格,以提高代码的可读性。
5.“编程误区”框这些框用来突出常见的错误,以便避免它们。下面是一个“编程误区”框的示例。
编程误区确保在前63个字符中变量名是唯一的。否则,MATLAB将无法分辨出它们之间的区别。
MATLAB编程的优势与传统的计算机编程语言相比,MATLAB在解决工程技术问题方面具有诸多优势,下面重点介绍几个。
1.易用性MATLAB是一种解释型语言,如同各种版本的Basic语言。与Basic一样,它也非常容易使用。该程序可作为便签式计算器来求解在命令行输入的表达式的值,或者用于执行预先编写好的大型程序。在内置集成开发环境中,可以方便地编写和修改程序,并使用MATLAB调试器来调试程序。正是基于这种语言的易用性,对于快速建立新程序的原型,它是一个理想的工具。
MATLAB还提供了许多程序开发工具,包括集成的编辑器/调试器、在线文档和手册、工作空间浏览器以及大量示例。
2.平台独立性MATLAB支持多种操作系统,并提供了大量的平台独立措施。在撰写本书时,Windows 7/8/10、Linux、Unix、Mac OS X 10.10和10.11等系统都支持MATLAB。对于MATLAB而言,在一个平台上编写的程序在其他平台上一样可以正常运行,在一个平台上编写的数据文件在其