Matlab符号微积分练习

来源:互联网 发布:淘宝发票抬头设置 编辑:程序博客网 时间:2024/06/02 22:22

由于这篇博文公式实在太多,截图又不太好看,所以切换到Markdown编辑器下来写。还好CSDN的这个Markdown支持LaTeX公式,方便许多了。
1.计算下列各式:
(1)limx0tanxsinx1cos2x

%1(1)clearclcsyms x;f=(tan(x)-sin(x))/(1-cos(2*x));limit(f) %其它等价用法 limit(f,0) limit(f,x,0)

结果

ans =0

(2)limx+x2+xex

%1(2)clearclcsyms x;f=(x^2+x)/exp(x);limit(f,inf) %其它等价用法 limit(f,x,inf)

结果

ans =0

(3)y=x32x2+sinx,求y

%1(3)clearclcsyms x;y=x^3-2*x^2+sin(x);diff(y) %其它等价用法 diff(y,x) diff(y,1) diff(y,x,1)

结果

ans =cos(x) - 4*x + 3*x^2

(4)sin2xlnx,求y

%1(4)clearclcsyms x;y=sin(2*x)*log(x);diff(y) %其它等价用法 diff(y,x) diff(y,1) diff(y,x,1)

结果

ans =2*cos(2*x)*log(x) + sin(2*x)/x

(5)f=ln(x+y2),求fx,fy,2fxy

clearclcsyms x y;f=log(x+y^2);diff(f,x) %其它等价用法 diff(f) diff(f,1) diff(f,x,1)diff(f,y) %其它等价用法 diff(f,y,1)diff(diff(f,x),y)

结果

ans =1/(y^2 + x)ans =(2*y)/(y^2 + x)ans =-(2*y)/(y^2 + x)^2

(6)y=xyln(x+y),求fx,fy,2fxy

%1(6)将表达式中等号左边的y改成fclearclcsyms x y;f=x*y*log(x+y);df_dx=diff(f,x)df_dy=diff(f,y)dff_dxdy=diff(diff(f,x),y)

结果

df_dx =y*log(x + y) + (x*y)/(x + y)df_dy =x*log(x + y) + (x*y)/(x + y)dff_dxdy =log(x + y) + x/(x + y) + y/(x + y) - (x*y)/(x + y)^2
%1(6)把整个表达式视为f=0clearclcsyms x y;f=y-x*y*log(x+y);df_dx=diff(f,x)df_dy=diff(f,y)dff_dxdy=diff(diff(f,x),y)%此题还可以考隐函数求导,对于F(x,y)=0,dy/dx=-Fx/Fy(注意负号和顺序)dy_dx=-df_dx/df_dydyy_dxx=diff(-df_dx/df_dy,x)

结果

df_dx =- y*log(x + y) - (x*y)/(x + y)df_dy =1 - (x*y)/(x + y) - x*log(x + y)dff_dxdy =(x*y)/(x + y)^2 - x/(x + y) - y/(x + y) - log(x + y)dy_dx =-(y*log(x + y) + (x*y)/(x + y))/(x*log(x + y) + (x*y)/(x + y) - 1)dyy_dxx =((y*log(x + y) + (x*y)/(x + y))*(log(x + y) + x/(x + y) + y/(x + y) - (x*y)/(x + y)^2))/(x*log(x + y) + (x*y)/(x + y) - 1)^2 - ((2*y)/(x + y) - (x*y)/(x + y)^2)/(x*log(x + y) + (x*y)/(x + y) - 1)

(7)cos(4x+3)dx,π60cos(4x+3)dx

%1(7)clearclcsyms x;f=cos(4*x+3);int(f)int(f,0,pi/6) %其它等价用法int(f,x,0,pi/6)

结果

ans =sin(4*x + 3)/4ans =(3^(1/2)*cos(3))/8 - (3*sin(3))/8

(8)y=ln(1+t)dx,270ln(1+t)dx

