数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)

目录

实验四:微积分基本运算

练习四

练习五

练习六


实验四:微积分基本运算

练习四

1.利用MATLAB软件求下列函数的导数:

(1)已知,求.

syms x 
y=sqrt(x+2)*(3-x)^4/(x+1)^3;
y1=diff(y);
x=1/2;
eval(y1)

ans =-62.2207

(2)已知,求;

syms x 
y=sqrt(x*sin(sqrt(exp(log(3)*(exp(x)-log(x))))));
y2=diff(y,x,2)

这个答案太长,不写了。

(3)已知,求, ;

syms v
u=acos(v)^2*log(acos(v))^2;
u1=diff(u)
u2=diff(u1)

u1 =- (2*log(acos(v))*acos(v))/(1 - v^2)^(1/2) - (2*log(acos(v))^2*acos(v))/(1 - v^2)^(1/2)

u2 =- (6*log(acos(v)))/(v^2 - 1) - 2/(v^2 - 1) - (2*log(acos(v))^2)/(v^2 - 1) - (2*v*log(acos(v))^2*acos(v))/(1 - v^2)^(3/2) - (2*v*log(acos(v))*acos(v))/(1 - v^2)^(3/2)

(4)已知,求, .

syms x y z
u=(x-y)^z;
z=x^2+y^2;
ux=diff(u,x)
uy=diff(u,y)
uxy=diff(ux,y)

ux =z*(x - y)^(z - 1)

uy =-z*(x - y)^(z - 1)

uxy =-z*(x - y)^(z - 2)*(z - 1)

2.已知函数,按要求完成下面的任务:

 (1) 用MATLAB 软件求函数y的一阶、二阶导函数;

clc;
clear;
syms x
y=x^2*sin(x^2-x-2);
y1=diff(y,x);
y2=diff(y,x,2);
disp(y1)
disp(y2)

y1=x^2*cos(- x^2 + x + 2)*(2*x - 1) - 2*x*sin(- x^2 + x + 2)

y2=2*x^2*cos(- x^2 + x + 2) - 2*sin(- x^2 + x + 2) + x^2*sin(- x^2 + x + 2)*(2*x - 1)^2 + 4*x*cos(- x^2 + x + 2)*(2*x - 1)

(2) 画出函数y及其一阶、二阶导函数曲线,观察单调区间、凹凸区间、极值点和拐点等;

subplot(2,2,1)
ezplot(y,[-2,2])
subplot(2,2,2)
ezplot(y1,[-2,2])
subplot(2,2,3)
ezplot(y2,[-2,2])

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第1张图片

至于函数的单调区间、凸凹区间、极值点和拐点等,我就不一一赘述了。

(3)用区间二分法找出函数的一个零点、三个极值点和三个拐点,与其相应的理论值比较.

我们可以编一个小程序来实现区间二分法。首先我们要确定y函数的零点、极值点和拐点大致在什么区间上:

由下图我们得知,该函数零点分别在区间(-2,-1.5),(-1.5,-1),(-0.5,0.5)(其实0这个零点我们比较容易看出来),(1.5,2)。

我们分别在这四个区间内进行区间二分即可:(我们取精度为0.001)

零点:

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第2张图片

clc;
clear;
y=inline('x^2*sin(x^2-x-2)');
u=[-1.5 -0.9 0.5 2.5];
l=[-2 -1.2 -0.5 1.5];
for i=1:4
    while u(i)-l(i)>0.001
        m=(u(i)+l(i))/2;
        if y(m)==0
            break;
        end
      if y(l(i))<0
        if y(m)>0
            u(i)=m;
        else
            l(i)=m;
        end
        
    else
        if y(m)>0
            l(i)=m;
        else
            u(i)=m;
        end
      end
    end
    fprintf('第%i个零点为%f\n',i,m);
    end
  end

第1个零点为-1.821289   -1.8220

第2个零点为-1.000195    -1

第3个零点为0.000000     0

第4个零点为2.000000     2

(后侧是理论值)

