MATLAB数学实验100例题解

更新时间:2023-12-06 02:36:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一元函数微分学

实验1 一元函数的图形(基础实验)

实验目的 通过图形加深对函数及其性质的认识与理解, 掌握运用函数的图形来观察和分析 函数的有关特性与变化趋势的方法,建立数形结合的思想; 掌握用Matlab作平面曲线图性的方法与技巧. 初等函数的图形

2 作出函数y?tanx和y?cotx的图形观察其周期性和变化趋势. 解:程序代码: >> x=linspace(0,2*pi,600); t=sin(x)./(cos(x)+eps);

plot(x,t);title('tan(x)');axis ([0,2*pi,-50,50]); 图象:

tan(x)50403020100-10-20-30-40-500123456

程序代码:

>> x=linspace(0,2*pi,100); ct=cos(x)./(sin(x)+eps);

plot(x,ct);title('cot(x)');axis ([0,2*pi,-50,50]); 图象:

cot(x)50403020100-10-20-30-40-500123456

8

4在区间[?1,1]画出函数y?sin1x的图形. 解:程序代码:

>> x=linspace(-1,1,10000); y=sin(1./x); plot(x,y); axis([-1,1,-2,2]) 图象:

21.510.50-0.5-1-1.5-2-1-0.8-0.6-0.4-0.200.20.40.60.81

二维参数方程作图

6画出参数方程??x(t)?costcos5t?y(t)?sintcos3t的图形:

解:程序代码: >> t=linspace(0,2*pi,100);

plot(cos(t).*cos(5*t),sin(t).*cos(3*t)); 图象:

10.80.60.40.20-0.2-0.4-0.6-0.8-1-1-0.8-0.6-0.4-0.200.20.40.60.81

极坐标方程作图

8 作出极坐标方程为r?et/10的对数螺线的图形.

解:程序代码:

9

>> t=0:0.01:2*pi; r=exp(t/10);

polar(log(t+eps),log(r+eps)); 图象:

90 0.8120 0.6150 0.4 0.218030600210330240270300

分段函数作图

10 作出符号函数y?sgnx的图形. 解:

程序代码:

>> x=linspace(-100,100,10000); y=sign(x); plot(x,y);

axis([-100 100 -2 2]);

21.510.50-0.5-1-1.5-2-10-8-6-4-20246810

函数性质的研究

12研究函数f(x)?x5?3ex?log3(3?x)在区间[?2,2]上图形的特征. 解:程序代码:

>> x=linspace(-2,2,10000); 10

y=x.^5+3*exp(x)+log(3-x)/log(3); plot(x,y); 图象:

6050403020100-10-20-30-40-2-1.5-1-0.500.511.52

实验2 极限与连续(基础实验)

实验目的 通过计算与作图, 从直观上揭示极限的本质,加深对极限概念的理解. 掌握用 Matlab画散点图, 以及计算极限的方法. 深入理解函数连续的概念,熟悉几种间断点的图形特征,理解闭区间上连续函数的几个重要性质. 作散点图

14分别画出坐标为(i,i2),(i2,4i2?i3),(i?1,2,?,10)的散点图, 并画出折线图. 解:散点图程序代码: >> i=1:10; plot(i,i.^2,'.')

100908070605040302010012345678910

或:>> x=1:10; y=x.^2; for i=1:10; plot(x(i),y(i),'r') hold on end

11

100908070605040302010012345678910

折线图程序代码: >> i=1:10; plot(i,i.^2,'-x')

100908070605040302010012345678910

程序代码: >> i=1:10;

plot(i.^2,4*(i.^2)+i.^3,'.')

14001200100080060040020000102030405060708090100

>> i=1:10;

plot(i.^2,4*(i.^2)+i.^3,'-x')

14001200100080060040020000102030405060708090100

数列极限的概念 12

4x 101616通过动画观察当n??时数列an?12的变化趋势.

