- 1、本文档共57页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九讲matlab
MATLAB的微分与微分方程数值分析 第九讲 主要内容 数值积分 数值微分 一阶常微分方程(ODE)的数值解法 高阶ODE和OED组的的数值解法 傅里叶变换与泰勒级数展开 MATLAB的微积分与微分方程 简介 微分与积分是数学分析中的重要概念,虽然很多微积分问题可以用解析的方式得到精确答案 但有更多的微积分问题没有解析解存在,必须借助数值方法求解 MATLAB在数值积分与微分数值解法存在很大的优点 MATLAB的微积分与微分方程 数值积分 对于积分运算有梯形法trapz(x,y)和二次函数法quad()两种运算函数 梯形法trapz(x,y)是MATLAB提供的最简单的积分函数,式中的x、y分别代表数目相同的矩阵或数组,y是x的函数 注意:trapz(x,y)只针对离散型的数据做积分 MATLAB的微积分与微分方程 数值积分—梯形法 举例:求函数 在区间[0,pi]上的积分值 对于此积分很容易得到精确值为2 x=0:pi/100:pi; y=sin(x); k=trapz(x,y) 利用trapz只能获得近似值 MATLAB的微积分与微分方程 数值积分—梯形法 举例:求函数 在区间[0,2pi]上的积分值 对于复杂的积分运算,推到其精确值就非常困难,如果利用MTALAB函数求解就非常方便了 x=linspace(0,2*pi,60); y=sin(x).^2./(x+eps); k=trapz(x,y) MATLAB的微积分与微分方程 数值积分—梯形法 举例:求函数 在区间[10,18]上的积分值 对于上述积分式做代数推导不可能获得精确值,必须利用数值方法求解 x=linspace(10,18,100); y=cos(x)./sqrt(1+x.^4); k=trapz(x,y) 上述结果可见,MATLAB把复杂的积分运算变得非常简单快捷,非常有利于工程技术方面的应用 MATLAB的微积分与微分方程 数值积分—二次函数法 MATLAB提供的积分函数还有Simpson递归法(quad)和Lobatto积分法(quadl),与梯形法相比,精度更高 quad()的语法为quad(function,a,b),期中function是被积分的函数名,如sin、cos、log等等,a、b是积分上下限 quadl()具有相同的积分格式 与trapz()相比,quad和quad只需设定积分上下限和被积函数即可 MATLAB的微积分与微分方程 数值积分—二次函数法 举例:利用函数kq=quad(sqrt,a,b)和求定积分,a=0,b=0.5 a=0;b=0.5; kq=quad(sqrt,a,b) kq=quadl(sqrt,a,b) MATLAB的微积分与微分方程 数值积分—二次函数法 举例:humps函数在区间[-1 2]的曲线可以用fplot(humps,[-1 2])绘制 area=quadl(humps,-1,2) area=quad(humps,-1,2) x=-1:0.07:2; y=humps(x); area=trapz(x,y) 比较各自的精度 MATLAB的微积分与微分方程 数值积分 MATLAB提供了多项式积分函数polyint(t) p=[1 0 -2 -5]; iny=polyint(p) 可使用积分函数polyint(v,k)来求积分,k为积分常数 int(f)—运算f对预设独立变量的积分 int(f,t)—运算f对独立变量t的积分 int(f,a,b)—运算f对预设独立变量的积分,积分区间为[a b] int(f,t,a,b)—运算f对独立变量t的积分,积分区间为[a b] int(f,m,n)—运算f对预设变量的积分,积分区间为[m n],m和n为符号 MATLAB的微积分与微分方程 数值微分 函数f(x)在x=a点处的微分表示为df(x)/dx,几何意义为函数f(x)在x=a点处的切线斜率,数值差分就是用数值来求微分的方法 微分(differential coefficient)计算通过二相邻点x+h和x间函数的差分取极限求得 MATLAB的微积分与微分方程 数值微分 若将连续的空间以多个离散点x0、x1……xk……等取代,则极限表示为 上式为差分式(difference equation) 因为以xk为参考点,xk+1在它之后,因而为前向差分,当然还有后向差分、中央差分等 MATLAB的微积分与微分方程 数值微分 后向差分 中央差分 MATLAB的微积分与微分方程 数值微分 高阶微分可以通过低阶微分来计算,可以以此类推 MATLAB
文档评论(0)