高等应用数学问题MATLAB求解》.pps
第第 1 1 章章计算机数学语言概述计算机数学语言概述薛定宇、陈阳泉著薛定宇、陈阳泉著高等应用数学问题的高等应用数学问题的MATLABMATLAB求解求解,清华大学出版社,清华大学出版社20042004CAICAI课件开发:薛定宇课件开发:薛定宇5/28/20231高等应用数学问题的 MATLAB 求解东北大学信息学院 本章主要内容本章主要内容n n数学问题计算机求解概述n n计算机数学语言概述n n关于本书及相关内容n n本章要点简介n n网络资源简介5/28/20232高等应用数学问题的 MATLAB 求解1.1 1.1 数学问题计算机求解概述数学问题计算机求解概述n n1.1.1为什么要学习计算机数学语言?n n1.1.2 数学问题的解析解与数值解n n1.1.3数学运算问题软件包发展概述5/28/20233高等应用数学问题的 MATLAB 求解1.1.1 为什么要学习为什么要学习计算机数学语言?计算机数学语言?n数学问题求解n n手工推导n n借助计算机n n用数值分析技术,从底层编写起n n应用现成软件进行计算机求解n n解析解与数值解5/28/20234高等应用数学问题的 MATLAB 求解先考虑下面一些例子先考虑下面一些例子【例1-1】高等数学问题:已知函数,如何求导及高阶导数?思路:由分式求导公式,得出 逐次求导则可以得出问题:求导过程很繁杂,容易出错5/28/20235高等应用数学问题的 MATLAB 求解计算机求解结果计算机求解结果不是最简5/28/20236高等应用数学问题的 MATLAB 求解基于计算机的化简结果基于计算机的化简结果n n靠手工推导的方法难以准确得出靠手工推导的方法难以准确得出手工无从推导,计算机能,1秒5/28/20237高等应用数学问题的 MATLAB 求解【例1-2】代数方程求根n n古典方法n n一、二、三、四阶:直接方法一、二、三、四阶:直接方法n n五阶或以上五阶或以上 AbelAbel定理,认为无解定理,认为无解n n现代数值方法n n林士谔林士谔-BairstrowBairstrow 算法,又称为劈因子法算法,又称为劈因子法n n具体实例5/28/20238高等应用数学问题的 MATLAB 求解n n双精度变量的数值方法n n代入方程后的误差n n精确解5/28/20239高等应用数学问题的 MATLAB 求解【例1-3】矩阵行列式求解问题n n代数余子式n n1 1 个个 n n 阶行列式可以表示成阶行列式可以表示成 n n 个个 n-1 n-1 阶行列式的阶行列式的和,和,n n可以将高阶矩阵行列式转换成可以将高阶矩阵行列式转换成1 1阶矩阵行列式阶矩阵行列式n n结论:任意矩阵行列式解析解存在n n问题:忽略了可计算性n nn=20,银河机,3000年5/28/202310高等应用数学问题的 MATLAB 求解n n实例:Hilbert 矩阵,n=20n n传统数值分析结论:矩阵奇异n n 双精度级别下的数值解-1.1004e-1955/28/202311高等应用数学问题的 MATLAB 求解该矩阵行列式的精确结果该矩阵行列式的精确结果n n近似值n n计算时间 0.2 秒5/28/202312高等应用数学问题的 MATLAB 求解【例1-4】非线性常微分方程组n n没有解析解n n传统数值方法n n计算步长选择计算步长选择n n计算时间计算时间n n变步长变步长n n刚性方程专用方法Van der Pol方程5/28/202313高等应用数学问题的 MATLAB 求解传统数学书上没有的微分方程解法传统数学书上没有的微分方程解法n n延迟微分方程例子n n分数阶微分方程n n解决方法:计算机数学语言算法5/28/202314高等应用数学问题的 MATLAB 求解【例1-5】最优化问题n n求解方法:一般线性规划n n若找不到全局最优解,可以试遗传算法n n若要求 为整数 整数规划5/28/202315高等应用数学问题的 MATLAB 求解其他课程的关系其他课程的关系n n其他数学分支n n积分变换、复变函数、偏微分方程、数据插值积分变换、复变函数、偏微分方程、数据插值与拟合、概率论与数理统计、数值分析与拟合、概率论与数理统计、数值分析n n其他相关课程n n电路、电子技术、电力电子技术、电机与拖动、电路、电子技术、电力电子技术、电机与拖动、自动控制原理自动控制原理5/28/202316高等应用数学问题的 MATLAB 求解1.1.2 数学问题的解析解与数值解数学问题的解析解与数值解n n数学家和其他科学技术工作者的区别n n数学家:理论严格证明、存在性数学家:理论严格证明、存在性n n工程技术人员:如何直接得出解工程技术人员:如何直接得出解n n解析解不能使用的场合n n不存在不存在n n数学家解决方法,引入符号数学家解决方法,引入符号erf(erf(a a)n n工程技术人员更感兴趣积分的值工程技术人员更感兴趣积分的值 数值解数值解5/28/202317高等应用数学问题的 MATLAB 求解n n解析解不能使用的场合n n解析解不存在:无理数,无限不循环小数解析解不存在:无理数,无限不循环小数 p pn n数学家:尽量精确地取值,小日本数学家:尽量精确地取值,小日本6060亿位亿位n n工程技术人员:足够精确即可工程技术人员:足够精确即可n n祖冲之祖冲之 3.14159263.1415926,阿基米德的,阿基米德的3.14183.1418n n解析解存在但不实用或求解不可能n n高阶矩阵行列式高阶矩阵行列式5/28/202318高等应用数学问题的 MATLAB 求解数值解应用场合数值解应用场合n n在力学领域,常用有限元法求解偏微分方程;在力学领域,常用有限元法求解偏微分方程;n n在航空、航天与自动控制领域,经常用到数值线性在航空、航天与自动控制领域,经常用到数值线性代数与常微分方程的数值解法等解决实际问题;代数与常微分方程的数值解法等解决实际问题;n n工程与非工程系统的计算机仿真中,核心问题的求工程与非工程系统的计算机仿真中,核心问题的求解也需要用到各种差分方程、常微分方程的数值解解也需要用到各种差分方程、常微分方程的数值解法;法;n n在高科技的数字信号处理领域,离散的快速在高科技的数字信号处理领域,离散的快速Fourier Fourier 变换变换 (FFT)(FFT)已经成为其不可或缺的工具。已经成为其不可或缺的工具。n n 5/28/202319高等应用数学问题的 MATLAB 求解1.1.3 数学运算问题软件包发展概述数学运算问题软件包发展概述n n享有国际声望的软件包n n线性代数线性代数LINPACKLINPACKn n矩阵特征值计算矩阵特征值计算 LINPACKLINPACKn nNAG(Oxford:Numerical Algorithm Group)NAG(Oxford:Numerical Algorithm Group)n nPress W H,Flannery B P,Press W H,Flannery B P,TeukolskyTeukolsky S A,and S A,and VitterlingVitterling W T.Numerical recipes,the art of W T.Numerical recipes,the art of scientific computing.Cambridge:Cambridge scientific computing.Cambridge:Cambridge University Press,1986University Press,19865/28/202320高等应用数学问题的 MATLAB 求解软件包作用软件包作用n n从历史发展角度,起了不可替代的作用n n对计算机数学语言的强有力支持n n但不能过多依赖n n使用烦琐n n应该在计算机数学语言的意义下利用之5/28/202321高等应用数学问题的 MATLAB 求解举例:求取矩阵特征值举例:求取矩阵特征值n nEISPACK 软件包解法n n计算机数学语言解法:eig(A)5/28/202322高等应用数学问题的 MATLAB 求解考虑一个实际编程例子考虑一个实际编程例子n n如何编写一个能求出两个矩阵相乘的计算机通用子程序?该程序正确吗?错误,未考虑矩阵是否可乘5/28/202323高等应用数学问题的 MATLAB 求解是否正确?错误,未考虑其一为标量加入标量判定,是否就是通用程序了?错误,考虑其一或二者为复数矩阵可见,用最底层的编程语言需要考虑的内容要多得多,所以调试起来不容易,容易出现漏洞MATLAB 实现:C=A*B5/28/202324高等应用数学问题的 MATLAB 求解1.2 计算机数学语言概述计算机数学语言概述n n1.2.1 计算机数学语言n nMATLAB 1984 v1 The MATLAB 1984 v1 The MathWorksMathWorks Inc Incn nMATrixMATrix LABoratoryLABoratoryn n1980 Cleve 1980 Cleve MolerMoler,New Mexico University,New Mexico Universityn n自动控制学科的应用自动控制学科的应用n nMathematicaMathematican nMapleMaplen nSciLABSciLAB:免费,全部源代码公开免费,全部源代码公开5/28/202325高等应用数学问题的 MATLAB 求解1.2.2 三个代表性计算机数学语言三个代表性计算机数学语言n n“三个代表”:MATLAB,Mathematica,Maplen nMATLAB n n数值运算、程序设计,广泛应用数值运算、程序设计,广泛应用n nMathematica、Maplen n数学机械化,编程侧重于模式匹配数学机械化,编程侧重于模式匹配n nMATLAB+符号运算工具箱+Maplen n可以推导公式,可以调用可以推导公式,可以调用MapleMaple功能功能5/28/202326高等应用数学问题的 MATLAB 求解MATLAB 语言的优势语言的优势n n编程简单,类似于其他语言,如Cn n集成度更高,扩展性更好n n数学问题数值解能力强大n n由Maple内核构成的符号运算工具箱可以继承Maple所有解析解的求解能力n n在数学、工程领域各种“工具箱”n n强大的系统仿真能力,Simulink建模n n在控制界是国际首选的计算机语言5/28/202327高等应用数学问题的 MATLAB 求解1.3 关于本书及相关内容关于本书及相关内容1.3.1 本书框架设计及内容安排n n第第1 1章章(本章本章),综述,综述MATLABMATLAB等计算机数学语等计算机数学语言的发展概况言的发展概况n n第第2 2章章 MATLABMATLAB语言程序设计基础语言程序设计基础n n第第3 3章章 微积分问题的计算机求解微积分问题的计算机求解n n第第4 4章章 线性代数问题的计算机求解线性代数问题的计算机求解n n第第5 5章章 积分变换与复变函数问题的计算机求解积分变换与复变函数问题的计算机求解n n第第6 6章章 代数方程与最优化问题的计算机求解代数方程与最优化问题的计算机求解5/28/202328高等应用数学问题的 MATLAB 求解n n第第7 7章章 微分方程问题的计算机求解微分方程问题的计算机求解n n第第8 8章章 数据插值、函数逼近问题的计算机求解数据插值、函数逼近问题的计算机求解n n第第9 9章章 概率论与数理统计问题的计算机求解概率论与数理统计问题的计算机求解n n第第1010章章 数学问题的非传统解法数学问题的非传统解法n n模糊逻辑与模糊推理模糊逻辑与模糊推理n n神经网络在数据拟合中的应用神经网络在数据拟合中的应用n n遗传算法在最优化求解中的应用遗传算法在最优化求解中的应用n n小波理论在数据处理中的应用小波理论在数据处理中的应用n n粗糙集理论与应用粗糙集理论与应用n n分数阶微积分理论与计算分数阶微积分理论与计算5/28/202329高等应用数学问题的 MATLAB 求解1.3.2 本课程与其他相关课程的关系本课程与其他相关课程的关系n n和数学的关系和数学的关系n n应用数学和纯数学,数学问题机械化应用数学和纯数学,数学问题机械化n n侧重直接获得问题的解,而不是存在性侧重直接获得问题的解,而不是存在性n n和数值分析的关系和数值分析的关系n n不是数值分析的不是数值分析的MATLABMATLAB语言求解,从算法上看,选择语言求解,从算法上看,选择的算法更有效,变步长、自适应的算法实现的算法更有效,变步长、自适应的算法实现n n可以求解析解可以求解析解n n求解的面也更大,更全面求解的面也更大,更全面n n和其他后续课程的关系和其他后续课程的关系n n利用计算机数学语言更好解决后续课程中的数学问题利用计算机数学语言更好解决后续课程中的数学问题和相关计算问题和相关计算问题5/28/202330高等应用数学问题的 MATLAB 求解1.4 本章要点概述本章要点概述n n本章通过一些看起来用先修课程知识难以解本章通过一些看起来用先修课程知识难以解决的数学问题求解来介绍学习计算机数学语决的数学问题求解来介绍学习计算机数学语言的重要性,并对当前国际上最好的计算机言的重要性,并对当前国际上最好的计算机数学语言做出综述,并解释了本课程选择数学语言做出综述,并解释了本课程选择MATLABMATLAB语言的原因。语言的原因。n n本章还回顾了数学软件包和计算机数学语言本章还回顾了数学软件包和计算机数学语言的发展过程,并入门性地介绍了数学问题的的发展过程,并入门性地介绍了数学问题的解析解、数值解的基本概念,并举例说明了解析解、数值解的基本概念,并举例说明了什么时候应该使用解析解,什么时候应该使什么时候应该使用解析解,什么时候应该使用数值解。用数值解。n n本章还介绍了本课程的框架以及本课程与其本章还介绍了本课程的框架以及本课程与其他相关课程之间的关系。他相关课程之间的关系。5/28/202331高等应用数学问题的 MATLAB 求解本课程的互联网资源本课程的互联网资源n nThe MathWorks公司官方网站n n产品与全套工具箱手册下载产品与全套工具箱手册下载http:/http:/n n第三方工具箱下载第三方工具箱下载 http:/http:/n n产品在中国独家代理(北京九州恒润公司)n nhttp:/http:/5/28/202332高等应用数学问题的 MATLAB 求解n nMATLAB大观园(薛定宇维护)n n本书及相关内容资源本书及相关内容资源n nhttp:/www.matlab-http:/www.matlab- n nMATLAB与应用论坛(薛定宇维护)n nhttp:/http:/n n博士家园论坛网站(各类数学问题)n nhttp:/http:/n n一些高校的bbsn n清华大学、哈工大、上海交大、西安交大等清华大学、哈工大、上海交大、西安交大等5/28/202333高等应用数学问题的 MATLAB 求解