学习中心/函授站_
姓名学号
西安电子科技大学网络与继续教育学院
2015学年上学期
《MATLAB与系统仿真》期末考试试题
(综合大作业)题号
题分
得分
考试说明:
1、大作业于2015年4月3日公布,2015年5月9日前在线提交;
2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。
3、程序设计题(三(8,10))要求写出完整的程序代码,并在matlab软件环境调试并运行通过,连同运行结果一并附上。
一、填空题(1’×25=25’)
1、Matlab的全称为2、在Matlab编辑器中运行程序的快捷键是:。
3、Matlab的工作界面主要由以下五个部分组成,窗口、Currentdirectory(当前路径浏览器)、Workspace(工作台窗口)、Commandhistory(指令历史窗口)和Launchpad(发布平台)。
4、在Matlab中infclcmorewho;whos表示:节数、属性等信息。
5、在Matlab命令窗口中运行命令可以打开Simulink模块库浏览器窗口。
6、求矩阵行列式的函数:;求矩阵特征值和特征向量的函数。7、Matlab预定义变量ans表示:;eps表示:;nargin表示:
第1页(共12页)一25二12三63总分
实现Fourier变换在Matlab中的对应函数为:fft;Laplace变换的函数:。
10、MATLAB编写的程序文件称为M文件,M文件有种。
二、简答题(3’×4=12’)
1、简述MATLAB命令窗的主要作用?
答:MATLAB的命令窗口(CommandWindow)用于输入命令并显示除图形以外的所有执行结果,是MATLAB的主要交互窗口。
2、描述在Matlab中矩阵运算的含义,如A*B,A.*B表示什么运算过程?
答:MATLAB中矩阵算术运算包括基本算术运算和点运算。基本算数运算是在矩阵意义下进行的(当个数据的算术运算只是一种特例),如矩阵m*n维矩阵A和n*m维矩阵B相乘A*B得到一个m*m维矩阵。矩阵点运算是指他们对应元素进行相关运算,要求两矩阵的维数相同,如m*n维矩阵A和m*n维矩阵B点乘A.*B得到一个m*n为矩阵。
3、分析以下函数执行过程,回答问题:
functionc=testarg1(a,b)
if(nargin==1)
c=a.^2;
elseif(nargin==2)
c=a+b;
end
如果用户使用一个参数调用函数testarg1,函数执行什么功能?如果使用两个参数调用函数testarg1,函数又执行什么?
答:题干程序中nargin是判断输入参数个数,根据不同输入参数执行不同操作。如果用户使用一个参数(a)调用函数testarg1,函数执行c=a.^2。如果使用两个参数(a,b)调用函数testarg1,函数执行c=a+b。
4、新建Simulink仿真模型文件的方法是什么?
答:(1)、首先打开SIMULINK模块库:在MATLAB工作界面的工具条单击SIMULINK图标,或在MATLAB指令窗口中运行simulink,就可引出SIMULINK模块浏览器。
(2)、新建模型窗:单击SIMULINK模块库浏览器工具条上的新建图标,引出空白模型窗。
(3)、添加元器件并保存:从模块库中找到所要的元器件,拖到模型窗中,连线并保存文件即可。
5、简述绘制二维图形的一般步骤?
答:首先定义自变量x的范围及步长;然后需要或者按一定的函数关系求得第二维变量的值y;最后利用绘制二维图形函数如:plot(x,y)即可绘制出x与y的二位图形。
6、简述脚本M文件和函数M文件的区别?
答:(1)、M函数文件一般都要带参数,都要有返回结果,而M脚本文件文件没有参数与返回结果
第2页(共12页)
(2)、M函数文件的变量是局部变量,运行期间有效,运行完毕就自动被清除,而命令文件的变量是全局变量,执行完毕后仍被保存在内存中
(3)、M函数文件要定义函数名,且保存该函数文件的文件名必须是函数名.m。M函数文件可以有多个因变量和多个自变量,当有多个因变量时用[]括起来。
三、程序设计及分析(1-2每题4’,3-9每题5’,10题20’,共63’)
?'1''2'?1、将下列字符矩阵S转换为数字矩阵(S???)?'3''4'??
>>S=['1''2';'3''4']
S=
1234%输入字符矩阵
>>N=str2num(S)%将字符矩阵转换为数字矩阵
N=
1324
2、把矩阵A,B分别在垂直方向,水平方向连接,A=[123],B=[456]?>>A=[123];>>B=[456];
>>H=[A,B]%将A,B在水平方向连接
H=
123456
>>V=[A';B']%将A,B在垂直方向连接
V=
12345
第3页(共12页)
3、编程实现函数f(x)?x?2x?5的根?63
>>p=[10-2-5];>>x=roots(p)
x=
4、编程实现一元二次方程ax?bx?c?0?
程序如下:2.0946-1.0473+1.1359i-1.0473-1.1359i2
clearclc
disp('求方程:a*x^2+b*x+c=0的解');
disp('请输入a,b,c的值:');
a=input('a=');b=input('b=');c=input('c=');deta=b*b-4*a*c;ifdeta>0
disp('该方程有两个不相等的实数根');
elseifdeta==0
disp('该方程有两个相等的实数根');
else
disp('该方程有两个共轭复根');
endx=[(-b+sqrt(deta))/2/a;(-b-sqrt(deta))/2/a]运行结果如下:
求方程:a*x^2+b*x+c=0的解
请输入a,b,c的值:
a=1b=4c=1该方程有两个不相等的实数根
x=
第4页(共12页)
5、求f(x)?x?10?2?0在x0?0.5附近的根?-0.2679-3.7321x
%牛顿迭代法解方程y=x-10^x+2在x0=0.5附近的根x0=0.5;formatlong;x=x0-f(x0)/f_(x0);if(abs(x)<0.5)delt=abs(x-x0);elsedelt=abs((x-x0)/x);endwhile(delt>1e-6|abs(f(x0))>1e-6)x0=x;x=x0-f(x0)/f_(x0);if(abs(x)<0.5)delt=abs(x-x0);elsedelt=abs((x-x0)/x);endiff(x)==0breakendend
disp('解方程y=x-10^x+2,牛顿迭代法结果')xfunctiony=func1_1(x)y=x-10.^x+2;
运行结果如下:
解方程y=x-10^x+2,牛顿迭代法结果
x=
0.375812087593426
6、绘制函数图形:y1?sin(x),y2?cos(x)。要求:
(1)x??0,2??;
(2)数据采样间隔?/50?
(3)设置网格;
(4)添加图形标注;
第5页(共12页)
(5)两幅图叠加在一张图中。
程序如下:
运行结果如下:clearclcx=0:pi/50:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,'r');holdonplot(x,y2,'b');gridonlegend('y1=sin(x)','y2=cos(x)');
1
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-101234567
7、分析以下程序执行后的效果?
x=-2:0.2:2;
y=x;
[x,y]=meshgrid(x,y);
z=x.*exp(-x.^2-x.^2);
mesh(x,y,z);
题干可能有误:如果z=x.*exp(-x.^2-x.^2);结果如下:
第6页(共12页)
-2
2
如果z=x.*exp(-x.^2-y.^2);结果如下:
分析:该程序的作用是以x,y为自变量,z为因变量,画出3
维曲面
-22
8、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及标注图例。(要求附上运行结果)
第7页(共12页)
clearclcx=0:pi/100:4*pi;y1=sin(x);y2=cos(x);plot(x,y1,'r-');holdonplot(x,y2,'g--');fori=1:length(x)delt=abs(y1(i)-y2(i));ifdelt<=1e-2holdonplot(x(i),y1(i),'k*');endendlegend('y1=sin(x)','y2=cos(x)','á??ú????μ?');
1
0.8
0.6
0.4
0.2
-0.2
-0.4
-0.6
-0.8
-102468101214
9、编写一个实现n阶乘的函数。function[s]=fun(n)s=1;fori=1:ns=s*i;end
第8页(共12页)
10、已知矩阵n=10+自己的真实学号,A?(aij)n?n,aij?i?j,试编写一个m文件完成以下问题:(要求附上程序运行结果)
(1)求A的行列式;
(2)求A的秩;
(3)画出A的每个行向量的图形;
(4)查看A的大小(即行、列数);
(5)计算A的第11行与第11列的乘积;
(6)用一个二次函数去拟合A的最后一行向量,画出图形;
(7)计算A的每行的和,用条形图把该和向量描绘出来,加上轴标签和图形标题;
(8)计算A的特征值和特征向量;
(9)计算A的迹、逆和范数;
(10)查看A*A的右下角元素ann的值。(A为A的转置矩阵)
自己的真实学号如实输入就OK了,这里假设学号是5,到时候自己改TT22
clearclc
disp('请输入自己的学号');
x=input('x=');n=10+x;A=zeros(n,n);fori=1:nforj=1:nA(i,j)=i^2+j^2;endend
(1)d=det(A);
d=
-1.059683846499320e-174
(2)r=rank(A);
r=
2
(3)fori=1:size(A,1)
plot(A(i,:))holdonendholdoff
第9页(共12页)
450
400
350
300
250
200
150
100
50
0051015
(4)[nr,nc]=size(A);
nr=
15
nc=
15
(5)P=A(11,:)*A(:,11);
P=
698007
(6)x=1:n;
y=A(end,:);z=polyfit(x,y,2)w=polyval(z,x);plot(x,y,'k+',x,w,'r')
第10页(共12页)
500
450
400
350
300
250
200051015
(7)S=sum(A,2);bar(S);xlabel('行数');ylabel('不同行的
和');title('矩阵A每行的和')
矩阵A每行的和
5000
4500
4000
3500
不同行的和 300025002000
1500
1000
500
0123456789行数101112131415
第11页(共12页)
(8)
[V,D]=eig(A);
(9)T=trace(A);A_=inv(A);N=norm(A);
T=
2480
N=
2.875444893599292e+003
(10)B=A'*A;a=B(end,end);
a=
1495687
第12页(共12页)
www.99jianzhu.com/包含内容:建筑图纸、PDF/word/ppt 流程,表格,案例,最新,免费下载,施工方案、工程书籍、建筑论文、合同表格、标准规范、CAD图纸等内容。