《数学实验高等数学计算[1].ppt》由会员分享,可在线阅读,更多相关《数学实验高等数学计算[1].ppt(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、符号表达式及其应用符号表达式及其应用微积分基本运算微积分基本运算Taylor级数展开级数展开常微分方程求解常微分方程求解第第3章章高等数学计算高等数学计算MATLAB的的符号计算符号计算在数学、物理及各类工程应用中在数学、物理及各类工程应用中,除了数值计算外除了数值计算外,还常常需用符号计算还常常需用符号计算.一般的计算机语言平台只能一般的计算机语言平台只能实现数值计算实现数值计算,早期的早期的MATLAB也不能实现符号计也不能实现符号计算。算。1993年年MathWorks公司购买了公司购买了MAPLE的使用的使用权权,并开发出实现符号计算的工具箱并开发出实现符号计算的工具箱Symbolic
2、MathToolbox.符号计算需要使用专门函数,功能包括有微积分、符号计算需要使用专门函数,功能包括有微积分、线性代数、方程求解、积分变换等。在线性代数、方程求解、积分变换等。在MATLAB数数值计算和字符串操作中值计算和字符串操作中,变量通过赋值语句创建变量通过赋值语句创建.但但是符号计算中的变量在使用前,必须要用关键词是符号计算中的变量在使用前,必须要用关键词syms(或其它函数或其它函数)创建。创建。2/16例例1.用符号表达式定义用符号表达式定义 f=e 0.2x sin(0.5x)并绘图并绘图.symsx;f=exp(-0.2*x)*sin(0.5*x);ezplot(f,0,2*
3、pi)3/16syms 符号变量符号变量1 符号变量符号变量2 f=exp(-1/5*x)*sin(1/2*x)ezplot(f)绘表达式绘表达式f=f(x)的图的图绘图区域绘图区域-2*pix2*piezplot(f,a,b)绘图区域绘图区域:axa时的极限时的极限symsum(f,k,m,n)求级数求级数7/16求极限运算求极限运算求一个数学表达式的极限用命令求一个数学表达式的极限用命令limit,使用格式如下,使用格式如下limit(F,x,a)这一命令的功能是求出符号表达式这一命令的功能是求出符号表达式F当当xa.的极限。的极限。(1)limit(F,a)使用与使用与x最接近的英文字母
4、作为自变量;最接近的英文字母作为自变量;(2)limit(F)使用使用a=0作为自变量的极限点。作为自变量的极限点。求表达式的左极限和右极限命令分别为求表达式的左极限和右极限命令分别为LIMIT(F,x,a,right)LIMIT(F,x,a,left)例例18、求极限求极限symsxath;p1=limit(sin(x)/x)p2=limit(x-2)/(x2-4),2)p3=limit(1+2*t/x)(3*x),x,inf)p4=limit(1/x,x,0,right)p5=limit(1/x,x,0,left)%定义符号变量定义符号变量%求第一个极限求第一个极限%求第二个极限求第二个极
5、限%求第三个极限求第三个极限%求第四个极限求第四个极限%求第五个极限求第五个极限p6=limit(sin(x+h)-sin(x)/h,h,0)v=(1+a/x)x,exp(-x);p7=limit(v,x,inf,left)%求第六个极限求第六个极限%定义向量函数定义向量函数%求第七个极限求第七个极限得:得:函数的台劳(函数的台劳(taylor)级数展开)级数展开一元函数一元函数f(x)的台劳(的台劳(taylor)级数展开命令格式为)级数展开命令格式为taylor(f,n,a)其其中中,f为为函函数数表表达达式式,n确确定定级级数数最最高高项项次次数数为为(n 1),a指定函数在某一点展开。
6、指定函数在某一点展开。taylor(f)得到函数得到函数f.的五阶麦克劳林多项式逼近;的五阶麦克劳林多项式逼近;taylor(f,n)得到函数得到函数f.的的(n-1)阶麦克劳林多项式逼近阶麦克劳林多项式逼近taylor(f,a)得到得到f的关于点的关于点a的台劳多项式逼近。的台劳多项式逼近。taylor(f,x)使用自变量使用自变量x做台劳级数展开。做台劳级数展开。例例19、对下列函数做台劳级数展开对下列函数做台劳级数展开(1)e-x在在 x=0处作处作5阶展开,(阶展开,(2)lnx在在x=1处作处作5阶展开;阶展开;(3)sinx在在x=/2处处5阶展开;(阶展开;(4)xt在在 t=0
7、处作处作2阶展开。阶展开。symsxtT1=taylor(exp(-x)returns1-x+1/2*x2-1/6*x3+1/24*x4-1/120*x5T2=taylor(log(x),6,1)x-1-1/2*(x-1)2+1/3*(x-1)3-1/4*(x-1)4+1/5*(x-1)5T3=taylor(sin(x),6,pi/2)1-1/2*(x-1/2*pi)2+1/24*(x-1/2*pi)4T4=taylor(xt,3,t)1+log(x)*t+1/2*log(x)2*t2得:得:例例9.麦克劳林展开函数麦克劳林展开函数symsxf=1/(5+4*cos(x)T=taylor(f,
8、8)Pretty(T)244961/9+2/81x+5/1458x+-x131220例例3.7计算计算 f=1/(5+4cos(x)关于关于x的导数的导数symsxf=1/(5+4*cos(x)ezplot(f)f1=diff(f,x,1)ezplot(f1)f1=4/(5+4*cos(x)2*sin(x)可视化符号函数分析界面可视化符号函数分析界面1、单变量函数分析的交互界面、单变量函数分析的交互界面单单变变量量函函数数分分析析界界面面用用于于考考察察两两个个一一元元函函数数各各自自性性质质及及其其相相关关关关系系。该该函函数数计计算算器器由由funtool.m文文件件生生成成。在在MATL
9、AB命令窗口中键入命令命令窗口中键入命令funtool系系统统将将产产生生三三个个新新窗窗口口。其其中中,1号号和和2号号窗窗口口(FigureNo.1,FigureNo.2)是是函函数数曲曲线线窗窗口口,3号号窗窗口口(FigureNo.3)是是函函数数运运算算控控制制器器。系系统统初初始始状状态态时时时时刻刻,三三个个窗窗口口中中只只有有3号号窗窗口口处处于于激激活活状状态态,另另两两个个处处于于睡睡眠眠状状态态。用用鼠鼠标标单单击击1号号(或或2号号)窗窗口口,可可激激活活该该窗窗口口,同同时时使使原原处处于于激激活活状状态态的的窗窗口口转转换换到到睡眠状态。睡眠状态。第一个文本框中的函
10、数第一个文本框中的函数f(x)换为换为,第二个文本,第二个文本框中的函数框中的函数g(x)换为换为则另两个窗口的函数图形会发生变化,如下图所示。则另两个窗口的函数图形会发生变化,如下图所示。swap交换交换f(x)和和g(x).cycle顺序演示典型函数表中函数顺序演示典型函数表中函数insert将当前函数插入典型函数表中代演示将当前函数插入典型函数表中代演示help帮助文件帮助文件delete将将1号窗口中函数从典型函数表中删除号窗口中函数从典型函数表中删除demo自动演示自动演示reset返回初始演示状态返回初始演示状态close关闭函数计算器关闭函数计算器例例5.求求函数函数的渐近线、极
11、值、的渐近线、极值、拐点,并作图拐点,并作图.8/16symsxn=3*x2+6*x-1;d=x2+x-3;f=n/d;limit(f,inf)ans=3roots=solve(d)roots=-1/2+1/2*13(1/2)-1/2-1/2*13(1/2)ezplot(f)holdonplot(-2*pi2*pi,33,g)plot(double(roots(1)*11,-510,r)plot(double(roots(2)*11,-510,r)title(水平渐近线和垂直渐近线水平渐近线和垂直渐近线)holdofff1=diff(f);c=solve(f1)c=-8/3-1/3*13(1/
12、2)-8/3+1/3*13(1/2)ezplot(f)holdonplot(double(c),double(subs(f,c),ro)title(函数的极大值和极小值函数的极大值和极小值)text(-5.5,3.2,局部极小值局部极小值)text(-2.5,2,局部极大值局部极大值)holdofff2=diff(f1);q=solve(f2);double(q)ans=-5.2635-1.3682-0.8511i-1.3682+0.8511iq=q(1);ezplot(f,-96)holdonplot(double(q),double(subs(f,q),ro)title(函数的拐点函数的拐
13、点)text(-7,2,拐点拐点)holdoff例例7.计算不定积分计算不定积分symsabxf=exp(a*x)*sin(b*x);int(f,x);pretty(ans)bexp(ax)cos(bx)aexp(ax)sin(bx)-+-2222a+ba+bg=simplify(ans)g=exp(a*x)*(-b*cos(b*x)+a*sin(b*x)/(a2+b2)例例8.绘函数绘函数(a=1,b=3)在在0,3.2上的图形上的图形.并计算并计算symsabxf=exp(a*x)*sin(b*x)f1=subs(f,a,1),f1=subs(f1,b,3)ezplot(f1,0,3.22
14、)F1=simplify(int(f1,1,2)double(F1)ans=-3.1806例例10、计算定积分计算定积分,symsxytq1=int(sin(x)+2,0,pi/6)q2=int(xy,y,0,pi/3)q3=int(4*x*t,x,2,sin(t)%定义符号变量定义符号变量%求第一个积分求第一个积分%求第二个积分求第二个积分%求第三个积分求第三个积分得:得:q1=-1/2*3(1/2)+1/3*pi+1q2=(x(1/3*pi)-1)/log(x)q3=2*t*(sin(t)2-4)即:即:例例3.12计算二重积分计算二重积分symsxyf=x2*sin(y);int(int
15、(f,x,0,1),y,0,pi)ezmesh(f,0,1,0,pi)ans=2/3 定积分数值计算命令定积分数值计算命令quad(f,a,b)例例3.14计算积分上限函数值计算积分上限函数值f=inline(x.3./(exp(x)-1);x=eps:.1:5;y=f(x);fill(0,x,5,0,y,0,c)x=eps:0.1:10;y=f(x);line(x,y)q(1)=quad(f,eps,1);fork=1:4line(k,k,0,f(k);q(k+1)=q(k)+quad(f,k,k+1);endq t 123 45F(t)0.22481.17642.55223.87714.8
16、999f=inline(exp(x).*sin(3*x)quad(f,1,2)ans=-3.1806计算定积分计算定积分:例例9.级数求和运算级数求和运算S=symsum(f,n,a,b)例例11.计算级数计算级数S2=symsum(k2,k,1,n);factor(S2)S2=1/6*n*(n+1)*(2*n+1)symsknS1=symsum(k,k,1,n);factor(S1)S1=1/2*n*(n+1)S3=symsum(1/k2,k,1,inf)S3=1/6*pi212/16命令格式命令格式:dsolve(eq1,con1,x)y的一阶导数的一阶导数Dy,y的二阶导数的二阶导数D2
17、y例例10.解微分方程解微分方程14/16y=dsolve(Dy=1/(1+x2)-2*y2,y(0)=0,x)y=2*x/(2*x2+2)符号解符号解:y(x)=x/(1+x 2)旋转曲面绘制方法旋转曲面绘制方法非负函数非负函数y=f(x)在有限区间上的图形为上半平面在有限区间上的图形为上半平面的一条曲线,曲线绕的一条曲线,曲线绕x轴旋转时,产生以轴旋转时,产生以x为对称为对称轴的旋转曲面,方程为轴的旋转曲面,方程为绘制网面需创建三维坐标绘制网面需创建三维坐标矩阵矩阵,对某一确定的对某一确定的x=t,旋旋转曲面上对应于过点转曲面上对应于过点x=t垂直于垂直于X轴的圆轴的圆,该圆周上该圆周上所
18、有点的所有点的X坐标不变,坐标不变,y和和z的坐标则满足圆的方程的坐标则满足圆的方程f=inline(exp(-0.2*x).*sin(0.5*x);t=(0:20)*pi/10;theta=t;r=f(t);x=t*ones(size(t);y=r*cos(theta);z=r*sin(theta);mesh(x,y,z)colormap(000)axisoffview(-17,54)曲线曲线 绕绕X轴旋转图形绘制轴旋转图形绘制练习题与思考题练习题与思考题15/161.用用MATLAB求极限求极限2.用用MATLAB求导数求导数3.用用MATLAB求定积分求定积分4.用用MATLAB求级数和
19、求级数和5.计算曲线段计算曲线段 f(x)=exp(a x)sin(b x),绕绕X轴旋转的旋转曲面面积轴旋转的旋转曲面面积6.编写一个函数文件,用于计算椭圆周长,要求输编写一个函数文件,用于计算椭圆周长,要求输入变量是椭圆的长半轴和短半轴。入变量是椭圆的长半轴和短半轴。7.符号变量与数值型变量有何区别?符号变量与数值型变量有何区别?8.用两个窗口绘下列函数图形用两个窗口绘下列函数图形,分析函数性质分析函数性质16/16思考题与练习题思考题与练习题1.用用symsx定义了符号变量定义了符号变量,表达式表达式Y=exp(-0.2*x)*sin(0.5*x)与一般表达式有何不同与一般表达式有何不同2.定积分符号计算与数值计算有何不同?定积分符号计算与数值计算有何不同?3.旋转曲面的面积计算公式如何构造?旋转曲面的面积计算公式如何构造?4.写出曲线写出曲线y=f(x)绕绕y轴旋转的旋转曲面方程轴旋转的旋转曲面方程5.下面两个曲面是由同一个平面曲线旋转产生的下面两个曲面是由同一个平面曲线旋转产生的,这个这个平面曲线的方程是什么平面曲线的方程是什么?