%1(8)把题中所有dx改为dtclearclcsyms t;y=log(1+t);int(y)int(y,0,27) %其它等价用法int(y,t,0,27)

结果

ans =(log(t + 1) - 1)*(t + 1)ans =28*log(28) - 27

2.计算下列定积分
(1)计算积分11x+x3+x5dx的值
(2)计算积分101sinx+cosxdx的值
(3)计算积分62ex2dx的值
(4)计算积分101xx4+4dx的值
(5)计算积分101101sinyx+y4+x2dxdy的值
(6)计算积分101y1yx+y4dxdy的值
(7)计算积分30z101y1yx+y4dxdydz的值

%2clearclcsyms x y z;int(x+x^3+x^5,-1,1)int(sin(x)+cos(x),1,10)int(exp(x/2),2,6)int(x/(x^4+4),1,10)int(int(sin(y)*(x+y)/(4+x^2),x,1,10),y,1,10)int(int(y*(x+y)/4,x,1,y),y,1,10)int(z*int(int(y*(x+y)/4,x,1,y),y,1,10),0,3)

结果

ans =0ans =cos(1) - cos(10) - sin(1) + sin(10)ans =2*exp(1)*(exp(2) - 1)ans =atan(50)/4 - atan(1/2)/4ans =log(520^(1/2)/5)*(cos(1) - cos(10)) - (atan(1/2)*(cos(1) - 10*cos(10) - sin(1) + sin(10)))/2 + (atan(5)*(cos(1) - 10*cos(10) - sin(1) + sin(10)))/2ans =27135/32ans =244215/64

3.求解下列非线性方程(组)
(1)

0.4x+0.3124y+2.6598z+6.9785w=0.243.142x+8.22y+6.16z+0.254w=3.2510.1785x+5.358y+9.7932z+3.846w=0.212.643x+8.321y+0.283z+6.735w=2.354

clearclcsyms x y z w;f1=0.4*x+0.3124*y+2.6598*z+6.9785*w-0.24;f2=3.142*x+8.22*y+6.16*z+0.254*w-3.251;f3=0.1785*x+5.358*y+9.7932*z+3.846*w-0.21;f4=2.643*x+8.321*y+0.283*z+6.735*w+2.354;[x,y,z,w]=solve(f1,f2,f3,f4)

结果

x =-4629578672873047/19238652687953436y =3345137846701581/1603221057329453z =-29542916663552315/38477305375906872w =19161390580068175/38477305375906872

(2)

0.9501x+0.8913y+0.8214z+0.9218w=0.240.2311x+0.7621y+0.4447z+0.7382w=0.54280.6068x+0.4565y+0.6154z+0.1763w=0.53760.4860x+0.0185y+0.7919z+0.4057w=0.5714

%3(2)clearclcsyms x y z w;f1=0.9501*x+0.8913*y+0.8214*z+0.9218*w-0.24;f2=0.2311*x+0.7621*y+0.4447*z+0.7382*w-0.5428;f3=0.6068*x+0.4565*y+0.6154*z+0.1763*w-0.5376;f4=0.4860*x+0.0185*y+0.7919*z+0.4057*w+0.5714;[x,y,z,w]=solve(f1,f2,f3,f4)

结果

x =-825043647512601/577559329613032y =-349805538096493/577559329613032z =1204288618243359/577559329613032w =96242555204173/288779664806516

4.求解下列非线性方程(组)
(1)x2x1=0

clearclcsyms x;solve('x^2-x-1=0')

结果

ans = 1/2 - 5^(1/2)/2 5^(1/2)/2 + 1/2

(2)2x3+x2+3x1=0

%4(2)clearclcsyms x;solve('2*x^3+x^2+3*x-1=0')

结果