3n2解:程序代码: 10>> n=1:100; -1an=(n.^2); -2-3n=1:100;

-4-4-3-2-101234an=1./(n.^2); n=1:100;

an=1./(n.^2); for i=1:100

plot(n(1:i),an(1:i)),axis([0,100,0,1]) pause(0.1) end 图象:

10.90.80.70.60.50.40.30.20.100102030405060708090100

函数的极限

18在区间[?4,4]上作出函数f(x)?x3?9xx3?x的图形, 并研究

xlim??f(x) 和 limx?1f(x).

f(x)?x3?9x 解:作出函数x3?x在区间[?4,4]上的图形 >> x=-4:0.01:4;

y=(x.^3-9*x)./(x.^3-x+eps); plot(x,y)

13

从图上看,

f(x)在x→1与x→∞时极限为0

两个重要极限 20计算极限

x211??(1)lim?xsin?sinx? (2)limx

x???ex?0?xx?(3)limtanx?sinx (4)limxx 3x?0x??0xlncotx (6)limx2lnx

x??0lnxx??0(5)limsinx?xcosx3x3?2x2?5(7)lim (8)lim x?0x??5x3?2x?1x2sinx(9)lime?e?2x?sin (10)lim??x?0?x?x?0x?sinxx?x1x?1?cosx

解:(1)>> limit(x*sin(1/x)+1/x*sin(x)) ans =1

(2) >> limit(x^2/exp(x),inf) ans = 0

(3) >> limit((tan(x)-sin(8))/x^3) ans =NaN

(4) >> limit(x^x,x,0,'right') ans =1

(5) >> limit(log(cot(x))/log(x),x,0,'right') ans =-1

(6) >> limit(x^2*log(x),x,0,'right') ans =0

(7) >> limit((sin(x)-x.*cos(x))./(x.^2.*sin(x)),x,0) ans =1/3

(8) >> limit((3*x.^3-2*x.^2+5)/(5*x.^3+2*+1),x,inf) ans =3/5

(9) >> limit((exp(x)-exp(-x)-2*x)./(x-sin(x))) ans =2 14

(10) >> limit((sin(x)/x).^(1/(1-cos(x)))) ans =exp(-1/3)

实验3 导数(基础实验)

实验目的 深入理解导数与微分的概念, 导数的几何意义. 掌握用Matlab求导数与高 阶导数的方法. 深入理解和掌握求隐函数的导数, 以及求由参数方程定义的函数的导数的方法. 导数概念与导数的几何意义

22作函数f(x)?2x3?3x2?12x?7的图形和在x??1处的切线. 解:作函数f(x)?2x3?3x2?12x?7的图形 程序代码: >> syms x;

>> y=2*x^3+3*x^2-12*x+7; >> diff(y) ans = 6*x^2+6*x-12 >> syms x;

y=2*x^3+3*x^2-12*x+7; >> f=diff(y) f =

6*x^2+6*x-12 >> x=-1; f1=6*x^2+6*x-12 f1 = -12

>> f2=2*x^3+3*x^2-12*x+7 f2 = 20

>> x=linspace(-10,10,1000);y1=2*x.^3+3*x.^2-12*x+7; y2=-12*(x+1)+20; plot(x,y1,'r',x,y2,'g')

15

25002000150010005000-500-1000-1500-2000-10-8-6-4-20246810

求函数的导数与微分

?1?24求函数f(x)?sinaxcosbx的一阶导数. 并求f???.

?a?b?解:求函数f(x)?sinaxcosbx的一阶导数 程序代码: >> syms a b x y; y= sin(a*x)*cos(b*x); D1=diff(y,x,1) 答案:D1 =

cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b

?1?求f???.

a?b??程序代码: >> x=1/(a+b);

>> cos(a*x)*a*cos(b*x)-sin(a*x)*sin(b*x)*b 答案:ans =

cos(a/(a+b))*a*cos(b/(a+b))-sin(a/(a+b))*sin(b/(a+b))*b 拉格朗日中值定理

