第十六讲在高等数学中的应用ppt课件

上传人:我*** 文档编号:148652681 上传时间:2020-10-21 格式:PPT 页数:35 大小:135KB
返回 下载 相关 举报
第十六讲在高等数学中的应用ppt课件_第1页
第1页 / 共35页
第十六讲在高等数学中的应用ppt课件_第2页
第2页 / 共35页
第十六讲在高等数学中的应用ppt课件_第3页
第3页 / 共35页
第十六讲在高等数学中的应用ppt课件_第4页
第4页 / 共35页
第十六讲在高等数学中的应用ppt课件_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《第十六讲在高等数学中的应用ppt课件》由会员分享,可在线阅读,更多相关《第十六讲在高等数学中的应用ppt课件(35页珍藏版)》请在金锄头文库上搜索。

1、第十六讲 在高等数学中的应用,数值解还是解析解?,在“语言篇”介绍了MATLAB数学软件基本语法的基础上,本篇讨论如何用它来解决大学所学过的数学问题。本篇的第14节依次讨论微积分中的极限与导数、解析几何、数列和级数以及数值积分问题。主要通过一些例题说明如何灵活使用MATLAB的各种函数来解题。 对于学生而言,各门后续课程和未来的工程实践中遇到最大量的将是数值计算问题。计算机首先是计算的工具。计算机的计算过程和方法都是从计算器升级而来的,学生可以理解和接受其每一步,甚至自己都可以编出相应的程序,这是数值计算的一个长处。,其次,用推理方法只能解决很少一部分有解析解的数学命题。比如许多函数是无法求不

2、定积分的,而它们的数值积分却都可以求得。因此优先让学生掌握数值方法等于给他们教会了具有更普遍适用的科学计算方法。对于他们今后的工程生涯将有更广泛的用处。 当一个例题可以同时用数值方法和符号推理方法解决时,我们采取的原则是优先讲数值方法。因为通常这两种方法在编程上很相似,但又有一些关键性的差别,初学者很容易混淆。对于这类读者,还是先掌握数值方法为好。,5.1 函数、极限和导数,一单变量函数值的计算和绘图 【例5-1-1】 单变量函数的计算和绘图,设 要求以0.01 s为间隔,求出y的151个点,并求出其导数的值和曲线。 解:,dt=0.01; t=0:dt:1.5; % 设定自变量数组t w=

