1、内 容 简 介 本书由浅入深地全面讲解了 MATLAB 软件的知识,以 MATLAB 7.0 版本的功能叙述为主。本书涉及面广,涵盖了一般用户需要使用的各种功能,并详细介绍了 MATLAB 常用工具箱的使用。在详细介绍MATLAB 理论知识的同时,全程配合实例,使读者更容易掌握。本书附带 1 张 DVD 光盘,内容为本书多媒体语音教学视频及本书所涉及的源代码。全书分为两篇。第 1 篇主要介绍 MATLAB 基础知识,第 2 篇主要介绍 MATLAB 常用工具箱的使用。涵盖的主要内容有 MATLAB 的发展、优势、特点和系统组成,常用的数据类型,矩阵和数组的基本操作,程序设计的相关知识,图形处理
2、的相关知识,GUI 设计,数值分析技术,符号运算,常用的接口编程技术,文件的输入/输出机制,Simulink 的基础知识,统计工具箱,图像处理工具箱,优化工具箱,曲线拟合工具箱,神经网络工具箱,金融工具箱,小波分析工具箱,遗传算法与直接搜索工具箱等。本书内容丰富,实例典型,实用性强,适合入门读者在较短的时间内有效地掌握 MATLAB 语言;对于广大 MATLAB 用户来说,也可以把本书当成一本常用的工具书使用。同时本书介绍了常用的专业工具箱的使用,因而也适用于相关专业的研究人士参考学习。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 MA
3、TLAB 从基础到精通/王薇编著.北京:电子工业出版社,2012.3 ISBN 978-7-121-15651-9 .M.王.MATLAB 软件.TP317 中国版本图书馆 CIP 数据核字(2011)第 282119 号 策划编辑:胡辛征 责任编辑:李云静 特约编辑:赵树刚 印 刷:北京市天竺颖华印刷厂 装 订:三河市鑫金马印装有限公司 出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:7871092 1/16 印张:29.51 字数:756 千字 印 次:2012 年 3 月第 1 次印刷 印 数:4000 册 定价:65.00 元(含 DVD 光盘
4、1 张)凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。服务热线:(010)88258888。北京中新伟业印刷有限公司 III 前 言 近年来,MATLAB 软件强大的数据计算和图形处理能力使其在各个领域得到了广泛的应用,越来越多的用户迫切需要尽快掌握 MATLAB 解决基本的问题。为此,目前市场上出现了大量讲述 MATLAB 使用的相关书籍。但是目前介绍 MATLAB 的书,其中一类主要是介绍某一功能、工具箱的使用,这类书一般只能对某个方向的相关内容进行详细阐述
5、,在实际使用中读者仍需要参考MATLAB入门的相关书籍;而另一类主要是MATLAB基础性的相关书籍,对于 MATLAB 各种函数、工具箱,只做一些概念性的介绍,在实际使用中仍需要查阅庞大的MATLAB 英文帮助文档。为此我们出版此书主要着眼于:内容全面。完整介绍 MATLAB 各项功能,适合于各个层次的科学工作者,可以帮助入门读者快速掌握 MATLAB 基本操作,可以作为 MATLAB 使用者进一步提高操作能力的高效工具书。容易掌握。对每个函数进行详细介绍,同时,结合实例分析讲解实际操作中可能遇到的问题。面向需求。对常用工具箱进行详细的介绍,基本能满足解决各研究领域实际问题的需要。本书有何特色
6、?1.全面涵盖 MATLAB 的基础知识 本书为了便于读者能最大程度地掌握 MATLAB,包含了 MATLAB 的各项基础知识,从最基础的 MATLAB 软件的安装到常用的数值分析、图形处理、程序设计等内容,全部详细地介绍给读者,便于读者梳理、学习基础知识。2.详细讲述 MATLAB 的常用工具箱 MATLAB 工具箱的使用,可以为广大用户带来很多便利。MATLAB 工具箱功能强大,可用于解决神经网络、遗传算法、小波分析等复杂问题。本书向读者介绍了常用工具箱的使用,旨在使用户在较短的时间内掌握复杂算法的使用,而无须编写大量代码即可解决实际问题。3.配备实例,操作性强 本书在每一知识点讲述完成后
7、都配备相应的实例,供读者演练,以使读者能较好地操作相应的知识点,同时这些源代码都收录在本书配套的光盘中,方便读者使用。4.附带教学视频,便于更好学习 本书附带相关章节的教学视频,帮助读者更好地学习本书的内容。IV MATLAB 从基础到精通 本书内容及知识体系 第 1 篇 基础知识(第 110 章)本篇主要介绍了 MATLAB 的基础知识。第 1 章主要总结 MATLAB 的发展、优势、特点和系统组成,以 MATLAB 7.0 为例介绍了软件的具体安装过程,并向广大读者介绍学习使用 MATLAB 的心得体会。第 2 章介绍了 MATLAB 常用的数据类型,包括整型、浮点型、逻辑类型、结构体、元
8、胞数组和字符串等的相关知识,以及数据之间的互相转换。第 3 章主要讲述矩阵、数组的基本操作,涉及矩阵和数据的创建、简单运算、特殊运算、向量和高维数组的基本知识。第 4 章讨论了 MATLAB 程序设计的相关知识,主要涉及程序设计的文件类型、变量和常量、流程控制、调试与优化等。第 5 章主要介绍 MATLAB 图形处理的相关知识,涉及基本的绘图处理,二维、三维图形的绘制及图形编辑处理技巧。第 6 章介绍了 MATLAB 创建 GUI 的两种方式,利用 GUI 向导和通过编程的方式。第 7 章介绍了数值分析技术,包括简单的数据操作、多项式运算、微分和积分、拟合和插值、线性及非线性方程组的求解。第
9、8 章重点讲述符号运算的内容,包括符号对象的创建、符号对象的常用操作和符号对象的转换。第 9 章主要介绍常用的接口编程技术,包括 MATLAB 编辑器的使用、MEX 文件的使用、MAT 文件的使用、COM 组件技术与 Word、Excel 的混合使用技术。第 10 章详细地介绍了 MATLAB 文件的输入/输出机制,包括 MATLAB 数据文件和图片文件的导入/导出等相关内容。第 2 篇 常用工具箱使用(第 1120 章)本篇介绍了 MATLAB 常用工具箱的实现。第 11 章主要介绍了 Simulink 的基础知识,包括 Simulink 的特点、Simulink 的建模环境、Simulin
10、k 的模型库和 Simulink 建模仿真的实现。第 12 章主要探讨 MATLAB 统计工具箱在假设测验、方差分析、线性回归、非线性回归和多元统计等较为常用的统计问题中的应用。第 13 章具体讲述图像处理工具箱的使用。对 MATLAB 中支持的图像文件格式、图像类型及其转换、图像处理工具箱如何完成基本的图像处理任务等做了具体的介绍。第 14 章主要介绍 MATLAB 优化工具箱的使用,包括线性规划、整数规划、无约束规划和约束规划等常规的优化算法。第 15 章主要介绍了 MATLAB 曲线拟合工具箱的使用,主要包括曲线拟合工具箱简介、利用 GUI 界面进行曲线拟合和利用命令行函数法进行曲线拟合
11、。第 16 章讨论了人工神经网络,包括 BP 神经网络、径向基神经网络、自组织神经网络、广义回归神经网络等网络算法在 MATLAB 神经网络工具箱中的使用。第 17 章主要介绍了 MATLAB 金融工具箱的使用,主要内容为 MATLAB 金融工具箱的 前 言 V组成和如何利用金融工具箱提供的函数进行常规的金融计算。第 18 章涉及小波变换的基础知识,包括常用的小波分析操作和利用 GUI 实现小波分析等小波工具箱使用时需要具备的基础知识。第 19 章主要介绍 MATLAB 遗传算法与直接搜索工具箱的使用。第 20 章通过几个实例简单介绍 MATLAB 软件在数学建模、物理、化学等领域的应用。配书
12、光盘内容介绍 为了方便读者阅读本书,本书附带 1 张 DVD 光盘。内容如下:本书主要实例的源代码。本书主要内容的多媒体语音教学视频。各章节内容的 PPT。适合阅读本书的读者 零基础的 MATLAB 用户。需要全面学习 MATLAB 的人员。需要使用 MATLAB 提供的算法完成相关的程序设计。需要在短时间内掌握 MATLAB 某些功能的各领域人员。需要一本全面涵盖 MATLAB 各项内容查询手册的人员。阅读本书的建议 没有 MATLAB 基础的读者,建议从第 1 章顺次阅读并练习每一个实例。有一定 MATLAB 基础,且具有一定编程经验的读者,可以根据实际情况有重点地选择相关内容阅读,并注重
13、实际的操作演练。对于没有编程基础,希望快速使用 MATLAB 完成一些项目,以阅读其中的图形界面操作为主。目 录 第 1 篇 基础知识 第 1 章 MATLAB 概述、安装和学习方法.2 1.1 MATLAB 简介.2 1.1.1 MATLAB 的发展历程.2 1.1.2 MATLAB 的优势和特点.3 1.1.3 MATLAB 的系统组成.3 1.2 MATLAB 7.0 的安装.4 1.3 MATLAB 用户界面.6 1.3.1 启动和退出.6 1.3.2 主菜单.7 1.3.3 标题栏.17 1.3.4 命令窗口.17 1.3.5 当前目录浏览窗口.19 1.3.6 工作空间浏览窗口.2
14、2 1.3.7 历史命令窗口.24 1.4 帮助系统.24 1.4.1 帮助浏览器.25 1.4.2 命令帮助系统.27 1.4.3 远程帮助系统.28 1.5 如何学习 MATLAB.28 1.6 本章小结.29 第 2 章 MATLAB 的数据类型.30 2.1 整型.30 2.2 浮点型.31 2.3 逻辑类型.32 2.4 字符串.33 2.4.1 字符串的生成.33 2.4.2 字符串操作函数.34 2.5 元胞数组.37 2.5.1 元胞数组的创建.37 2.5.2 元胞数组的访问.38 2.5.3 元胞数组的显示.39 2.5.4 元胞数组的删除.40 目 录 VII2.6 结构
15、体.41 2.6.1 结构体的生成.41 2.6.2 结构体的操作.42 2.7 不同数据类型之间的转化.43 2.8 本章小结.46 第 3 章 矩阵和数组.47 3.1 矩阵和数组的概念.47 3.2 矩阵和数组的创建.47 3.3 矩阵及数组的基本操作.51 3.3.1 基本信息获取.51 3.3.2 元素访问.53 3.4 矩阵及数组的简单运算.57 3.4.1 基本函数.57 3.4.2 加减运算.63 3.4.3 乘法运算.64 3.4.4 除法运算.64 3.4.5 乘方运算.66 3.5 矩阵的特殊运算.67 3.5.1 行列式运算.67 3.5.2 逆运算.67 3.5.3
16、秩运算.68 3.5.4 特征值运算.68 3.6 数组的特殊运算.68 3.6.1 关系运算.68 3.6.2 逻辑运算.71 3.7 向量及其运算.73 3.7.1 向量的生成.73 3.7.2 向量的运算.73 3.8 高维数组操作.78 3.8.1 高维数组的创建.78 3.8.2 高维数组的基本操作.80 3.9 本章小结.83 第 4 章 程序设计.84 4.1 程序设计概述.84 4.2 脚本文件.87 4.3 函数文件.87 4.3.1 函数的定义.87 VIII MATLAB 从基础到精通 4.3.2 函数类型.89 4.3.3 函数的调用和变量传递.90 4.3.4 输入/输出参数的控制.91 4.4 常量、变量.92 4.4.1 变量的命名.92 4.4.2 系统预定义的常量.92 4.4.3 变量类型.93 4.4.4 系统预定义的变量.93 4.5 程序结构及流程控制.94 4.5.1 赋值语句.94 4.5.2 条件语句.94 4.5.3 循环语句.98 4.6 交互控制指令.101 4.7 程序的调试.106 4.7.1 常见错误类型.106 4.7.2