26对函数f(x)?x(x?1)(x?2),观察罗尔定理的几何意义. (1) 画出y?f(x)与f?(x)的图形, 并求出x1与x2. 解:程序代码: >> syms x; f=x*(x-1)*(x-2); f1=diff(f) f1 =

(x-1)*(x-2)+x*(x-2)+x*(x-1) >> solve(f1) 16

ans = 1+1/3*3^(1/2) 1-1/3*3^(1/2)

>> x=linspace(-10,10,1000); y1=x.*(x-1).*(x-2);

y2 =(x-1).*(x-2)+x.*(x-2)+x.*(x-1); plot(x,y1,x,y2)

10005000-500-1000-1500-10-8-6-4-20246810

(2)画出y?f(x)及其在点(x1,f(x1))与(x2,f(x2))处的切线. 程序代码:>> syms x; >> f=x*(x-1)*(x-2); >> f1=diff(f) f1 =

(x-1)*(x-2)+x*(x-2)+x*(x-1) >> solve(f1) ans = 1+1/3*3^(1/2) 1-1/3*3^(1/2)

>> x=linspace(-3,3,1000); >> y1=x.*(x-1).*(x-2);

>> y2 =(x-1).*(x-2)+x.*(x-2)+x.*(x-1); >> plot(x,y1,x,y2) >> hold on

>> x=1+1/3*3^(1/2); >> yx1=x*(x-1)*(x-2) yx1 = -0.3849 >> x=1-1/3*3^(1/2);

17

>> yx2=x*(x-1)*(x-2) yx2 = 0.3849

x=linspace(-3,3,1000); yx1 =-0.3849*x.^0; yx2 =0.3849*x.^0; plot(x,yx1,x,yx2)

6040200-20-40-60-3-2-10123

28求下列函数的导数: (1) y?e3x?1;

解:程序代码: >> syms x y; y=exp((x+1)^3); D1=diff(y,1) 答案:D1 =

3*(x+1)^2*exp((x+1)^3) x?(2) y?ln[tan(?)];

24解:程序代码: >> syms x;

y=log(tan(x/2+pi/4)); D1=diff(y,1) 答案:D1 =

(1/2+1/2*tan(1/2*x+1/4*pi)^2)/tan(1/2*x+1/4*pi) (3) y?1cot2x?lnsinx; 2解:程序代码: 18

>> syms x;

y=1/2*(cot(x))^2+log(sin(x)); D1=diff(y,1) 答案:D1 =

cot(x)*(-1-cot(x)^2)+cos(x)/sin(x) (4) y?12arctan2. x解:程序代码: >> syms x;

>> y=sqrt(2)*atan(sqrt(2)/x); >> D1=diff(y,1) 答案:D1 = -2/x^2/(1+2/x^2)

一元函数积分学与空间图形的画法 实验4 一元函数积分学(基础实验)

实验目的 掌握用Matlab计算不定积分与定积分的方法. 通过作图和观察, 深入理解 定积分的概念和思想方法. 初步了解定积分的近似计算方法. 理解变上限积分的概念. 提高应用 定积分解决各种问题的能力. 不定积分计算 30求x2(1?x3)5dx. 解:程序代码: >> syms x y; >> y=x^2*(1-x^3)^5; >> R=int(y,x) 答案:R =

-1/18*x^18+1/3*x^15-5/6*x^12+10/9*x^9-5/6*x^6+1/3*x^3 32求x2arctanxdx. 解:程序代码: >> syms x y; >> y=x^2*atan(x); >> R=int(y,x) 答案:R =

19

??

1/3*x^3*atan(x)-1/6*x^2+1/6*log(x^2+1)

定积分计算 34 求

10?(x?x2)dx.