极值点:由下图我们可以看出,极值点所在的区间为:(-2,-1.5),(-1,-0.5),(-0.5,0.5),(1.5,2)。

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第3张图片

clc;
clear;
y=inline('x^2*cos(- x^2 + x + 2)*(2*x - 1) - 2*x*sin(- x^2 + x + 2)');
 u=[-1.5 -0.5 0.5 2];
l=[-2 -1 -0.5 1.5];
for i=1:4
    while u(i)-l(i)>0.001
        m=(u(i)+l(i))/2;
        if y(m)==0
            break;
        end
      if y(l(i))<0
        if y(m)>0
            u(i)=m;
        else
            l(i)=m;
        end
        
    else
        if y(m)>0
            l(i)=m;
        else
            u(i)=m;
        end
      end
    end
   fprintf('第%i个极值点为%f\n',i,m);
    end
  end

第1个极值点为-1.532227    -1.5326

第2个极值点为-0.731445    -0.7315

第3个极值点为0.000000      0

第4个极值点为1.594727     1.5951

(后侧是理论值)

拐点:

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第4张图片

clc;
clear;
y=inline('2*x^2*cos(- x^2 + x + 2) - 2*sin(- x^2 + x + 2) + x^2*sin(- x^2 + x + 2)*(2*x - 1)^2 + 4*x*cos(- x^2 + x + 2)*(2*x - 1)');
 u=[-1.5 -1 0 1.5];
l=[-2 -1.5 -1 1];
for i=1:4
    while u(i)-l(i)>0.001
        m=(u(i)+l(i))/2;
        if y(m)==0
            break;
        end
      if y(l(i))<0
        if y(m)>0
            u(i)=m;
        else
            l(i)=m;
        end
        
    else
        if y(m)>0
            l(i)=m;
        else
            u(i)=m;
        end
      end
    end
   fprintf('第%i个拐点为%f\n',i,m);
    end
  end

第1个拐点为-1.924805                         1.9240

第2个拐点为-1.264648                         -1.2650

第3个拐点为-0.473633                         -0.4742

第4个拐点为1.241211                          1.2404

(后侧是理论值)

练习五

1.使用MATLAB软件求下列积分:

(1)

clc;
clear;
syms x
f=x*cos(x)/sin(x)^3;
jf=int(f)

jf =-(x + sin(2*x)/2)/(2*sin(x)^2)

(2)

syms x
f=tan(x);
jf=int(f)

jf =-log(cos(x))

(3);

clc;
clear;
syms x a b
f=exp(a*x)*sin(b*x);
jf=int(f,x)

jf =-(exp(a*x)*(b*cos(b*x) - a*sin(b*x)))/(a^2 + b^2)

(4).

clc;
clear;
syms x
f=1/(1+8*sin(x)^2);
jf=int(f,x,0,pi/6)

jf =pi/9

2.自己选取m,n,用多个方法验证下面结论:

=

方法一:代数实验法

clc;
clear;
m=input('请输入m值:');
n=input('请输入n值:');
syms x 
f=sin(m*x)*sin(n*x);
jb=int(f,x,-pi,pi);
disp(jb)

方法二:分析计算法:

当m=n时,被积分函数化为f=sin(n*x)^2为偶函数,那么在(-π,π)上的积分记为(0,π)上积分的两倍。

我们在(0,π)上积分并乘以2得:ans =pi - sin(2*pi*m)/(2*m),化简即为π。

当m≠n时,

syms x m n
f=sin(n*x)*sin(m*pi);
jb=int(f,x,-pi,pi)

jb =0.

练习六

1. 在x=2处展开成幂级数。

clc;
clear;
syms x 
f=1/(x^2+4*x+8);
jb=taylor(f,x,2,'order',7);
pretty(jb)

(11*(x - 2)^2)/2000 - x/50 - (3*(x - 2)^3)/2500 + (41*(x - 2)^4)/200000 - (11*(x - 2)^5)/500000 - (29*(x - 2)^6)/20000000 + 9/100

