>> axis([-0.5 1.2*pi -4 4])>> gtext(y=3*sin(2*x)")y=3*sin(2*x)5B响茶国5i*120D0.51.52.53.5自变量×图3-1(2)运行后生成的图像见图3-1所示.由此图可见,罗尔定理的几何意义是:若函数y=f(x)在区间[a,b]上的曲线弧AB是一条除端点外处处都有不垂直于x轴的切线的连续曲线段,且两端点A、B等高,则过曲线弧AB上的最高点C(5,F(5))或最低点D(E,f()处必有水平切线,即f)=0.例2验证拉格朗日中值定理对函数v=4x3-5x2+x-2在区间[0.2]上的正确性.解为解题方便,首先求出函数v的导数,相应的Matlab程序为>> syms x;>>y=4*x~3-5*x~2+x-2;>> dy=diff (y)结果为dy=12*x~2-10*x+1,接下来利用该结果来验证拉格朗日中值定理,输入程序>>a=0;b=2;ya=4*a~3-5*a2+a-2;yb=4*b_3-5*b~2+b-2;%求端点处函数值>>mm=solve(12*x2-10*x+1-(yb-ya)/(b-a)=0,x)%求解中值点=的符11
11 >> axis([-0.5 1.2*pi -4 4]) >> gtext('y=3*sin(2*x)') 图 3-1 (2)运行后生成的图像见图 3-1 所示.由此图可见,罗尔定理的几何意义是: 若函数 y f x = ( ) 在区间 [ , ] a b 上的曲线弧 AB 是一条除端点外处处都有不垂直于 x 轴 的切线的连续曲线段,且两端点 A 、B 等高,则过曲线弧 AB 上的最高点 1 1 C f ( , ( )) 或最低点 2 2 D f ( , ( )) 处必有水平切线,即 f ( ) 0 = . ●●例 2 验证拉格朗日中值定理对函数 3 2 y x x x = − + − 4 5 2 在区间 [0,2] 上的正确 性. 解 为解题方便,首先求出函数 y 的导数,相应的 Matlab 程序为 >> syms x; >> y=4*x^3-5*x^2+x-2; >> dy=diff(y) 结果为 dy =12*x^2-10*x+1,接下来利用该结果来验证拉格朗日中值定理, 输入程序 >> a=0; b=2; ya=4*a^3-5*a^2+a-2; yb=4*b^3-5*b^2+b-2; %求端点处 函数值 >> mm= solve('12*x^2-10*x+1-(yb-ya)/(b-a)=0',x) %求解中值点 的符
号解>>mm=subs(mm,[a,b,yb,ya]”,[0,2,yb,ya])%代入端点值,求数值解结果为=-0.40411.2374从以上实验结果中可以看到存在一个=1.2374e[0,2],从而验证了拉格朗日中值定理的正确性.二、泰勒公式计算利用Matlab软件提供的taylor函数可以迅速进行函数泰勒公式的计算,taylor函数的调用格式如下:求函数(x)形如之()的泰勒展开式r = taylor(f)n!ReO")的泰勒展开式,其中m为正求函数f()形如xr = taylor(f,m)n!=0整数"(的泰勒展开式,其中m为求函数f(x)形如(x-r=taylor(f,m,a)R1n!1=0正整数,a为实数?例3求下列函数的麦克劳林展开式:(1)y=ln(1+x),m=7;(2)),m=8.15+4cosx解(1)输入Matlab程序>> syms x>> f=log(1+x) ;>> r=taylor(f,7)结果为r1.=x-1/2*x~2+1/3*x~3-1/4*x~4+1/5*x~5-1/6*x6.(2)输入Matlab程序>> syms x>>f=1/(5+4*cos(x));>> r=taylor(f,8)结果为r=1/9+2/81*x2+5/1458*x~4+49/131220*x~6.例4求下列函数在指定点的泰勒展开式12
12 号解 >>mm=subs(mm,'[a,b,yb,ya]',[0,2,yb,ya]) %代入端点值,求数值解 结果为 mm = -0.4041 1.2374 从以上实验结果中可以看到存在一个 = 1.2374 [0,2] ,从而验证了拉格朗日中 值定理的正确性. 二、泰勒公式计算 利用 Matlab 软件提供的 taylor 函数可以迅速进行函数泰勒公式的计算, taylor 函数的调用格式如下: r = taylor(f) 求函数 f x( ) 形如 5 ( ) 0 (0) ! n n n f x = n 的泰勒展开式 r = taylor(f,m) 求函数 f x( ) 形如 ( ) 0 (0) ! m n n n f x = n 的泰勒展开式,其中 m 为正 整数 r = taylor(f,m,a) 求函数 f x( ) 形如 ( ) 0 ( ) ( ) ! m n n n f a x a = n − 的泰勒展开式,其中 m 为 正 整数, a 为实数 ●●例 3 求下列函数的麦克劳林展开式: (1) y x m = + = ln(1 ), 7 ; (2) 1 , 8 5 4cos y m x = = + . 解(1) 输入 Matlab 程序 >> syms x >> f=log(1+x); >> r=taylor(f,7) 结果为 r1 =x-1/2*x^2+1/3*x^3-1/4*x^4+1/5*x^5-1/6*x^6. (2)输入 Matlab 程序 >> syms x >> f=1/(5+4*cos(x)); >> r=taylor(f,8) 结果为 r =1/9+2/81*x^2+5/1458*x^4+49/131220*x^6. ●●例 4 求下列函数在指定点的泰勒展开式:
(1)y=x-5x +x2-3x+4,x=1.5,m=5;(2)y=xlnx,x=1,m=4.解(1)输入Matlab程序>> syms x>>f=x4-5*x~3+x~2-3*x+4;>> r=taylor(f, 5,1.5)结果为r=325/16-81/4*x-8*(x-3/2)~2+(x-3/2)3+(x-3/2)~4(2)输入Matlab程序>>syms x>> f=x2*1og(x);>> r=taylor(f,4, 1)结果为r=x-1+3/2*(x-1)~2+1/3*(x-1)~3例5泰勒级数计算器的使用Matlab软件提供了一个图形用户界面,用户可以很方便地观察函数f(x)在给定区间上被n阶泰勒多项式T(x)逼近的情况.在Matlab指令窗中运行taylortool命令,将引出如图3-2所示的图形用户界面ATaylor oolO0XEileEditYiewInsertIoolsDesktopHindowBelpTaylor Series Approximation10T,()= x-1/2 x+1/24 5-1/720 xf(x)x*cos(x)0-2"pi2*DN=7CHepResetIClose图3-2元.界面中显示默认函数f(x)=xcosx在区间内的图形,同时显示函数f的22前N项的在a=0附近泰勒多项式函数的图形.界面中函数f(x)的表达式及N,a和自变量取值区间的默认值可以键入不同值加以改变,函数f及对应的泰勒多项式13
13 (1) 4 3 2 0 y x x x x x m = − + − + = = 5 3 4, 1.5, 5 ;(2) 2 0 y x x x m = = = ln , 1, 4 . 解 (1)输入 Matlab 程序 >> syms x >> f=x^4-5*x^3+x^2-3*x+4; >> r=taylor(f,5,1.5) 结果为 r =325/16-81/4*x-8*(x-3/2)^2+(x-3/2)^3+(x-3/2)^4. (2)输入 Matlab 程序 >>syms x >> f=x^2*log(x); >> r=taylor(f,4,1) 结果为 r =x-1+3/2*(x-1)^2+1/3*(x-1)^3. ●●例 5 泰勒级数计算器的使用 Matlab 软件提供了一个图形用户界面,用户可以很方便地观察函数 f x( ) 在给 定区间上被 n 阶泰勒多项式 ( ) T x n 逼近的情况.在 Matlab 指令窗中运行 taylortool 命令,将引出如图 3-2 所示的图形用户界面. 图 3-2 界面中显示默认函数 f x x x ( ) cos = 在区间 , 2 2 − 内的图形,同时显示函数 f 的 前 N 项的在 a = 0 附近泰勒多项式函数的图形.界面中函数 f x( ) 的表达式及 N ,a 和 自变量取值区间的默认值可以键入不同值加以改变,函数 f 及对应的泰勒多项式
函数图形也会随之改变,用户可动态地观察到不同情况下泰勒多项式的逼近情况.三、研究函数的性态函数y=f(x)在区间[a,b上的图像可以直观地反映该函数的一些性态,如单调性、凹凸性、极值、拐点、渐近线及其与坐标轴的交点等等,下面我们主要从导数和函数的图像两个方面介绍研究函数的性态的实验例6求解函数f(x)=x+6x2+12x+4的单调性、凹凸性、极值和拐点解首先求解函数的一、二阶导数,然后画出它们的图像,最后利用图像研究该函数的性态.相应的Matlab程序如下:>> syms x;>>f=x~3-6*x~2+12*x+4;>> fl=diff(f,x)>>f2=diff(f1,x)>>fljie=solve(fl,x')%求驻点>>x=-3:0.5:7;>> y=subs(f,'x',x);%代入自变量x的取值,求y=f(x)函数值..>》》yl=subs(fl,x,x);%代入自变量x,求导函数y=f(x)的值>》y2=subs(f2,x,x);%代入自变量x,求导函数y=f"(x)的值>> hold on>> plot(x, y);%绘制函数y=f(x)的图像>> plot(x, yl,"-. k')%绘制函数的y=f(x)图像>>plot(x,y2,--r");%绘制函数的y=f"(x)图像>>gridon%加上网格线,为方便观察函数性态相应输出函数的一阶、二阶导数表达式及驻点如下,三个函数图像如图3-3所示.f1=3*x~2-12*x+12f2 =6*x-12fljie =14
14 函数图形也会随之改变,用户可动态地观察到不同情况下泰勒多项式的逼近情 况. 三、研究函数的性态 函数 y f x = ( ) 在区间 [ , ] a b 上的图像可以直观地反映该函数的一些性态,如单调 性、凹凸性、极值、拐点、渐近线及其与坐标轴的交点等等,下面我们主要从导 数和函数的图像两个方面介绍研究函数的性态的实验. ●●例 6 求解函数 3 2 f x x x x ( ) 6 12 4 = + + + 的单调性、凹凸性、极值和拐点. 解 首先求解函数的一、二阶导数,然后画出它们的图像,最后利用图像研 究该函数的性态.相应的 Matlab 程序如下: >> syms x; >> f=x^3-6*x^2+12*x+4; >> f1=diff(f,x) >> f2=diff(f1,x) >> f1jie=solve(f1,'x') %求驻点 >> x=-3:0.5:7; >> y=subs(f,'x',x); %代入自变量 x 的取值,求 y f x = ( ) 函数值 >> y1=subs(f1,'x',x); %代入自变量 x ,求导函数 y f x = ( ) 的值 >> y2=subs(f2,'x',x); %代入自变量 x ,求导函数 y f x = ( ) 的值 >> hold on >> plot(x,y); %绘制函数 y f x = ( ) 的图像 >> plot(x,y1,'-.k') %绘制函数的 y f x = ( ) 图像 >> plot(x,y2,'-r'); %绘制函数的 y f x = ( ) 图像 >> grid on %加上网格线,为方便 观察函数性态 相应输出函数的一阶、二阶导数表 达式及驻点如下,三个函数图像如图 3-3 所示. f1 =3*x^2-12*x+12 f2 =6*x-12 f1jie =
22图3-3由f(),f"(x),f"(x)这三个函数的图像可以看到:当xeR时,总有f"(x)≥0(黑色点划线),所以(-,+o)是f(x)的单调递增区间,又由于f(x)不变号,所以函数没有极值点和极值;又当xe(-0,2)时,f"(α)<0,当xe(2,+o)时,f"(x)>0,所以(-0,2)是f(x)的凹区间,而(2,+o)是f(x)的凸区间,又有f(2)=0,因此(2,12)为函数f(x)的拐点.数学实验四利用Matlab软件中的函数int可以对不定积分进行符号计算,其调用格式和功能如下所示int(s)求符号表达式s的不定积分int(s,x)求符号表达式s关于变量x的不定积分说明:在初等函数范围内,不定积分有时是不存在的,也就是说,即使f(x)是初等函数,但是不定积分f(x)dx却不一定是初等函数.例如,e,sinx,rsinxdr是初等函数,而[e-rdx,dr一dx却不能用初等函数表示logaxlog.x出来.比如,输入程序:>> syms x>> F=int(sin(x)/x)运行后屏幕显示:15
15 2 2 图 3-3 由 f x( ), f x ( ), f x ( ) 这三个函数的图像可以看到:当 x R 时,总有 f x ( ) ≥ 0 (黑 色点划线),所以 ( , ) − + 是 f x( ) 的单调递增区间,又由于 f x ( ) 不变号,所以函数 没有极值点和极值;又当 x − ( ,2) 时, f x ( ) 0 ,当 x + (2, ) 时, f x ( ) 0 ,所以 ( ,2) − 是 f x( ) 的凹区间,而 (2, ) + 是 f x( ) 的凸区间,又有 f (2) 0 = ,因此 (2,12) 为函 数 f x( ) 的拐点. 数学实验四 利用 Matlab 软件中的函数 int 可以对不定积分进行符号计算,其调用格式 和功能如下所示. int(s) int(s,x) 求符号表达式 s 的不定积分 求符号表达式 s 关于变量 x 的不定积分 说明:在初等函数范围内,不定积分有时是不存在的,也就是说,即使 f x( ) 是初等函数,但是不定积分 f x x ( )d 却不一定是初等函数.例如, 2 e −x , sin x x , e x x , 1 loga x 是初等函数,而 2 e dx x − , sin d x x x , e d x x x , 1 d loga x x 却不能用初等函数表示 出来.比如,输入程序: >> syms x >> F=int(sin(x)/x) 运行后屏幕显示: