一、实验目的
了解Mathematica的微积分功能,能用Mathematica软件解决微分、积分、级数展开等问题。
二、相关知识
本实验介绍数学软件Mathematica的微积分功能。从本实验开始,我们在所举实例中仅给出Mathematica语句,除特别需要外,输出结果请大家自己运行。并且也省略系统自动生成的In[xx]:=。
(一)求极限
计算函数极限
的Mathematica函数为:Limit[f[x],x->x0]。在此基础上,还可以加上参数Direction->1或Direction->-1来表示左极限和右极限。
例1:求极限
。
解:Limit[Sin[x]/x,x->0]
例2:求极限
。
解:Limit[(1+α/x)^(β*x),x-> ∞]
例3:分别计算
和![]()
解:Limit[(x^2-4)/(4*x^2-7*x-2),x->Infinity]
Limit[(x^2-4)/(4*x^2-7*x-2),x->0]
例4:求极限
和
。
解:Limit[1/x,x->0,Direction->-1]
Limit[1/x,x->0,Direction->1]
例5:观察求极限
的结果。
解:Limit[Sin[1/x],x->0]
系统回应:
,这表示函数值在区间
间振荡。
例6:观察求极限
的结果。
解:Limit[(Sin[x]+x)/(x+Cos[x])^Sin[x],x->Infinity]
系统回应:![]()
这说明系统在无法计算极限时,将原表达式照样返回。
(二)微商和微分
在Mathematica中,用于求微商(导数)的函数为D[],其具体的使用格式和功能如下:
D[f,x]
计算偏导数![]()
D[f,x1,x2,…]
计算高阶偏导数
,
D[f,{x,n}]
计算
阶偏导数![]()
D[f,x,NonConstants->{v1,v2,…}] 计算
,其中
,
,
依赖于![]()
例7:设函数
,求
。
解:D[Exp[z]*Sin[x^2*y^3],x,y,z]
例8:设
是
的函数,
,求
,
解:D[f[g[t]],x,
NonConstants->t]
结果为:![]()
在Mathematica中,全微分和全导数共用函数Dt[],该函数的具体使用格式为:
Dt[f] 求全微分
Dt[f,x] 求全导数
例9:求函数
的全微分和全导数
解:求全微分用Dt[x^2y^3],结果为:
;
求全导数用Dt[x^2y^3,x],结果为:![]()
这里因为没有给出y关于x的具体表达式,因此系统也就不能具体计算出来。如果预先定义y=Sin[x],则系统就会给出:![]()
例10:函数的定义和求导。
定义![]()
求
的导数
系统给出的计算结果
求
的2阶导数
系统给出的结果
通过例10,我们又有了一种新的求导方法,它就和我们平时书写一样。
(三)不定积分和定积分
不定积分和定积分共用函数Integrate[],其具体使用格式如下:
Integrate[f,x]
计算不定积分![]()
Integrate[f,x,y]
计算不定积分![]()
Integrate[f,x,y,z]
计算不定积分![]()
Integrate[f,{x,a,b}]
计算定积分![]()
Integrate[f,{x,a,b},{y,c,d}]
计算二重积分![]()
例11:计算不定积分
的Mathematica程序为Integrate[5b x^4,x],计算结果为:
,这里注意,5和b间的空格或乘号可以省略,但b和x间的空格或乘号不能省略。在Mathematica中的表达式中,乘号可以用空格来代替,在较新的版本中具体数字和符号间的空格也可以省略,但符号与符号间的空格不能省略。
例12:计算二重不定积分
(这与积分次序无关)
解:Integrate[4x^3+3y^2,x,y]
计算结果为:![]()
例13:计算定积分![]()
解:计算结果为:![]()
如果希望得到具体的数字,我们可接着用N[%]得到:
。
例14:计算积分
。
解:![]()
结果为:![]()
这里要注意积分的次序先积分的要写在后面,最后一次积分的变量和区间要紧跟在函数的后面。
(四)幂级数
将函数展开成幂级数用函数Series[],其具体格式为:
Series[expr,{x,x0,n}] 将expr在
点展开到
阶的幂级数
Series[expr,{x,x0,n},{y,y0,m}] 先对
展开到
阶再对
展开
阶幂级数
例15:展开
到
的6次幂。
解:![]()
![]()
例16:展开f[x]展开成
的幂级数到
的4次幂,
解:![]()
![]()
如果事先定义了f[x],则展开式就是我们所需的特定展开式,如:
![]()
![]()
![]()
例17:将函数
展开成幂级数,关于
展开到4次幂,关于
展开到6次幂。
解:![]()
![]()
(五)傅立叶级数
要把一个函数展开成傅立叶级数,主要就是计算傅立叶系数,实际就是计算定积分,根据傅立叶系数的公式,我们知道:
,
,![]()
因此我们容易用Mathematica软件来进行计算,我们首先来定义
和
,
![]()
![]()
接着,只要定义好f[x],就可以就可以根据需要计算出傅立叶系数了。
例18:写出函数
的傅立叶展开式中的前11个系数。
解:根据上面的程序,可以得到:
a[0]=
,a[1]=-4,b[1]=
,
a[2]=1,b[2]=
,a[3]=
,b[3]=
,
a[4]=
,b[4]=
,a[5]=
,b[5]=
。
三、实验内容
1.求极限(1)
;(2)![]()
2.求导数(1)已知
,求
;(2)已知
,求
。
3.求不定积分(1)
;(2)
;(3)
。
4.求定积分(1)
;(2)
。
5.求二重积分(1)
;(2)
。
6.求三重积分![]()
7.将函数
在
处展开为幂级数(至5阶)。
8.将函数
展开为傅立叶级数,求前9个系数。
9.完成实验报告。