2. 求函数y=ln(1+x)的麦克劳林展开式,并画图观察分别用不同次数的泰勒多项式代替函数y=ln(1+x)的近似程度,并计算In2的近似值。

这个题目在实验二的练习一中有过类似的题目,当时是利用了taylortool命令在一个窗口中写的,此次我们试一下另一种写法。

clc;
clear;
syms x 
f=log(1+x);
y1=taylor(f,'order',2);
y2=taylor(f,'order',4);
y3=taylor(f,'order',6);
h1=ezplot(y1);
hold on
h2=ezplot(y2);
hold on
h3=ezplot(y3);
hold on
h4=ezplot('log(x+1)');
set(h4,'color','k','LineWidth',0.5);
title('');
legend('x','x^3/3 - x^2/2 + x','x^5/5 - x^4/4 + x^3/3 - x^2/2 + x','log(x+1)');
grid on
x=1; 
eval(y3)

ans =0.7833

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第5张图片

注:ezplot函数在画的时候要想改变图像线条的颜色,就必须在前面给他不同的句柄,这样系统本身就会给他不同的颜色,若想进一步修改图像的颜色或线条粗细,可以使用set进一步修改。

3.(1)求函数f(x)=x的傅里叶系数;

首先我们要编一个函数用于求函数的傅里叶系数,将这个文件命名为fourier1.m,这个函数的具体代码在书上本实验的示例26:(不能命名为fourier,因为MATLAB有一个fourier函数)

function [a0,an,bn]=fourier1(f)
syms x n
a0=int(f,-pi,pi)/pi;
an=int(f*cos(n*x),-pi,pi)/pi;
bn=int(f*sin(n*x),-pi,pi)/pi;
%在另一个窗口中运行一下程序:
clc;clear;
syms x
f=x;
[a0,an,bn]=fourier1(f)

a0 =0

an =0

bn =(2*(sin(pi*n) - n*pi*cos(pi*n)))/(n^2*pi)

(2)分别取n=2,5,10,20,在不同窗口绘制该傅里叶展开式的曲线;

(3)同时在这些窗口中绘制函数f(x)的曲线;

clc;
clear;
syms n x
an=0;
bn =(2*(sin(pi*n) - n*pi*cos(pi*n)))/(n^2*pi);
h=an*cos(n*x)+bn*sin(n*x);
m=[2 5 10 20];
for i=1:4
  k=symsum(h,n,1,m(i));
  figure(i)
  ezplot('x');
  hold on
  ezplot(k);
end

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第6张图片

(4)对比这些图形,你能得出什么结论?

观察上面的四幅图像,我们容易得出:当n值取得越大,傅里叶展开式的图像和原函数的图像越接近。

4.设函数 ,自己取定满足条件的a,b,完成以下步骤:

(1)绘制函数f(x)的曲线;

我们取a=0.5,b=6;

这里我们不能直接写inf,因为此时电脑画不出来。所以我们只能取一个较大的数:500。

clc;
clear;
syms n x
f=(1/2)^n*sin(4^n*x);
f1=symsum(f,n,0,500);
x=-5:0.0001:5;
f1=eval(f1);
plot(x,f1)

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第7张图片

(2)图是这个函数的整体图,下边的两张图分别是这个函数在一点的放大图。

数学实验第三版(主编:李继成 赵小艳)课后练习答案(四)(4)(5)(6)_第8张图片


通过放大我们发现,这个函数长满了“刺”,函数一点也不平滑。

(3)该函数有什么特点及性质?

如果我们进一步推测,可以判断如果n趋于正无穷,这个函数将处处都是“刺”,它将会成为一个不可导的函数。

推荐下一篇文章:数学实验第三版 (主编:李继成 赵小艳)课后练习答案(五)(1)(2)icon-default.png?t=N7T8https://blog.csdn.net/2301_80199493/article/details/136019634?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22136019634%22%2C%22source%22%3A%222301_80199493%22%7D

本文由作者自创,由于时间原因,难免出现些许错误,还请大家多多指正批评。创作不易,请大家多多鼓励支持。

你可能感兴趣的:(matlab)