解:程序代码: >> syms x y; >> y=x-x^2; >> R=int(y,x,0,1) 答案: R = 1/6 变上限积分 36 画出变上限函数解:程序代码: >> syms x y t; >> y=t*sin(t^2); >> R=int(y,x,0,x) 答案:R = t*sin(t^2)*x 再求导函数 程序代码: >> DR=diff(R,x,1) 答案:DR = t*sin(t^2)

实验5 空间图形的画法(基础实验)

实验目的 掌握用Matlab绘制空间曲面和曲线的方法. 熟悉常用空间曲线和空间曲面 的图形特征,通过作图和观察, 提高空间想像能力. 深入理解二次曲面方程及其图形. 一般二元函数作图 38作出函数z??x0tsint2dt及其导函数的图形.

41?x2?y2的图形.

解:程序代码: >> x=linspace(-5,5,500); 20

[x,y]=meshgrid(x); z=4./(1+x.^2+y.^2); mesh(x,y,z);

xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('function')

40作出函数z?cos(4x2?9y2)的图形. 解:程序代码:

>> x=-10:0.1:10;[x,y]=meshgrid(x);z=cos(4*x.^2+9*y.^2); mesh(x,y,z);

xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('function')

讨论:坐标轴选取范围不同时,图形差异很大,对本题尤为明显,如右图为坐标轴[-1,1] 二次曲面

作出单叶双曲面x2y21?4?z2429?1的图形.(曲面的参数方程为

x?secusinv,y?2secucosv,z?3tanu, (??/2?u??/2,0?v?2?.))

解:程序代码: >> v=0:pi/100:2*pi; >> u=-pi/2:pi/100:pi/2; >> [U,V]=meshgrid(u,v); >> x=sec(U).*sin(V); >> y=2*sec(U).*cos(V);

21

>> z=3*tan(U); >> surf(x,y,z)

44 可以证明: 函数z?xy的图形是双曲抛物面. 在区域?2?x?2,?2?y?2上作出它的图形. 解:程序代码:

>> x=-2:0.01:2;[x,y]=meshgrid(x); >> z=x.*y; >> mesh(x,y,z);

46 画出参数曲面

?x?cosusinv??y?sinusinv?z?cosv?ln(tanv/2?u/5)?解:程序代码: >> v=0.001:0.001:2; >> u=0:pi/100:4*pi; >> [U,V]=meshgrid(u,v); >> x=cos(U).*sin(V); >> y=sin(U).*sin(V);

>> z=cos(V)+log(tan(V/2)+U/5); >> mesh(x,y,z); 22

u?[0,4?],v?[0.001,2] 的图形.

空间曲线

48 作出空间曲线x?tcost,y?tsint,z?2t(0?t?6?)的图形. 解:程序代码: >> syms t;

ezplot3(t*cos(t),t*sin(t),2*t,[0,6*pi])

x = t cos(t), y = t sin(t), z = 2 t4030z20100201020010-100-10y-20-20x

??x?cos2t50绘制参数曲线 ??y?1?1?2t的图形.

??z?arctant解:程序代码: >> t=-2*pi:pi/100:2*pi;

x=cos(t).*cos(t);y=1./(1+2*t);z=atan(t); plot3(x,y,z);

23

1.510.5z0-0.5-1-1.51000-1000.200.4x0.610.8grid;xlabel('x'),ylabel('y'),zlabel('z')

多元函数微积分

实验6 多元函数微分学(基础实验)

y-200

实验目的 掌握利用Matlab计算多元函数偏导数和全微分的方法, 掌握计算二元

函数极值和条件极值的方法. 理解和掌握曲面的切平面的作法. 通过作图和观察, 理解二元 函数的性质、方向导数、梯度和等高线的概念. 求多元函数的偏导数与全微分

?z?z?2z?2z52设z?sin(xy)?cos(xy),求,,2,.

?x?y?x?x?y2解:程序代码: >> syms x y;

S=sin(x*y)+(cos(x*y))^2; D1=diff(S,'x',1); D2=diff(S,'y',1); D3=diff(S,'x',2); D4=diff(S,'y',2); D1,D2,D3,D4

