MATLAB作业及答案.docx
《MATLAB作业及答案.docx》由会员分享,可在线阅读,更多相关《MATLAB作业及答案.docx(17页珍藏版)》请在冰点文库上搜索。
![MATLAB作业及答案.docx](https://file1.bingdoc.com/fileroot1/2023-5/5/23d5c29c-825f-4784-885e-7eb4b561d313/23d5c29c-825f-4784-885e-7eb4b561d3131.gif)
MATLAB作业及答案
2008-2009-2MATLAB初步入门习题
1.已知矩阵
,矩阵
,解线性方程X,使得A.X=B,并将矩阵A的右下角2×3子矩阵赋给矩阵C。
2.根据下面两个矩阵
执行下列的矩阵运算命令,并回答有关的问题
(1)A+5*B和A-B+I分别是多少(其中I为单位矩阵)?
(2)A.*B和A*B将分别给出什么结果,它们是否相同,为什么?
得出A.^B、A/B及A\B的结果,并分别解释它们的物理意义。
3.分别用 for和while循环结构编写程序,求出
并考虑一种避免循环的简洁方法来求和,并比较各种算法的运行时间。
(注:
一共是三种方法)
4.画图题
要求:
1、两根曲线画在一幅图中,不采用子图的方式。
2、横坐标(0~5π),纵坐标为(-1.5~+1.5)
3、要求给横坐标轴加说明“t(deg)”,纵坐标轴加“magnitude”,并且加网格
4、在(π/2,1.2)处加创建说明性的文字“这是我的程序运行结果!
”
5、图中,sint用红色*线绘制,cost用篮色实线绘制。
6、给图形加标题“sinewavefromzeroto5/pi”
5.体会各种绘图命令及效果。
假设用户有下面的绘图数据向量
t=0:
0.1:
10;y=sin(tan(t))-tan(sin(t));
且绘图函数采用下面各个函数,如polar(),bar(),stem(),stairs(),那么试得出并解释所得出的结果。
6.证明:
函数z=xy的图形是双曲抛物面。
(提示:
在区域-2≤x≤2,-2≤y≤2上作出它的图形。
)
7.求解微分方程
8.用subplot分别在不同的坐标系下作出下列四条曲线,为每幅图形加上标题,
①概率曲线
(-5≤x≤5);②四叶玫瑰线
(0≤x≤2pi);
③叶形线
(-2≤x≤2);④曳物线
(-1≤x≤1)。
9.求
,并简化结果。
10.simulink仿真题(选做)
要求如下:
1、绘制出系统结构图
2、输入信号为step信号
3、输出接scope和workspace
4、要使能够看出系统响应的趋势,仿真时间如何处理?
(给出具体措施)
5、输出到workspace的保存类型(svaeformat)设定为何种?
并使用plot语句绘制出系统响应曲线(用命令)
答案
. 已知矩阵,矩阵,解线性方程X,使得A.X=B,
程序:
A=[57651
710872
681093
579104
12345];
B=[2496
34136
36144
35140
1560];
X=A\B
C=A([45],[345])
结果:
X=
1 4
1 4
1 4
1 4
1 4
C=
9 10 4
3 4 5
2.根据下面两个矩阵
执行下列的矩阵运算命令,并回答有关的问题
(1) A+5*B和A-B+I分别是多少(其中I为单位矩阵)?
(2) A.*B和A*B将分别给出什么结果,它们是否相同,为什么?
得出A.^B、A/B及A\B的结果,并分别解释它们的物理意义。
程序:
A=sym([41220;124578;2078136]);
B=sym([123;456;789]);
I=sym([100;010;001]);
A+5*B
A-B+I
A.*B %A.为A的共轭矩阵,式为A的共轭矩阵和B相乘
A*B %A直接和矩阵B相乘,结果与上面显然不同
A.^B %A的共轭矩阵的B次方
A/B %右除解XB=A
A\B %左除解AX=B
结果:
ans=
[ 9, 22, 35]
[ 32, 70,108]
[ 55,118,181]
ans=
[ 4, 10, 17]
[ 8, 41, 72]
[ 13, 70,128]
ans=
[ 4, 24, 60]
[ 48, 225, 468]
[ 140, 624,1224]
ans=
[ 192, 228, 264]
[ 738, 873,1008]
[1284,1518,1752]
ans=
[ 4, 144, 8000]
[ 20736, 184528125, 225199600704]
[ 1280000000, 1370114370683136,15916595351771938816]
Warning:
Systemisrankdeficient.Solutionisnotunique.
>InC:
\MATLAB6p5\toolbox\symbolic\@sym\mldivide.matline38
InC:
\MATLAB6p5\toolbox\symbolic\@sym\mrdivide.matline24
ans=
[ 28/3, -4/3, 0]
[ 40, -7, 0]
[212/3,-38/3, 0]
Warning:
Systemisrankdeficient.Solutionisnotunique.
>InC:
\MATLAB6p5\toolbox\symbolic\@sym\mldivide.matline38
ans=
[-1/12, 5/6, 7/4]
[ 1/9, -1/9, -1/3]
[ 0, 0, 0]
3. 分别用for和while循环结构编写程序,求出
并考虑一种避免循环的简洁方法来求和,并比较各种算法的运行时间。
(注:
一共是三种方法)
程序:
K=63;
A=0;
tic
form=0:
K
B=2^m;
A=A+B;
end
t1i=toc
formatrat
A
formatshortg
B=0;
n=0;
i=0;
tic
whilen<64
B=B+2^i;
i=i+1;
n=n+1;
end
t2i=toc
formatrat
B
formatshortg
C=0;
tic
C=1*(2^64-1)/(2-1)
t3i=toc
formatrat
C
formatshortg
结果:
t1i=
0.016
A=
18446744073709552000
t2i=
0.015
B=
18446744073709552000
C=
1.8447e+019
t3i=
0.015
C=
18446744073709552000
4.画图题
要求:
1、两根曲线画在一幅图中,不采用子图的方式。
2、横坐标(0~5π),纵坐标为(-1.5~+1.5)
3、要求给横坐标轴加说明“t(deg)”,纵坐标轴加“magnitude”,并且加网格
4、在(π/2,1.2)处加创建说明性的文字“这是我的程序运行结果!
”
5、图中,sint用红色*线绘制,cost用篮色实线绘制。
6、给图形加标题“sinewavefromzeroto5/pi”
程序:
t=(0:
pi/50:
5*pi)';
y1=sin(t);
y2=cos(t);
plot(t,y1,'r*',t,y2,'b-')
axis([0,5*pi,-1.5,1.5])
title('sinewavefromzeroto5/pi')
xlabel('t(deg)')
ylabel('magnitude')
text(0.5*pi,1.2,'\fontsize{16}\leftarrow\itsin(t)\fontname{隶书}这是我的程序运行结果')
gridon
结果:
5.体会各种绘图命令及效果。
假设用户有下面的绘图数据向量
t=0:
0.1:
10;y=sin(tan(t))-tan(sin(t));
且绘图函数采用下面各个函数,如polar(),bar(),stem(),stairs(),那么试得出并解释所得出的结果。
程序:
t=0:
.1:
10;
y=sin(tan(t))-tan(sin(t));
subplot(2,2,1),polar(t,y)
title('
(1)极坐标')
gridon
subplot(2,2,2),bar(t,y)
title('
(2)直方图')
gridon
subplot(2,2,3),stairs(t,y)
title('(3)阶梯图')
gridon
subplot(2,2,4),stem(t,y)
title('(4)二维杠杆图')
gridon
结果:
6.证明:
函数z=xy的图形是双曲抛物面。
(提示:
在区域-2≤x≤2,-2≤y≤2上作出它的图形。
)
程序:
clf
x=-2:
2;
y=-2:
2;
[x,y]=meshgrid(x,y);
z=x.*y;
subplot(2,2,1),surf(z);
title('surf(z)')
xlabel('x')
ylabel('y')
zlabel('z')
subplot(2,2,2),surf(x,y,z);
title('surf(x,y,z)')
xlabel('x')
ylabel('y')
zlabel('z')
subplot(2,2,3),mesh(z);
title('mesh(z)')
xlabel('x')
ylabel('y')
zlabel('z')
subplot(2,2,4),mesh(x,y,z);
title('mesh(x,y,z)')
xlabel('x')
ylabel('y')
zlabel('z')
结果:
7.求解微分方程
程序:
symsx
y=dsolve('Dy-2*y/(x+1)-(x+1)^2.5=0','x')
y=simple(y)
结果:
y=
2/3*(x+1)^(3/2)*x^2+4/3*(x+1)^(3/2)*x+2/3*(x+1)^(3/2)+C1*x^2+2*C1*x+C1
y=
1/3*(x+1)^2*(3*C1+2*(x+1)^(3/2))
8.用subplot分别在不同的坐标系下作出下列四条曲线,为每幅图形加上标题,
①概率曲线(-5≤x≤5);②四叶玫瑰线(0≤x≤2pi);
③叶形线 (-2≤x≤2);④曳物线(-1≤x≤1)。
程序:
clf
x=-5:
0.1:
5;
y=exp(-x.^2);
subplot(2,2,1),plot(x,y);
title('概率曲线')
xlabel('x')
ylabel('y')
text(1,0.6,'\fontsize{16}\leftarrow\itexp(-x.^2)\fontname{隶书}')
gridon
x=0:
0.1:
2*pi;
y=sin(2*x);
subplot(2,2,2),polar(x,y);
title('四叶玫瑰线')
xlabel('x')
ylabel('y')
text(1,0.6,'\fontsize{16}\leftarrow\itsin2*pi\fontname{隶书}')
gridon
symst
x=-2:
0.1:
2;
x=3*t/(1+t.^3);
y=3*(t.^2)/(1+t.^3);
subplot(2,2,3),ezplot('3*t/(1+t.^3)','3*(t.^2)/(1+t.^3)',[020])
axis([-2,2,-2,2])
title('叶形线')
xlabel('x')
ylabel('y')
gridon
symsx,y;
subplot(2,2,4),
f1=inline('log((1+sqrt(1-y.^2))./y)-sqrt(1-y.^2)-x');
f2=inline('log((1-sqrt(1-y.^2))./y)+sqrt(1-y.^2)-x');
ezplot(f1);
holdon;
ezplot(f2);
axis([-1,1,-2,2])
title('曳物线')
gridon;
结果:
9. 求,并简化结果。
程序:
symsabcd
D=[a^2+1/a^2,a,1/a,1;b^2+1/b^2,b,1/b,1;c^2+1/c^2,c,1/c,1;d^2+1/d^2,d,1/d,1];
DA=det(D)
M=simple(DA)
结果:
DA=
(-b*c^2*a^3+b*d^2*a^3+b^2*c*a^3+b^3*c^2*a+c*d^2*b^3*a^4-c^2*d*b^3*a^4-c^3*d^2*b*a^4+c^3*d*b^2*a^4+c^2*d^3*b*a^4-c*d^3*b^2*a^4+c*d^2*b^3-c^2*d*b^3-c^3*d^2*b+c^3*d*b^2+c^2*d^3*b-c*d^3*b^2-c*d^2*a^3+c^2*d*a^3+c^3*d^2*a-c^3*d*a^2-c^2*d^3*a+c*d^3*a^2-b^2*d*a^3-b^3*d^2*a+b^3*d*a^2+b^2*d^3*a-b*d^3*a^2-b^3*c*a^2-b^2*c^3*a+b*c^3*a^2-c*d^2*a^3*b^4+c^2*d*a^3*b^4+c^3*d^2*a*b^4-c^3*d*a^2*b^4-c^2*d^3*a*b^4+c*d^3*a^2*b^4+b*d^2*a^3*c^4-b^2*d*a^3*c^4-b^3*d^2*a*c^4+b^3*d*a^2*c^4+b^2*d^3*a*c^4-b*d^3*a^2*c^4-b*c^2*a^3*d^4+b^2*c*a^3*d^4+b^3*c^2*a*d^4-b^3*c*a^2*d^4-b^2*c^3*a*d^4+b*c^3*a^2*d^4)/a^2/c^2/d^2/b^2
M=
(d-c)*(-c+b)*(-d+b)*(-c+a)*(-d+a)*(-b+a)*(c*d*b*a-1)/a^2/c^2/d^2/b^2