描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302467144丛书名: 科学与工程计算技术丛书
全书分为MATLAB基础应用、科学计算和工具箱等三部分,共17章。基础应用部分详细讲解了MATLAB的计算入门知识、基本运算方法、图形的可视化以及编程方法等,这些都是掌握科学计算的知识。科学计算部分详细讲解了MATLAB的插值拟合、数据拟合、微分方程求解、微分方程及级数、线性方程(组)求解、非线性方程(组)求解、常微分方程(组)求解、概率统计计算、偏*小二乘应用分析、人工智能算法等相关知识。工具箱部分介绍了模糊逻辑工具箱、优化工具箱和偏微分方程工具箱。
本书按逻辑编排,自始至终采用实例描述; 内容完整且每章相对独立,是一本具有较高参考价值的MATLAB科学计算参考书。
本书以工程应用为目标,内容深入浅出,讲解循序渐进,适合作为理工科高等院校研究生、本科生教学用书,也可作为广大科研工程技术人员的参考用书。
目录
第1章MATLAB概述
1.1MATLAB平台简介
1.2MATLAB R2016a的工作环境
1.2.1命令行窗口
1.2.2命令历史记录窗口
1.2.3当前文件夹窗口和路径管理
1.2.4搜索路径
1.2.5工作区窗口和数组编辑器
1.2.6变量的编辑命令
1.2.7存取数据文件
1.3MATLAB图形绘制
1.4MATLAB的帮助系统
1.4.1联机帮助系统
1.4.2命令窗口查询帮助系统
1.4.3联机演示系统
本章小结
第2章MATLAB基本运算
2.1MATLAB的数据类型
2.1.1变量和常量
2.1.2数值型数据
2.1.3字符型数据
2.1.4元胞数组
2.1.5结构体
2.1.6函数句柄
2.1.7数据类型间的转换
2.2数组运算
2.2.1数组的创建和操作
2.2.2数组的常见运算
2.3矩阵运算
2.3.1矩阵生成
2.3.2向量的生成
2.3.3矩阵加减运算
2.3.4矩阵乘法运算
2.3.5矩阵除法运算
2.4奇异值分解
2.5矩阵的基本函数运算
2.5.1矩阵的分解运算
2.5.2关系运算和逻辑运算
2.6线性方程组
2.6.1矩阵逆和除法解恰定方程组
2.6.2矩阵除法解超定方程组
2.6.3矩阵除法解欠定方程组
2.7符号运算
2.7.1符号表达式的生成
2.7.2符号矩阵
2.7.3常用符号运算
2.8复数及其运算
2.8.1复数和复矩阵的生成
2.8.2复数的运算
2.8.3留数运算
2.8.4泰勒级数展开
2.8.5傅里叶变换及其逆变换
2.8.6拉普拉斯变换及其逆变换
2.8.7Z变换及其逆变换
2.9多项式求解
本章小结
第3章MATLAB图形可视化
3.1图形绘制
3.1.1离散数据图形绘制
3.1.2函数图形绘制
3.1.3图形绘制的基本步骤
3.2二维图形绘制
3.2.1plot指令
3.2.2格栅
3.2.3图形标记说明
3.2.4线型、标记和颜色
3.2.5子图绘制
3.2.6拓扑关系图
3.2.7双坐标轴绘制
3.2.8二元函数的伪色彩
3.2.9MATLAB特殊符号标记
3.3三维图形绘制
3.3.1网格图绘制
3.3.2曲线图绘制
3.3.3曲面图绘制
3.3.4等值线图绘制
3.3.5特殊图形绘制
3.4四维图形可视化
3.4.1用颜色描述第四维
3.4.2其他函数
3.5MATLAB动画设计
本章小结
第4章MATLAB编程入门
4.1MATLAB编程简介
4.2MATLAB编程原则
4.3M文件和函数
4.3.1M文件
4.3.2匿名函数、子函数、私有函数与私有目录
4.3.3重载函数
4.3.4eval和feval函数
4.3.5内联函数
4.3.6向量化和预分配
4.4MATLAB程序控制语句运用
4.5MATLAB中的函数及调用
4.5.1函数类型
4.5.2函数参数传递
4.6MATLAB程序调试
4.6.1调试方法
4.6.2M文件分析工具
4.7MATLAB常用编程技巧
4.7.1循环计算
4.7.2使用例外处理机制
4.7.3通过varargin传递参数
本章小结
第5章插值拟合
5.1插值问题
5.1.1拉格朗日插值
5.1.2牛顿均差插值
5.2一维数据插值
5.3埃尔米特插值
5.4二维数据插值
5.5回归分析
本章小结
第6章数据拟合
6.1函数逼近
6.1.1切比雪夫逼近
6.1.2傅里叶逼近
6.2小二乘拟合
6.3多项式拟合
6.4曲线拟合的小二乘法
6.5用正交多项式作小二乘拟合
6.6超定方程组的小二乘解
6.7非线性曲线拟合
6.8非线性拟合转线性拟合
6.9用MATLAB解决拟合问题
6.10数据拟合方法
本章小结
第7章微分方程求解
7.1符号微积分
7.1.1极限
7.1.2导数
7.1.3积分
7.1.4化简、提取和代入
7.1.5傅里叶变换及其逆变换
7.1.6拉普拉斯变换及其逆变换
7.1.7Z变换及其逆变换
7.2数值积分
7.3微分方程的数值解
7.4微积分运算
7.4.1龙贝格积分法
7.4.2自适应积分法
7.4.3样条函数求积分
7.5动态微分方程模型
7.6打靶法
本章小结
第8章微分方程及级数
8.1微分方程基本运算
8.1.1常微分方程符号解
8.1.2常微分方程数值解
8.1.3泰勒级数
8.2微分方程在实际物理模型中的应用
8.2.1肿瘤大小应用分析
8.2.2放射性废料的处理问题
8.2.3质点系转动惯量求解
8.2.4储油罐的油量计算
8.2.5香烟毒物摄入问题
8.2.6冰雹的下落速度
本章小结
第9章线性方程(组)求解
9.1递推算法
9.1.1循环迭代
9.1.2迭代收敛性
9.1.3牛顿迭代
9.2高斯消元法
9.3追赶法
9.4范数
9.5方程组的性态
9.6高斯塞德尔迭代法
9.7迭代法的收敛性
9.8雅可比迭代法
本章小结
第10章非线性方程(组)求解
10.1线性规划问题
10.2非线性规划问题
10.2.1有约束的一元函数小值
10.2.2无约束的多元函数小值
10.2.3有约束的多元函数小值
10.2.4二次规划问题
10.3“半无限”有约束的多元函数解
10.4极小化极大问题
10.5多目标规划问题
10.6小二乘问题
10.6.1约束线性小二乘
10.6.2非线性曲线拟合
10.6.3非线性小二乘
10.6.4非负线性小二乘
10.7非线性方程(组)的解
10.7.1非线性方程的解
10.7.2非线性方程组的解
本章小结
第11章常微分方程(组)求解
11.1常微分方程解
11.2欧拉方法
11.2.1向前欧拉方法
11.2.2向后欧拉方法
11.2.3梯形公式
11.2.4改进欧拉公式
11.3龙格库塔方法
11.3.1二阶龙格库塔法
11.3.2三阶龙格库塔法
11.3.3四阶龙格库塔法
11.4亚当斯方法
11.4.1亚当斯外推公式
11.4.2亚当斯内推公式
11.4.3亚当斯校正公式
11.4.4汉明法
11.5一阶微分方程(组)的数值解计算
11.6高阶微分方程(组)的数值解计算
11.7边值问题的数值解计算
11.8有限差分方法
11.9常微分方程(组)边值问题数值解
本章小结
第12章概率统计分布计算
12.1概率密度函数
12.2随机变量的一般特征
12.2.1期望
12.2.2方差、标准差、矩
12.2.3协方差、相关系数
12.3一维随机数生成
12.4特殊连续分布
12.5特殊离散分布
12.6生成多维联合分布随机数
12.6.1各维度独立
12.6.2协方差阵生成多元正态分布
12.7统计图绘制
12.8方差分析
12.8.1单因素试验的方差分析
12.8.2双因素试验的方差分析
12.9蒙特卡罗方法
本章小结
第13章偏小二乘应用分析
13.1偏小二乘回归
13.2偏小二乘案例分析
13.3本章小结
第14章人工智能算法
14.1人工智能基本概念
14.1.1智能的概念
14.1.2人工智能的概念
14.1.3人工智能的研究目标
14.2人工智能的典型应用
14.3人工智能的MATLAB实现
14.3.1粒子群算法的MATLAB实现
14.3.2遗传算法的MATLAB实现
14.3.3模糊神经网络控制在MATLAB中的应用
14.3.4蚁群算法的MATLAB实现
本章小结
第15章模糊逻辑工具箱
15.1隶属度函数
15.1.1高斯隶属度函数
15.1.2两边型高斯隶属度函数
15.1.3一般钟型隶属度函数
15.1.4两个sigmoid型隶属度函数之差组成的隶属度函数
15.1.5通用隶属度函数
15.1.6П形隶属度函数
15.1.7两个sigmoid型隶属度函数乘积组成的隶属度函数
15.1.8sigmoid型隶属度函数
15.1.9S形隶属度函数
15.1.10梯形隶属度函数
15.1.11三角形隶属度函数
15.1.12Z形隶属度函数
15.1.13两个隶属度函数之间转换参数
15.1.14基本FIS编辑器
15.1.15隶属度函数编辑器
15.2模糊推理结构
15.2.1不使用数据聚类从数据生成FIS
15.2.2使用减法聚类从数椐生成FIS
15.2.3生成FIS曲面
15.2.4mamdani型FIS转换为sugeno型FIS
15.2.5完成模糊推理计算
15.2.6模糊均值聚类
15.2.7模糊均值和减法聚类
15.2.8绘制FIS
15.2.9绘制给定变量的所有隶属度函数曲线
15.2.10从磁盘装入FIS
15.2.11从FIS中删除某一隶属度函数
15.2.12从FIS中删除变量
15.2.13设置模糊系统属性
15.2.14以分行形式显示FIS所有属性
15.2.15完成模糊运算
15.2.16解析模糊规则
15.2.17规则编辑器和语法编辑器
15.2.18规则观察器和模糊推理框图
15.2.19保存FIS到磁盘
15.2.20显示FIS的规则
15.3模糊聚类工具箱
15.4直接自适应模糊控制
15.4.1问题描述
15.4.2控制器设计
15.4.3自适应律设计
15.4.4直接自适应模糊控制仿真
本章小结
第16章优化工具箱
16.1优化工具箱及化问题简介
16.1.1优化工具箱常用函数
16.1.2化问题
16.2线性规划
16.2.1线性规划函数
16.2.2线性规划问题的应用
16.3无约束非线性规划
16.3.1基本数学原理简介
16.3.2无约束非线性规划函数
16.3.3无约束非线性规划问题的应用
16.4二次规划
16.4.1二次规划函数quadprog
16.4.2二次规划问题的应用
16.5有约束小化
16.5.1有约束小化函数fmincon
16.5.2有约束小化的应用
16.6目标规划
16.6.1目标规划函数fgoalattain
16.6.2目标规划的应用
16.7小化
16.7.1小化函数fminimax
16.7.2小化的应用
本章小结
第17章偏微分方程工具箱
17.1偏微分方程工具箱简介
17.2求解椭圆方程
17.3求解抛物线方程
17.4求解双曲线方程
17.5求解特征值方程
本章小结
前言
在科学研究和工程计算领域经常会遇到一些非常复杂的计算问题,这些问题利用计算器或手工计算无法完成,只能借助计算机完成,而MATLAB在数值计算方面表现卓越,又MATLAB语言具有编程效率高、图形界面友好、全方位的帮助系统、扩充能力强、交互性好、可移植性强等特点,因此,MATLAB广泛应用于各行各业。
目前,MATLAB已成为数学应用领域的重要基础课程的实验平台,而对于学生而言有效的学习途径是结合专业课程的学习掌握该软件的使用与编程。本书将详细介绍应用MATLAB R2016a进行科学计算的实现方法。
1. 本书特点
由浅入深,循序渐进:
本书以MATLAB爱好者为对象,首先从MATLAB使用基础讲起,再由简单的科学计算出发,逐渐过渡到MATLAB优化设计部分,并辅以工程中的应用案例,帮助读者快速掌握MATLAB进行科学计算与优化设计和开发。
步骤详尽、内容新颖:
本书结合作者多年MATLAB使用经验与实际工程应用案例,将MATLAB软件的使用方法与技巧详细地讲解给读者。本书在MATLAB进行科学计算和优化设计讲解过程中,步骤详尽,与算法理论贴切并辅以实际案例为背景,使读者在阅读时,结合程序和理论,从而快速理解理论思想,并掌握该理论编程方法。
实例典型,轻松易学:
通过学习实际工程应用案例,运用MATLAB科学计算求解,是掌握MATLAB编程应用好的方式。本书通过理论联系实际案例,并结合编程代码,透彻详尽地讲解了MATLAB在科学计算和数值分析中的应用研究。
2. 本书内容
本书以初中级读者为对象,结合笔者多年MATLAB使用经验与实际工程应用案例,将MATLAB软件的使用方法与技巧详细地讲解给读者。本书基于MATLAB R2016a版,详细讲解MATLAB在科学计算中的应用。全书内容共分为三部分,具体如下。
第1部分: MATLAB基础应用部分。详细讲解了MATLAB简介、基本运算、图形的可视化以及编程方法等,这些都是掌握科学计算的知识。
第1章MATLAB简介第2章MATLAB基本运算
第3章MATLAB图形可视化 第4章MATLAB编程入门
第2部分: MATLAB科学计算部分。详细讲解了MATLAB的插值拟合、数据拟合、微分方程求解、微分方程及级数、线性方程(组)求解、非线性方程(组)求解、常微分方程(组)求解、概率统计计算等相关知识。
第5章插值拟合 第6章数据拟合
第7章微分方程求解 第8章微分方程及级数
第9章线性方程(组)求解 第10章非线性方程(组)求解
第11章常微分方程(组)求解 第12章概率统计分布计算
第13章偏小二乘应用分析 第14章人工智能算法
第3部分: MATLAB工具箱。详细讲解了MATLAB的模糊逻辑工具箱、优化工具箱、偏微分方程工具箱等相关知识。
第15章模糊逻辑工具箱 第16章优化工具箱
第17章偏微分方程工具箱
3. 读者对象
本书适合于MATLAB初学者和研究算法提高并解决工程应用能力的读者,具体说明如下:
相关从业人员 初学MATLAB科学计算的技术人员
大中专院校的教师和在校生 相关培训机构的教师和学员
广大科研工作人员 MATLAB爱好者
4. 读者服务
为了方便解决本书疑难问题,读者朋友在学习过程中遇到与本书有关的技术问题时,可以发邮件到邮箱caxart@126.com,或者访问博客http://blog.sina.com.cn/caxart,编者会尽快给予解答,我们将竭诚为您服务。
另外,本书所涉及的素材文件(程序代码)已经上传到为本书提供的博客中,供读者下载。
5. 本书作者
本书主要由温正编著。此外,付文利、王广、张岩、林晓阳、任艳芳、唐家鹏、孙国强、高飞等也参与了本书部分内容的编写工作。
虽然作者在本书的编写过程中力求叙述准确、完善,但由于水平有限,书中欠妥之处在所难免,希望读者和同仁能够及时指出,共同促进本书质量的提高。
后再次希望本书能为读者的学习和工作提供帮助!
编者
2017年6月
MATLAB语言丰富且功能卓越的图形可视化功能,使得数学计算结果可以方便地、多样地实现可视化。这是其他编程语言所不能及的,而且得到的图形可方便地插入Word和LaTeX等其他排版系统。MATLAB图形可视化操作分析了常见二维、三维图形绘制,以及MATLAB动画设计,方便用户进行可视化设计。学习目标: 熟练掌握MATLAB编程表示方法; 熟练运用MATLAB产生可视化图形; 熟练掌握MATLAB进行动画设计等。3.1图形绘制基于由浅入深的原则,本节将从简单的平面上的点的表示入手,逐步深入,由离散数据的表示到连续数据的表示,使得读者易于掌握其中规律。3.1.1离散数据图形绘制
一个二元实数标量对(x0,y0)可以用平面上的点来表示,一个二元实数标量数组[(x1,y1)(x2,y2)…(xn,yn)]可以用平面上的一组点来表示,对于离散函数Y=f(X),当X为一维标量数组X=[x1,x2,…,xn]时,根据函数关系可以求出Y相应地为一维标量Y=[y1,y2,…,yn]。当把这两个向量数组在直角坐标系中用点序列来表示时,就实现了离散函数的可视化。当然,这些图形上的离散序列所反映的只是X所限定的有限点上或有限区间内的函数关系。应当注意的是,MATLAB是无法实现对无限区间上的数据的可视化的。【例31】离散数据的图形绘制。
clc,clear
x = 1:10;
y = [0.03700.03400.02700.04000.0350 0.02700.02600.02600.02700.0250];
plot(x,y,’ro–‘)
运行该程序文件,得到图形如图31所示。
图31离散数据图形绘制
3.1.2函数图形绘制在MATLAB中,是无法画出真正的连续函数的,因此在实现连续函数的可视化时,首先也必须将连续函数用在一组离散自变量上计算函数结果,然后将自变量数组和结果数组在图形中表示出来。当然,这些离散的点还是不能表现函数的连续性的。为了更形象地表现函数的规律及其连续变化,通常采用以下两种方法: (1) 对离散区间进行更细的划分,逐步趋近函数的连续变化特性,直到达到视觉上的连续效果。(2) 把每两个离散点用直线连接,以每两个离散点之间的直线来近似表示两点间的函数特性。
【例32】函数图形绘制。
clc,clear
x = 1:0.01:10;
y=tan(x);
plot(x,y,’r’)
运行该程序文件,得到图形如图32所示。
【例33】对x,y界定的区域填充,并对各属性设置对应的属性值。编程如下:
clc,clear,close all
t=linspace(0,2*pi,10);
x=sin(2*t);
y=cos(2*t);
area(x,y,’facecolor’,’r’)
图32函数图形绘制
运行程序,输出结果如图33所示。
图33区域填充
3.1.3图形绘制的基本步骤通过上述实例,可以总结出利用MATLAB绘制图形的一般步骤。大致分为如下7个步骤: (1) 数据准备。主要工作是产生自变量采样向量,计算相应的函数值向量。(2) 选定图形窗口及子图位置。默认情况下,MATLAB系统绘制的图形为figure.1、figure.2、…依次类推。(3) 调用绘图函数绘制图形,如plot()函数。(4) 设置坐标轴的范围、刻度及坐标网格。(5) 利用对象属性值设置或者利用图形窗口工具栏设置线型、标记类型及其大小等。(6) 添加图形注释,如图名、坐标名称、图例、文字说明等。(7) 图形的导出与打印。3.2二维图形绘制绘制二维图形常用的指令为plot()。根据不同的坐标参数,它可以在二维平面上绘制出不同的曲线。MATLAB R2016a主窗口中的“绘图”功能区能够利用工作空间的数据方便地画出各种类型的图形,不需要相应的绘图程序代码。3.2.1plot指令将数对排序的一种方法是使用plot指令。该命令可以带有不同数目的参数。简单的形式就是将数据传递给plot,但是线条的类型和颜色可以通过使用字符串来指定,这里用str表示。线条的默认类型是实线型。
评论
还没有评论。