3、4*sqrt(3); % 固定频率 y=sqrt(3)/2*exp(-4*t).*sin(w*t + pi/3); % 注意用数组运算式 subplot(2,1,1),plot(t,y), grid % 绘制曲线并加上坐标网格 title(绘图示例),xlabel(时间 t),ylabel(y(t) % 加标注 % 求导数并绘制导数曲线,注意数组求导数后其长度减少一 Dy=diff(y)/dt; subplot(2,1,2) plot(t(1:length(t)-1),Dy) grid ylabel(Dy(t) % 加标注 set(gcf,color,w),参变方程的计算和绘图,【例5-1-3

4、】 摆线的绘制 当圆轮在平面上滚动时,轮上任一点所画出的轨迹称为摆线。如果这一点不在圆周上而在圆内,则生成内摆线; 如果该点在圆外,即离圆心距离大于半径,则生成外摆线。,摆线绘制的程序,建模:, MATLAB程序exn512: t=0:0.1:15;% 设定参数数组 x=t+sin(t); y=cos(t);% 计算x,y plot(x,y) axis(equal)% 绘图 grid,动画 t=0:0.001:15; % 设定参数数组 x=t+sin(t); y=cos(t); % 计算x,y comet(x,y),摆线绘制程序的结果,设r=1,令R=r, R=0.7及R=1.5时得到的摆线、

5、内摆线和外摆线都绘于图5-1-3中。为了显示摆线的正确形状,x,y坐标保持等比例是很重要的,因此程序中要加axis(equal)语句。,三 曲线族的绘制,【例5-1-4】 三次曲线的方程为, 试探讨参数a和c对其图形的影响.图5-1-3 c和a取不同值时y=ax3+cx的曲线族 解:方法 因为函数比较简单,可以直接写入绘图语句中,用循环语句来改变参数.注意坐标的设定方法,以得到适于观察的图形。给出的程序不是唯一的,例如也可用fplot函数等,画曲线族的程序,x=-2:0.1:2;% 给定x数组, subplot(1,2,1)% 分两个画面绘图 for c=-3:3 plot(x,x.3+c*x

6、), hold on, % a=1,取不同的c end, grid on axis(equal), axis(-2 2 -3 3), % x,y坐标等比例 subplot(1,2,2), for a=-3:3 plot(x,a*x.3+x), % c=1,取不同的a hold on, end , grid on axis(equal), axis(-2 2 -3 3),例5-1-4程序运行的结果,5.3节 数列和级数,一数列的表示方法,数列就是自变量为整数时的函数。MATLAB中的元素群运算特别适合于简明地表达数列,可省去其他语言中的循环语句。下面就是一些例子: n=1:6; 1./n = 1

7、.0000 0.5000 0.3333 0.2500 0.2000 0.1667 (-1).n./n = -1.0000 0.5000 -0.3333 0.2500 -0.2000 0.1667 1./n./(n+1) = 0.5000 0.1667 0.0833 0.0500 0.0333 0.0238,数列用for循环的表示方法,计算n!(n的阶乘),它应该写成prod(1:n ) for k=1:6 x(k)=prod(1:k); end x,三. 函数项级数,【例5-3-2】 利用幂级数计算指数函数 解:原理:指数可以展开为幂级数 % 输入原始数据,初始化y x=input(x= );

8、 n=input(n= ); y=1; % 将通项循环相加n次,得y for i=1:n y=y+xi/prod(1:i); end y 分别代入x=1,2,4,-4四个数,取n=10,结果如下表,用级数计算指数的结果,例 用付利叶级数合成方波,解:建模 设方波的周期为2,半周期为.幅度为正负0.7854,如右图所示.它应该可以用傅立叶级数合成.用上题的程序分析,应有:,现取不同的阶次,编写程序,画出其合成波形,在图上进行比较.,MATLAB程序exn547,设计如下: t = linspace(-pi,pi,201); %设定时间数组 y = sin(t); plot(t,y),pause

9、y = sin(t) + sin(3*t)/3; plot(t,y), pause % 叠加三次谐波 % 用1,3,5,7,9次谐波叠加 y=sin(t)+sin(3*t)/3+sin(5*t)/5+sin(7*t)/7+sin(9*t)/9; plot(t,y),k=input(k=) %K级谐波 t = linspace(-pi,pi,201); % 设定时间数组 y=0 for n=1:2:k y=y+sin(n*t)/n; end plot(t,y),5.4节 数值积分和微分方程数值解,求任意非线性方程f(x)=0的解,【例】 求下列方程的近似数值解。,解: 可先大致看一下曲线的形状。

10、它有三个过零点。分别在-10,-3,3附近。 x=-12:0.01:5; y =x.3+10*x.2-2*sin(x)-50; plot(x,y) y1=zeros(1,length(x); hold on plot(x,y1,k) grid,实际上可直接用fzero求f(x)的根,方法是把f(x)定义为一个子程序函数ex517f.m,其内容为 function y=ex517f(x) y =x.3+10*x.2-2*sin(x)-50; 然后执行x=fzero(ex517f,x0), 即可得出靠x0较近的数值解x。,二数值定积分求面积,【例5-3-1】 用数值积分法求由 x=0与x=10围成

11、的图形面积,并讨论步长和积分方法对精度的影响。 解: 原理 用矩形法和梯形法分别求数值积分并作比较,步长的变化用循环语句实现。MATLAB中的定积分有专门的函数QUAD,QUADL等实现。为了弄清原理,我们先用直接编程的方法来计算,然后再介绍定积分函数及其调用方法。设x向量的长度取为n,即将积分区间分为n-1段, 各段长度为 。算出各点的,则矩形法数值积分公式为:,矩形和梯形定积分公式,梯形法的公式为: 比较两个公式,它们之间的差别只是 。 在MATLAB中,把向量中各元素叠加的命令是sum。把向量中各元素按梯形法叠加的命令是trapz。梯形法的几何意义是把被积分的函数的各计算点以直线相联,形

12、成许多窄长梯形条,然后叠加,我们把两种算法都编入同一个程序进行比较。,求面积的数值积分程序exn531,for dx=2,1,0.5,0.1 % 设不同步长 x=0:.1:10; y=-x.*x+115; % 取较密的函数样本 plot(x,y) hold on % 画出被积曲线并保持 x1=0:dx:10; y1=-x1.*x1+115; % 求取样点上的y1 % 用矩形(欧拉)法求积分,注意末尾去掉一个点 n=length(x1);s=sum(y1(1:n-1)*dx; q=trapz(y1)*dx; % 用梯形法求积分 stairs(x1,y1), % 画出欧拉法的积分区域 plot(x

13、1,y1) % 画出梯形法的积分区域 dx,s,q,pause(1), hold off end,程序exn531运行结果,程序运行的结果如下: 步长dx 矩形法解s 梯形法解q 2 910810 1 865815 .5841.25816.25 .1821.65816.65 用解析法求出的精确解为2450/3=816.6666.。 dx=2时矩形法和梯形法的积分面积见图5-25.。在曲线的切线斜率为负的情况下,矩形法的积分结果一定偏大,梯形法是由各采样点联线包围的面积,在曲线曲率为负(上凸)时,其积分结果一定偏小,因此精确解在这两者之间。由这结果也能看出,在步长相同时,梯形法的精度比矩形法高。

14、,矩形法数字积分的演示程序rsums,MATLAB中有一个矩形法数字积分的演示程序rsums,可以作一个对比。键入 rsums(115-x.2,0,10) 就得到右图。图中表示了被积函数的曲线和被步长分割的小区间,并按各区间中点的函数值构成了各个窄矩形面积。用鼠标拖动图下方的滑尺可以改变步长的值,图的上方显示的是这些矩形面积叠加的结果。,MATLAB内的数值定积分函数,在实际工作中,用MATLAB中的定积分求面积的函数quad和quadl可以得到比自编程序更高的精度,因为quad函数用的是辛普生法,即把被积函数用二次曲线逼近的算法,而quadl函数采用了更高阶的逼近方法。它们的调用格式如下:

15、Q = QUADL(FUN,A,B,TOL) 其中,FUN是表示被积函数的字符串, A是积分下限,B是积分上限。TOL是规定计算的容差,其默认值为1e-6 例如,键入 S = quad(-x.*x+115,0,10) 得到S = 8.166666666666666e+002,六微分方程的数值积分,MATLAB中用来进行常微分方程数值积分的函数有好多种,例如ode23,ode45,等,ode是常微分方程(ordinary differential equation)的缩写。它们都用来解形如 的一阶微分方程组在给定初始值y0时的解。对入门者而言,会一种最简单的ode23就行。它的最简单的调用格式为

16、: T,Y = ODE23(ODEFUN,TSPAN,Y0) 其中,输入变元TSPAN= t0,tf 是自变量的初值和终值数组,Y0是输出变量向量的初值,ODEFUN则是描述导数的函数f(y,t)。很大一类微分方程都可以用这种一阶微分方程组(或向量形式的微分方程)描述,关键就是会列写导数函数f(y,t),下面举例说明。,微分方程数值积分【例5-3-7】,用数值积分法求解微分方程 设初始时间t0=0;终止时间tf=3; 初始条件y(0)=1,y(0)=0. 解:先将方程化为两个一阶微分方程的方程组,其左端为两维变量的一阶导数。,微分方程化为标准形式,写成矩阵形式为 其中 为取代变量y的变量向量, 为x的 导数,在程序中用xdot表示。x的初始条件为 这就是待积分的微分方程组的标准形式。 用MATLAB语句表述为: xdot=0, 1;-t, 0*x + 0; 1*(1-t2/pi2);,【例5-3-7】数值解的程序,将微分方程的右端写成一个exn

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号