
本书首先介绍MATLAB语言程序设计的基本内容,在此基础上系统介绍各个应用数学领域的问题求解,如基于MATLAB的微积分问题、线性代数问题的计算机求解、积分变换和复变函数问题、非线性方程与最优化问题、常微分方程与偏微分方程问题、数据插值与函数逼近问题、概率论与数理统计问题的解析解和数值解法等;还介绍了较新的非传统方法,如模糊逻辑与模糊推理、神经网络、遗传算法、小波分析、粗糙集及分数阶微积分学等领域。
本书可作为一般读者学习和掌握MATLAB语言的教科书,高等学校理工科各类专业的本科生和研究生学习计算机数学语言的教材或参考书,可供科技工作者、教师学习和应用MATLAB语言解决实际数学问题时参考,还可作为读者查询某数学问题求解方法的手册。
第四版
科学运算问题是科学与工程中的重要问题。在当前一般高校理工科课程设置中,高等数学、线性代数、概率论与数理统计等为必修课程,有些专业还有复变函数、积分变换、最优化、数值分析等选修课程。有了这些数学基础,很多专业课程相应的数学模型就可以建立起来了,而这些数学问题的求解就成了不容回避的问题了。
在总结多年实际教学经验的基础上,作者曾在首届MathWorks亚洲研究与教育峰会(2014年11月,东京)上提出了数学问题的“三步求解方法”,其第一步就是用简单的语言理解要求解数学问题的物理意义,第二步是如何用计算机能接受的方式将数学问题输入给计算机,第三步就是调用恰当的函数将数学问题的解得出来。有了这样的思路,则普通研究者可以直接利用计算机工具在短时间内解决已经学习过甚至根本没有学习过的数学分支的应用问题。
本书书名中的“高等应用数学”不等于“高等数学”,而是预期尽可能广地覆盖理工科数学分支,其对数学分支的涵盖范围是非常广泛的。书中涉及了大量的数学公式,作者没有期望读者能读懂这些公式,大概理解它们的物理意义就足够了,侧重点还是应该放在学习基于MATLAB的实际求解方法。尽管较好理解数学公式可能对学习数学问题的求解方法有所帮助,但这不是必要的。
虽然数学问题的求解在以后的课程学习与科学研究中是不可避免的,那些自认为数学基础比较薄弱的读者也不必担心,因为本书介绍的方法是尽可能地避开烦琐的、深奥的数学,将数学问题及其求解过程用MATLAB能够接受的形式全盘推给计算机去求解,充分发挥计算机的潜能去替你完成任务,最终收获问题的解。尽管这样的方式有时得不到一些数学家的接受与认可,但这对应用科学家与工程技术人员足矣。
比如说,本书介绍了代数方程的求解方法。在实际应用中数学家或其他科研工作者可能面
.
对下面的代数方程束手无策.x+3y3 +2z2 = 1/2 x2 +3y + z3 =2 . x3 +2z+2y2 = 2/4
而你却完全可以利用本书介绍的方法将该方程推给计算机去求解,在几秒钟之内得出原方程全部27组根,将根代入原方程,误差可能达到10.34 级别。另外,对用户而言,如果使用工具,求解这样的方程与求解鸡兔同笼方程一样简单。
再如,如果已知矩阵A,数学家无法求出复合矩阵函数ψ(A)=eA cos At 或Ak 时,你可以轻而易举地借助计算机得出所需的矩阵函数与乘方的解析解。
可以想象一下,当数学家只能利用其巧妙的构思去判定19931993 的个位数是几的时候,你却能易如反掌地将其全部6576位数字都列出来;当数学家在苦思冥想给定的矩阵方程AX+XD. XBXT +C=0到底有多少个根的时候,你却有能力利用本书的方法将其实数根与复数根一次性地全部求解出来;当数学家津津乐道地描述“(a,b)区间内至少存在一个ξ”
· II·高等应用数学问题的MATLAB求解(第四版)
的时候,你却能将满足条件的ξ的所有可能值都精确地实实在在地找出来;当数学家在纠结到底用哪种技巧去求出某个函数的不定积分的时候,你却能借助计算机在几秒钟之内用普通得不能再普通的方法求出该不定积分的解析解;当数学家因为想使用神经网络而苦苦阅读学习相关知识的时候,你却能通过几分钟基础概念的学习之后熟练地利用神经网络解决实际问题,你是不是应该建立起对求解实际应用数学问题能力的自信心呢?是不是会有龟兔赛跑中兔子的优越感呢?这样的例子不胜枚举,所以不要惧怕数学,因为如果系统地学习掌握了本书中介绍的方法和思路,你求解实际应用数学问题的能力将远远超过不会或不擅用计算机工具的一流数学家。
本书继承了以前版本的写作风格,不是按手册的方式,即MATLAB能求解什么就介绍什么,而是按介绍数学理论与系统知识的需求,组织教学材料、求解方法与求解工具,使得读者有能力直接求解相关的数学问题。如果MATLAB能求解某类问题,作者会直接建议使用现有函数去求解,如果没有现成函数时,作者会编写出通用的函数,可以同样直接地求解这类问题。本书比较典型的独到的求解方法包括矩阵的任意非线性函数求解、矩阵任意乘方的求解、任意多解非线性矩阵方程的求解、有约束非线性规划问题的全局求解方法、分数阶微积分的高精度数值计算等,通过实际例子的介绍,同时演示了将求解思路变成代码的过程与技巧。
从数学问题解析运算的角度看,由于基于Maple符号运算引擎的MATLABR2008a版本已经淡出了历史舞台,本书早期版本中很多内容已经不能正常使用,新版本提供的功能也有待系统地利用与介绍,所以需要一个新的版本。本书引入的新内容包括三维隐函数等图形绘制新方法、场论的解析运算、无穷级数的收敛性判定、曲线曲面积分解析运算的通用求解函数、数值积分曲线曲面的绘制、Diophantine方程求解、矩阵任意乘方的计算、数值积分变换方法与应用、Laurent级数展开、非线性矩阵方程的数值解法、非线性规划问题的全局搜索函数、常微分延迟微分方程的框图解法、alpha稳定分布与Lévy飞行、离群值检测、全新的分数阶微积分高精度计算方法、基于框图的复杂分数阶系统建模与求解通用方法等。本书在不显著增加本书页码的前提下最大限度地压缩了排版的空间浪费,融入了新的内容,并对使用的语句做出了更详尽的注释,使得读者能更好地理解涉及的代码,更有效地学习本书的内容。
本书的前几版在本科生、研究生实际教学中已经使用十余年,配备了较全面的交互性计算机辅助教学材料,本书相应的课程“现代科学运算——MATLAB语言与应用”目前为辽宁省精品资源共享课程,读者可以观看该课程的全程授课视频,享用全套教学资源,也建议有相关想法的教师在本校开设相应的课程,使得更多的理工科学生受益。英文版教材Scienti.cComputingwithMATLAB(第二版)2016年由美国CRC出版社出版,可以作为双语课程或全英文课程的材料,与此同时,本书全英文课程视频制作也在计划之中,预计将在本书正式出版时完成。感谢向日葵教育科技公司李婷女士在视频制作过程中提供的帮助。
书稿完成之际要感谢的人很多,感谢教学团队成员的共同努力、学生们在课程建设中所做的扎实的工作、诸多热心读者的建议、出版界朋友的辛勤工作,特别地感谢挚爱的家人一如既往的支持与鼓励。
薛定宇 2017年6月
目 录
第1 章计算机数学语言概述1
11数学问题计算机求解概述1
111为什么要学习计算机数学语言1
112数学问题的解析解与数值解4
113数学运算问题软件包发展概述4
114常规计算机语言的局限性5
12计算机数学语言简介7
121计算机数学语言的出现7
122有代表性的计算机数学语言7
13关于本书及相关内容8
131本书框架设计及内容安排8
132MATLAB语言学习方法与资源9
133本课程与其他相关课程的关系10
134数学问题三步求解方法概述10
14习题11参考文献12
第2章MATLAB语言程序设计基础13
21MATLAB程序设计语言基础14
211MATLAB语言的变量与常量14
212数据结构14
213MATLAB的基本语句结构16
214冒号表达式与子矩阵提取17
22基本数学运算18
221矩阵的代数运算18
222矩阵的逻辑运算19
223矩阵的比较运算20
224解析结果的化简与变换20
225基本离散数学运算21
23MATLAB语言的流程结构23
231循环结构23
232条件转移结构24
·VIII·高等应用数学问题的MATLAB求解(第四版)
233开关结构24
234试探结构25
24函数编写与调试25
241MATLAB语言函数的基本结构26
242可变输入输出个数的处理28
243匿名函数与inline函数29
244伪代码与代码保密处理29
25二维图形绘制30
251二维图形绘制基本语句30
252多纵轴曲线的绘制32
253其他二维图形绘制语句32
254隐函数绘制及应用34
255图形修饰34
256数据文件的读取与存储36
26三维图形表示37
261三维曲线绘制37
262三维曲面绘制38
263三维图形视角设置41
264参数方程的表面图42
265球面与柱面绘制43
266等高线绘制44
267三维隐函数图绘制45
268三维曲面的旋转46
27四维图形绘制47
28习题48参考文献52
第3章微积分问题的计算机求解53
31极限问题的解析解53
311单变量函数的极限53
312区间函数的极限运算55
313多元函数的极限57
32函数导数的解析解58
321函数的导数和高阶导数58
322多元函数的偏导数59
323多元函数的Jacobi矩阵与Hessian矩阵60
324参数方程的导数62
325隐函数的偏导数62
326场的梯度、散度与旋度63
33积分问题的解析解64
331不定积分的推导64
332定积分与无穷积分计算65
333多重积分问题的MATLAB求解66
34函数的级数展开与级数求和问题求解67
341Fourier级数展开67
342Taylor幂级数展开69
343级数求和的计算72
344序列求积问题73
345无穷级数的收敛性判定74
35曲线积分与曲面积分的计算76
351曲线积分及MATLAB求解76
352曲面积分与MATLAB语言求解78
36数值微分问题80
361数值微分算法81
362中心差分方法及其MATLAB实现81
363二元函数的梯度计算82
37数值积分问题83
371由给定数据进行梯形求积84
372单变量数值积分问题求解85
373广义数值积分问题求解88
374积分函数的数值求解89
375双重积分问题的数值解89
376三重定积分的数值求解92
377多重积分数值求解93
38习题94参考文献98
第4章线性代数问题的计算机求解99
41特殊矩阵的输入99
411 数值矩阵的输入 100
412 稀疏矩阵的输入 103
413 符号矩阵的输入 104
42 矩阵基本分析 105
421 矩阵基本概念与性质 105
·X·高等应用数学问题的MATLAB求解(第四版)
422 逆矩阵与广义逆矩阵 111
423 矩阵的特征值问题 114
43 矩阵的基本变换与分解 116
431 矩阵的相似变换与正交矩阵 116
432矩阵的三角分解和Cholesky分解117
433矩阵的相伴变换、对角变换和Jordan变换121
434 矩阵的奇异值分解 125
44 矩阵方程的计算机求解 126
441 线性方程组的计算机求解 126
442 Lyapunov 方程的计算机求解 129
443 Sylvester 方程的计算机求解 131
444 Diophantine 方程的求解 133
445Riccati方程的计算机求解134
45 非线性运算与矩阵函数求值 135
451 面向矩阵元素的非线性运算 135
452 矩阵函数求值 136
453 一般矩阵函数的运算 138
454 矩阵的乘方运算 141
46 习题 142 参考文献 147
第5章积分变换与复变函数问题的求解149
51Laplace变换及其反变换149
511Laplace变换及反变换的定义与性质149
512Laplace变换的计算机求解150
513Laplace变换问题的数值求解152
52 Fourier 变换及其反变换 155
521 Fourier 变换及反变换定义与性质 155
522 Fourier 变换的计算机求解 156
523 Fourier 正弦和余弦变换 157
524离散Fourier正弦、余弦变换158
525快速Fourier变换158
53 其他积分变换问题及求解 159
531Mellin变换159
532 Hankel 变换及求解 161
54 z 变换及其反变换 162
541 z 变换及反变换定义与性质 162 542 z 变换的计算机求解 163
543 双边z 变换 164
544 有理函数z 反变换的数值求解 164
55 复变函数问题的计算机求解 165
551 复数矩阵及其变换 165
552 复变函数的映射 165
553Riemann面绘制166
56 复变函数问题的求解 167
561 留数的概念与计算 167
562 有理函数的部分分式展开 169
563基于部分分式展开的Laplace反变换173
564 Laurent 级数展开 173
565 封闭曲线积分问题计算 176
57 差分方程的求解 178
571 一般差分方程的解析求解方法 178
572 线性时变差分方程的数值解法 179
573 线性时不变差分方程的解法 180
574 一般非线性差分方程的数值求解方法 182
58 习题 182 参考文献 186
第6章代数方程与最优化问题的计算机求解187
61 代数方程的求解 187
611 代数方程的图解法 187
612 多项式型方程的准解析解法 188
613 一般非线性方程数值解 191
614 求解多解方程的全部解 193
615 更高精度的求根方法 196
616 欠定方程的求解 198
62 无约束最优化问题求解 199
621 解析解法和图解法 199
622基于MATLAB的数值解法200
623 全局最优解与全局最优解法 202
624 利用梯度求解最优化问题 204
625 带有变量边界约束的最优化问题求解 205
63 有约束最优化问题的计算机求解 205
631 约束条件与可行解区域 206
·XII·高等应用数学问题的MATLAB求解(第四版)
632 线性规划问题的计算机求解 207
633 二次型规划的求解 211
634 一般非线性规划问题的求解 211
635 一般非线性规划问题的全局最优解尝试 215
64 混合整数规划问题的计算机求解 215
641 整数规划问题的穷举方法 216
642 整数线性规划问题的求解 217
643 一般非线性整数规划问题与求解 218
6440–1规划问题求解221
645 指派问题的求解 222
65 线性矩阵不等式问题求解 223
651 线性矩阵不等式的一般描述 223
652 Lyapunov 不等式 224
653 线性矩阵不等式问题分类 225
654线性矩阵不等式问题的MATLAB求解226
655基于YALMIP工具箱的最优化求解方法228
66 多目标优化问题求解 229
661 多目标优化模型 229
662 无约束多目标函数的最小二乘求解 230
663 多目标问题转换为单目标问题求解 230
664多目标优化问题的Pareto解集233
665 极小极大问题求解 234
666 目标规划问题求解 235
67 动态规划及其在路径规划中的应用 236
671 图的矩阵表示方法 236
672 有向图的路径寻优 236
673 无向图的路径最优搜索 239
674 绝对坐标节点的最优路径规划算法与应用 240
68 习题 240 参考文献 245
第7 章微分方程问题的计算机求解
71 常系数线性微分方程的解析解方法 247
711 线性常系数微分方程解析解的数学描述 247
712 微分方程的解析解方法 248
713 线性状态空间方程的解析解 251
714 特殊非线性微分方程的解析解 252 72 微分方程问题的数值解法 252
721 微分方程问题算法概述 253
722四阶定步长Runge–Kutta算法及MATLAB实现254
723 一阶微分方程组的数值解 255
724 微分方程数值解的验证 258
73 微分方程转换 259
731 单个高阶常微分方程处理方法 259
732 高阶常微分方程组的变换方法 260
733 矩阵微分方程的变换与求解方法 263
74 特殊微分方程的数值解 265
741 刚性微分方程的求解 266
742 隐式微分方程求解 268
743 微分代数方程的求解 271
744 切换微分方程的求解 272
745 随机线性微分方程的求解 273
75 延迟微分方程求解 276
751 典型延迟微分方程的数值求解 276
752 变时间延迟微分方程的求解 277
753 中立型延迟微分方程的求解 279
76 边值问题的计算机求解 280
77 偏微分方程求解入门 283
771 偏微分方程组求解 283
772 二阶偏微分方程的数学描述 284
773 偏微分方程的求解界面应用举例 286
78基于Simulink的微分方程框图求解291
781 Simulink 简介 291
782 Simulink 相关模块 292
783微分方程的Simulink建模与求解293
79 习题 300 参考文献 304
第8章数据插值、函数逼近问题的计算机求解305
81 插值与数据拟合 305
811 一维数据的插值问题 305
812 已知样本点的定积分计算 308
813 二维网格数据的插值问题 309
814 二维散点分布数据的插值问题 311
·XIV·高等应用数学问题的MATLAB求解(第四版)
815 高维插值问题 313
816 基于样本数据点的离散最优化问题求解 315
82 样条插值与数值微积分问题求解 315
821样条插值的MATLAB表示316
822 基于样条插值的数值微积分运算 319
83 由已知数据拟合数学模型 321
831 多项式拟合 321
832 函数线性组合的曲线拟合方法 323
833 最小二乘曲线拟合 325
834 多变量函数的最小二乘函数拟合 326
84 已知函数的有理式逼近方法 327
841 给定函数的连分式展开及基于连分式的有理近似 327
842有理式拟合——Padé近似330
843 给定函数的特殊多项式近似 332
85 特殊函数及曲线绘制 333
851 误差函数与补误差函数 334
852Gamma函数335
853Beta函数336
854Bessel函数337
855Legendre函数338
856 超几何函数 338
86Mittag-Leer函数340
87 信号分析与数字信号处理基础 344
871 信号的相关分析 344
872 信号的功率谱分析 345
873 滤波技术与滤波器设计 346
88 习题 350 参考文献 352
第9章概率论与数理统计问题的计算机求解353
91 概率分布与伪随机数生成 353
911 概率密度函数与分布函数概述 353
912 常见分布的概率密度函数与分布函数 353
913 随机数与伪随机数生成 360
92 概率问题的求解 360
921 离散数据的直方图与饼图表示 360
922 连续事件的概率计算 362 923基于MonteCarlo法的数学问题求解363
924 随机游走过程的仿真 364
93 基本统计分析 365
931 随机变量的均值与方差 365
932 随机变量的矩 366
933 多变量随机数的协方差分析 367
934 多变量正态分布的联合概率密度函数及分布函数 368
935 离群值、四分位数与盒子图 369
94 数理统计分析方法及计算机实现 371
941 参数估计与区间估计 371
942 多元线性回归与区间估计 373
943 非线性函数的最小二乘参数估计与区间估计 374
944 极大似然估计 377
95 统计假设检验 377
951 统计假设检验的概念及步骤 377
952 随机分布的假设检验 379
96 方差分析与主成分分析 382
961 方差分析 382
962 主成分分析 385
97 习题 387 参考文献 390
第10章数学问题的非传统解法391
101 集合论、模糊集与模糊推理 391
1011经典可枚举集合论问题及MATLAB求解391
1012 模糊集合与隶属度函数 393
1013模糊推理系统及其MATLAB求解396
102 粗糙集理论与应用 400
1021 粗糙集理论简介 400
1022 粗糙集的基本概念 401
1023 信息决策系统 401
1024粗糙集数据处理问题的MATLAB求解403
1025粗糙集约简的MATLAB程序界面405
103 人工神经网络及其在数据拟合中的应用 405
1031 神经网络基础知识 406
1032 前馈型神经网络 407
1033 径向基网络结构与应用 414
·XVI·高等应用数学问题的MATLAB求解(第四版)
1034 神经网络界面 416
104 进化算法及其在最优化问题中的应用 419
1041遗传算法的基本概念及MATLAB实现419
1042 遗传算法在求解最优化问题中的应用举例 420
1043 遗传算法在有约束最优化问题中的应用 424
1044 粒子群优化算法与求解 426
1045 其他全局优化算法 427
1046 求取精确的全局最优解 428
105 小波变换及其在数据处理中的应用 429
1051 小波变换及基小波波形 429
1052 小波变换技术在信号处理中的应用 432
1053 小波问题的程序界面 435
106 分数阶微积分学问题的数值运算 435
1061 分数阶微积分的定义 436
1062 不同分数阶微积分定义的关系与性质 437
1063 分数阶微积分的计算方法 438
1064 分数阶微分方程的求解方法 444
1065 基于框图的非线性分数阶微分方程近似解法 448
107 习题 453 参考文献 455
MATLAB函数名索引457
术语索引463
本书内容充实,讨论全面,深入浅出,便于理解,包含MATLAB相关内容,以解决实际问题。本书配套教学课件请扫描封底刮刮卡二维码下载。
本书内容充实,讨论全面,深入浅出,便于理解,包含MATLAB相关内容,以解决实际问题。本书配套教学课件请扫描封底刮刮卡二维码下载。