答案: D1 = cos(x*y)*y-2*cos(x*y)*sin(x*y)*y D2 = cos(x*y)*x-2*cos(x*y)*sin(x*y)*x

D3 =-sin(x*y)*y^2+2*sin(x*y)^2*y^2-2*cos(x*y)^2*y^2 D4 = -sin(x*y)*x^2+2*sin(x*y)^2*x^2-2*cos(x*y)^2*x^2

实验7 多元函数积分学(基础实验) 实验目的

掌握用Matlab计算二重积分与三重积分的方法; 深入理解曲线积分、曲面积分的 24

概念和计算方法. 提高应用重积分和曲线、曲面积分解决各种问题的能力. 计算重积分 54计算

??xy2dxdy, 其中D为由x?y?2,x?y, y?2所围成的有界区域.

D解:程序代码: >> syms x y;

int(int(x*y^2,x,2-y,sqrt(y)),y,1,2) 答案:ans = 193/120 重积分的应用

56求旋转抛物面z?4?x2?y2在Oxy平面上部的面积S. 解:程序代码: >> int(2*pi*r,r,0,2) 答案: ans = 4*pi

无穷级数与微分方程

实验8 无穷级数(基础实验) 实验目的

观察无穷级数部分和的变化趋势,进一步理解级数的审敛法以及幂级数部分和对函数的逼近. 掌握用Matlab求无穷级数的和, 求幂级数的收敛域, 展开函数为幂级数以及展 开周期函数为傅里叶级数的方法. 数项级数 58(1) 观察级数

??12的部分和序列的变化趋势.

n?1n解:程序代码: for i=1:100 s=0; for n=1:i s=s+1/n^2; end

plot(i,s,'.');hold on; end

25

1.81.71.61.51.41.31.21.110102030405060708090100

(2) 观察级数

?n的部分和序列的变化趋势.

n?1?1>> for i=1:100 s=0; for n=1:i s=s+1/n; end

plot(i,s,'.'); hold on; end

5.554.543.532.521.510102030405060708090100

60 求

?4nn?1?1的值. 2?8n?3解:程序代码: >> syms n;

score=symsum(1/(4*n^2+8*n+3),1,inf) 答案: score = 1/6

函数的幂级数展开

62求arctanx的5阶泰勒展开式. >> syms x;

>> T5=taylor(atan(x),6) 答案:T5 = 26

x-1/3*x^3+1/5*x^5

实验9 微分方程(基础实验)

实验目的 理解常微分方程解的概念以及积分曲线和方向场的概念,掌握利用 Matlab求微分方程及方程组解的常用命令和方法.

求解微分方程

64求微分方程 y??2xy?xe?x2的通解. 解:程序代码:

>> y=dsolve('Dy+2*x*y=x*exp(-x^2)','x') 答案:y =

(1/2*x^2+C1)*exp(-x^2)

66求微分方程y???2y??5y?excos2x的通解. 解:程序代码:

>> y=dsolve('D2y-2*Dy+5*y=exp(x)*cos(2*x)','x') 答案: y =

exp(x)*sin(2*x)*C2+exp(x)*cos(2*x)*C1+1/4*exp(x)*sin(2*x)*x

??dxx?2y?et68求微分方程组?dt?在初始条件xt?0?1,yt?0?0下的特解.

?dy??dt?x?y?0解:程序代码:

>> [x,y]=dsolve('Dx+x+2*y-exp(t)','Dy-x-y','x(0)=1','y(0)=0','t') 答案: x = cos(t)

y = 1/2*sin(t)-1/2*cos(t)+1/2*exp(t) 70求解微分方程dydx?2yx?1?(x?1)5/2,并作出积分曲线. 解:程序代码: >> syms x y

y=dsolve('Dy-2*y/(x+1)-(x+1)^(5/2)','x') 答案:y =

27

本文来源:https://www.bwwdw.com/article/imrt.html

Top