matlab数学实验复习题有答案.docx
《matlab数学实验复习题有答案.docx》由会员分享,可在线阅读,更多相关《matlab数学实验复习题有答案.docx(17页珍藏版)》请在冰豆网上搜索。
matlab数学实验复习题有答案
复习题
1、写出3个常用的绘图函数命令:
plot、ezplot、fplot
2、inv(A)表示A的逆矩阵;
3、在命令窗口健入clc,作用是清除工作间管理窗口的所有内容
4、在命令窗口健入clear,作用:
清除内存中所有变量
5、在命令窗口健入figure,作用是打开一个新的图形;
6、x=-1:
0.2:
1表示在区间[-1,1]内以0.2为步长等距取值
7、det(A)表示计算A的行列式的值;
8、三种插值方法:
拉格朗日多项式插值,分段线性插值,三次样条插值。
9、若A=,则fliplr(A)=
A-3=A.^2=tril(A)=
triu(A,-1)=diag(A)=A(:
2),=A(3,:
)=
10、normcdf(1,1,2)=0.5%正态分布mu=1,sigma=2,x=1处的概率
11、unifpdf([5,7],2,6)=【0.25;0】
11、命令formatshort的作用保留小数点后四位而formatlong:
保留小数点后14位
12、formatrat的作用是最接近的有理数
12、interp1(x0,y0,x)的作用是求以x0,y0为节点数组,x为插值点数组的分段线性插值
13、13、[a,b,c,d]=fzero(@fun,x0)中参数的涵义是a是变号点的近似值,b是对应,的函数值,c是停止运行的原因(c=1即为找到该点,c=0就是没有找到)d是一个结构变量,@fun是求解方程的函数M文件,x0是零点或变号点附近的值。
14、龙格-库塔方法可用如下MATLAB命令求解微分方程[t,x]=ode45(@f,[a,b],x0),中参数的涵义是@fun是求解方程的函数M文件,[a,b]是输入向量即自变量的范围a为初值,x0为函数的初值,t为输出指定的[a,b],x为函数值
15、写出下列命令的功能:
axisequal纵、横坐标轴采用等长刻度
text(1,2,‘y=sin(x)’)在x=1,y=2处加上字符串y=sin(x);holdon把新的plot产生的图形画在原来的图形上。
title(‘y=sin(x)’)在图形正上方加上字符串y=sin(x)
16、Matlab中自定义函数M文件的第一行必须以function开头;
17、二种数值积分的库函数名为:
quad;quadl
18、unifrnd(1,2,3,4)的功能是:
随机生成3行4列均匀分布,每个元素服从(1,2)的矩阵
19、binornd(20,0.3,3,4)的功能是随机生成3行4列服从(20,0.3)的二项分布的矩阵
20、eig(A)的功能是矩阵A的特征值
21、设x是一向量,则hist(x)的功能是作出将X十等分的直方图
22、interp1([1,2,3],[3,4,5],2.5)
Ans=4.5
23、建立一阶微分方程组的函数M文件。
(做不出来)
二、写出运行结果:
1、>>eye(3,4)=
2、>>size([1,2,3])=1;3
3、设b=round(unifrnd(-5,5,1,4)),则=352-5
>>[x,m]=min(b);x=-5;m=4
[x,n]=sort(b)
-5235
4312
mean(b)=1.25,median(b)=2.5,range(b)=10
4、向量b如上题,则
>>any(b),all(b<2),all(b<6)
Ans=101
5、>>[56;78]>[78;56]=
6、若,则
7、>>diag(diag(B))=
8、>>[4:
-2:
1].*[-1,6]=-412
9、>>acos(0.5),atan
(1)
ans=
.0471********
ans=
0.785398163397448
10、>>norm([1,2,3])
Ans=3.741657386773941
11、>>length([1,3,-1])=3
12、>>x=0:
0.4:
2;plot(x,2*x,’k*’)
13、>>zeros(3,1);
ans=
0
0
0
14、>>ones(3)=,vander([2,3,5])=
16、>>floor(1:
0.3:
3)=
1111222
18、>>subplot(2,2,1);fplot('sin',[0,2*pi]);subplot(2,2,2);plot([1,2,-1]);
>>x=linspace(0,6*pi);subplot(2,2,3);plot3(cos(x),sin(x),x);
>>subplot(2,2,4);polar(x,5*sin(4*x/3));
19、>>t=linespace(0,2,11)
0.00.20.40.60.81.01.21.41.61.82.0
20、>>[a,b]=binostat(15,0.2)a=3b=2.4
>>y1=binopdf(5,10,0.7)=0.1029,y2=binocdf(5,10,0.7)=0.1503
21、>>log10([1,10,100])=[012]
22、>>p=1;fork=2:
3:
9p=p*k;end;pp=80
23、>>s=0;fork=2:
3:
9s=s+k;end;ss=15
24、
Ans=3.8647
25、>>a1=norminv(0.6,3,4)a1=4.0134
26、>>unifinv(0.4,1,5),unifpdf(0.4,1,5),unifpdf(2,1,5)
Ans=2.600.25
27、>>A=[01-1;210;1-11];
01-1
1-11
>>A([1,3],:
)
1-11
01-1
A([3,1],:
)=1-11
01-1
>>A(2,:
)=210
>>-2*A(1,:
)=0-22
28、>>quad(‘sin(x)’,0,pi/2)=1.0000
29、>>trapz([3,4,6],[1,2,3])=6.5000
30、>>int('x-sin(x)',0,1)
Ans=
cos
(1)-1/2
31、>>round(3:
0.4:
5),ceil(3:
0.4:
5);floor(3:
0.4:
5)
334455
333445
>>limit(1+1/(3*x)^x,inf)=1
>>diff(sin(3*x)+x^3,2)=6*x-9*sin(3*x)
>>taylor(exp(3*x),5,1):
命令输入:
y=taylor(exp(3*x),x,1,'Order',5)
Ans=
exp(3)+3*exp(3)*(x-1)+(9*exp(3)*(x-1)^2)/2+(9*exp(3)*(x-1)^3)/2+(27*exp(3)*(x-1)^4)/8
>>a1=mod(15,4),b1=rem(15,4)=3,3
>>a2=mod(-15,-4),b2=rem(-15,-4)=-3,-3
>>a3=mod(15,-4),b3=rem(15,-4)=-1,-3
>>a4=mod(-15,4),b4=rem(-15,4)=1,-3
34、>>x=binornd(20,0.4,2,4)
87108
107912
>>sign(x),
1111
1111
>>y=-poissrnd(8,2,4)
-16-108-7
-7-8-6-9
>>sign(y)
-1-1-1-1
-1-1-1-1
35、>>[a1,b1]=binostat(20,0.4)a1=8b1=4.8
>>[a2,b2]=poisstat(8)ans=8,8
>>[a3,b3]=chi2stat(15)ans=[1530]
36、运行M文件:
chi2fig
n=5;a=0.9;
xa=chi2inv(a,n);
x=0:
0.1:
15;y=chi2pdf(x,n);
plot(x,y,'b');holdon;
xf=0:
0.1:
xa;yf=chi2pdf(xf,n);
fill([xf,xa],[yf,0],'g');
text(xa*1.01,0.005,num2str(xa));
text(2.5,0.05,'alpha=0.9','fontsize',20);
text(9,0.09,'X~{\chi}^2(4)','fontsize',16);
37、>>t=linspace(0,2*pi);
>>polar(t,3*t,’g*’)
38、>>quadl(’exp(2*x).*log(3*x)’,1,3)
ans=
398.6352
39、x0=0:
2*pi/6:
2*pi;y0=sin(x0).*cos(x0);
x=[linspace(0,2*pi,100)];y=sin(x).*cos(x);y1=spline(x0,y0,x);
[x;y;y1]'
plot(x,y,'k',x,y1,'b-')
注:
此处省略100组数据
40、>>A=round(unifrnd(0,100,3,3));
>>[L,U]=lu(A)
L=
0.98970.46991.0000
0.16491.00000
1.000000
U=
97.000080.000092.0000
035.804126.8247
00-89.6568
41、a=sparse([133],[235],[123],4,5);s=full(a)
s=
01000
00000
00203
00000
三、编程
1、分别用矩形公式、梯形公式、辛普森公式、Gauss-Lobatto公式及随机模拟方法计算数值积分,并与符号运算计算的结果进行比较。
formatlong
x=0:
0.01:
pi/2;
y=exp(3*x).*sin(2*x);
s1=sum(y)*0.01;
s2=trapz(x,y);
s3=quad('exp(3*x).*sin(2*x)',0,pi/2);
s4=quadl('exp(3*x).*sin(2*x)',0,pi/2);
n=10000;
x=unifrnd(0,pi/2,1,n);
y=unifrnd(0,exp(5.5),1,n);
k=0;
fori=1:
n
ify(i)<=exp(3*x(i)).*sin(2*x(i))
k=k+1;
end
end
s5=k/n*pi/2*exp(5.5);
symsx
s=int(exp(3*x).*sin(2*x),0,pi/2);
s6=double(s);
[s1,s2,s3,s4,s5,s6]
输出结果:
ans=
Columns1through3
17.27860904827786817.27772471054609217.279658142557587
Columns4through6
17.27965822921708717.21938124018484117.279658229208650
2、用雅可比迭代求解线性方程组,其中随机取。
要求使用函数型M文件,并有对其迭代格式的收敛性进行判断的功能。
雅可比迭代M文件;
function[x,m]=yakebi(A,b,x0,to