ans =                                                                                                                       ((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3) - 17/(36*((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)) - 1/6 17/(72*((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)) - ((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)/2 - 1/6 - (3^(1/2)*(17/(36*((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)) + ((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3))*i)/2 17/(72*((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)) - ((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)/2 - 1/6 + (3^(1/2)*(17/(36*((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3)) + ((419^(1/2)*1728^(1/2))/1728 + 10/27)^(1/3))*i)/2

(3)

{x0.7sinx0.2cosy=0y0.7cosx+0.2siny=0

%4(3)clearclcsyms x y;f1=x-0.7*sin(x)-0.2*cos(y);f2=y-0.7*cos(x)+0.2*sin(y);[x,y]=solve(f1,f2)%4(3)clearclcsyms x y;f1=x-0.7*sin(x)-0.2*cos(y);f2=y-0.7*cos(x)+0.2*sin(y);[x,y]=solve(f1,f2)

结果

x =0.52652262191818418730769280519209y =0.50791971903684924497183722688768

(4)

x2y2=0xy2=α

%4(3)clearclcsyms x y alpha;[x,y]=solve('x^2*y^2=0','x-y/2=alpha',x,y)

结果

x = alpha     0y =        0 -2*alpha

5.求解微分方程,初始值都设为0。
(1)y=2y+3x2+1
(2)y=y+4x

clearclcdsolve('Dy = -2*y+3*x^2+1','y(0)=0') %等价dsolve('Dy = -2*y+3*x^2+1','y(0)=0','t')dsolve('Dy = -y+4*x','y(0)=0') %等价dsolve('Dy = -y+4*x','y(0)=0','t')

结果

ans =(3*x^2)/2 - (3*x^2 + 1)/(2*exp(2*t)) + 1/2ans =4*x - (4*x)/exp(t)

6.已知函数f=sin2xlnx,绘制一个子图,上面两个子图分别为f导函数及其积分函数在区间[-5,5],步长为0.2,颜色分别为红色,黑色虚线的图像,下面的子图为f的图形,区间步长同上,颜色为蓝色点划线,加图例分别为导函数,积分函数,原函数。

clearclcsyms x;f=sin(2*x)*log(x);df=diff(f);intf=int(f);x1=-5:0.2:5;y1=real(subs(df,x,x1));%因为结果中含有虚部,画图时会出现警告Warning: Imaginary parts of complex X and/or Y arguments ignored %加real()函数忽略警告x2=-5:0.2:5;y2=real(subs(intf,x,x2));subplot(221);plot(x1,y1,'r--');legend('导函数');   subplot(222);plot(x2,y2,'k--');legend('积分函数'); x3=-5:0.2:5;y3=real(subs(f,x,x3)); subplot(2,2,[3 4]);plot(x3,y3,'b-.');legend('原函数'); 

结果
6题图片

7.绘制方程4x29y24在区间x[2,2],y[1,1]的网格图形,步长取0.2。

%7clear  clc  x=-2:0.2:2;  y=-1:0.2:1;  [X,Y]=meshgrid(x,y);  Z=sqrt(4-X.^2/9-Y.^2/4);plot3(X,Y,Z);

7题结果图
8.绘制方程5x23y27在区间x[2,2],y[1,1]的三维曲面图形,步长取0.1。

%8clear  clc  x=-2:0.1:2;  y=-1:0.1:1;  [X,Y]=meshgrid(x,y);  Z=sqrt(5-X.^2/3-Y.^2/7);  mesh(X,Y,Z);

8题结果图
9.绘制方程f=y1+x2+y2在区间x[4,4],y[2,2]的三维网格加网格线图形,步长取0.25。

%9clearclcx=-4:0.25:4;y=-2:0.25:2;[X,Y]=meshgrid(x,y);  Z=Y./(1+X.^2+Y.^2);  mesh(X,Y,Z);grid on

9题结果图
注:Matlab2010b中surf*函数,mesh*函数都自动带网格
补充:shading interp对图像进行插值处理使其连续光滑

0 0
原创粉丝点击