学习中心/函授站_ 成都学习中心
姓名赵洪学号7020140122093
西安电子科技大学网络与继续教育学院
2015学年上学期
《MATLAB与系统仿真》期末考试试题
(综合大作业)
考试说明:
1、大作业于2015年4月3日公布,2015年5月9日前在线提交;
2、考试必须独立完成,如发现抄袭、雷同、拷贝均按零分计。
3、程序设计题(三(8,10))要求写出完整的程序代码,并在matlab软件环境调试并运行通过,连同运行结果一并附上。
一、填空题(1’ ×25=25’)
1、Matlab的全称为矩阵实验室。
2、在Matlab编辑器中运行程序的快捷键是:F5 。
3、Matlab的工作界面主要由以下五个部分组成,它们分别是:菜单栏、
工具栏、当前工作目录窗口、工作空间管理窗口和命令窗口。
4、在Matlab中inf表示:无穷大;clc表示:清空命令窗口中的显示内容;more表示:在命令窗口中控制其后每页的显示内容行数;who表示:查阅Matlad内存变量名;whos表示:列出当前工作空间所有变量。
5、在Matlab命令窗口中运行命令Simulink 可以打开Simulink模块库浏览器窗口。
6、求矩阵行列式的函数:det ;求矩阵特征值和特征向量的函数eig 。
7、Matlab预定义变量ans表示:没有指定输出变量名;eps表示:系统精度
;nargin表示:函数输入参数的个数。
8、Matlab提供了两种方法进行程序分析和优化,分别为:通过Profiler工具优化和通过tic和toc函数进行优化。
9、建立结构数组或转换结构数组的函数为:struct ;
实现Fourier变换在Matlab中的对应函数为:fourier() ;Laplace变换的函数:Laplace() 。
10、MATLAB编写的程序文件称为M文件,M文件有脚本M文件和
函数M文件两种。
二、简答题(3’×4=12’)
1、简述MATLAB命令窗的主要作用?
答:
Matlab既可以运行命令也可以执行程序,在命令窗口中可以运行单独的命令也可以调用程序,相当方便,而编辑调试窗口和图像窗口都是程序运行结果展示窗口,可以很直观的对程序运行过程中出现的矩阵或者是变量等等进行监视。
在MATLAB 命令窗口中可以看到有一个“>>”,该符号为命令提示符,表示MATLAB正在处于准备状态。
在命令提示符后输入命令并按回车键后,MATLAB 就会解释执行所输入的命令,并在命令后面给出计算结果。
2、描述在Matlab中矩阵运算的含义,如A*B,A.*B表示什么运算过程?
答:
A*B表示符号矩阵乘法。
这是线性代数中定义的矩阵乘法,按照矩阵乘法规则进行;
A.*B表示对应元素相乘。
按参量A与B对应的元素进行相乘。
A与B必须为同型
阵列,或至少有一个为标量。
3、分析以下函数执行过程,回答问题:
function c = testarg1(a, b)
if (nargin == 1)
c = a .^ 2;
elseif (nargin == 2)
c = a + b;
end
如果用户使用一个参数调用函数testarg1,函数执行什么功能?如果使用两个参数调用函数testarg1,函数又执行什么?
答:
如果用户使用一个参数调用函数testargl,则函数计算输入值的平方,如果使用两个参数调用函数testargl,则函数计算输入值之和。
4、新建Simulink仿真模型文件的方法是什么?
答:
(1)在MA TLAB的命令窗口选择菜单“File”->“ New”->“Model”。
(2)在Simulink模块库浏览器窗口选择菜单“File”->“ New”->“Model”,或者单击
工具栏的新建文件图标。
(3)在Simulink模型窗口选择菜单“File”->“New”->“Model”,或者单击工具栏
的新建文件图标。
5、简述绘制二维图形的一般步骤?
答:曲线数据准备、选定图形窗及子图位置、调用二维曲线绘图命令、设置轴的范围、坐标分割路线、图形注释、图形的精细操作。
6、简述脚本M 文件和函数M 文件的区别?
答:
(1) 脚本M 文件是一串按用户意图排列而成的MATLAB 命令集合,不包含输入
参数,也不输出参数。
脚本M 文件运行后,所产生的所有变量都驻留在MATLAB 基本工作空间中,只要用户不使用clear 命令清除,且MA TLAB 命令窗口不关闭,这些变量将一直保存在MATLAB 基本工作空间中。
基本工作空间随MA TLAB 的启动而启动,只有关闭MA TLAB 时,基本空间才被删除。
脚本M 文件不包含输入参数和输出参数,通常由M 文件正文和注释部分构成。
文件正文主要实现功能,而注释是给出代码说明,便于阅读。
(2) 函数包含输入变量和输出变量,具有自己的函数工作空间,函数运行时获取
传递给它的变量,并返回结果输出变量。
函数内所创建的变量只驻留在函数工作空间,而且只在函数执行期间是存在,在函数运行结束时消失。
函数M 文件的第一行以function 开始,说明此文件是一个函数。
三、程序设计及分析(1-2每题4’,3-9每题5’,10题20’,共63’)
1、将下列字符矩阵S 转换为数字矩阵('1''2''3''4'S ⎡⎤=⎢
⎥⎣⎦)? 答:
>>str2num(S)
2、把矩阵A ,B 分别在垂直方向,水平方向连接,A=[1 2 3],B=[4 5 6]?
答:
>>C1=cat(1,A,B)%垂直方向连接
>>C2=cat(2,A,B)%水平方向连接
3、编程实现函数3
()25f x x x =--的根?
答:
>>p=[1 0 -2 -5]
>>r=roots(p)
4、编程实现一元二次方程20ax bx c ++=?
答:
>>f=sym(`a*x^2+b*x+c`)
>>solve(f) %以x 为自变量,求解方程f=0
5、求()1020x f x x =-+=在00.5x =附近的根?
答:
(1)建立函数文件funx.m.
function fx=funx(x)
fx=x-10.^x=2
(2)调用fzero 函数求根
Z=fzero(`funx`,0.5)
6、绘制函数图形:1sin(),2cos()y x y x ==。
要求:
(1)[]0,2x π∈
答:
x=0:pi/50:2*pi
(2)数据采样间隔/50π?
答:
y1=sin(x);y2=cos(x)
(3)设置网格;
答:
Figure(1);plot(x,y,’k*-’,x,y2,’bo-’);
(4)添加图形标注;
答:
grid on; %设置网格线
(5)两幅图叠加在一张图中。
答:
Legend(‘sin(x)’,’cos(x)’); %添加图形标注
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=xe (-x ²-y ²)的三维线图,其中x ∈[-2,2],y=x.
8、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及标注图例。
(要求附上运行结果)
答:
clf
x=0:pi/200:2#pi;
y1=sin(x);
y2=cos|(x);
zz=x(find(ads(y1-y2)<0.005))
z=min(zz)
piot(x,yl,`r-`,x,y2,`g-.`)
hold on
poit(zz,sin(zz),`≠`)
legcnd(`sin`,`cos`)
9、编写一个实现n 阶乘的函数。
答: N=20for
i=1:Ny=fac(i);
result=i;if y<1000continueendbreakend function y = fac(n)
y=1 for i=1:n
y=y*i;
end result=7
10、已知矩阵n=10+自己的真实学号,22
(),ij n n ij A a a i j ⨯==+,试编写一个m 文件完成以下问题:(要求附上程序运行结果)
(1)求A 的行列式;
(2)求A 的秩;
(3)画出A 的每个行向量的图形;
(4)查看A 的大小(即行、列数);
(5)计算A 的第11行与第11列的乘积;
(6)用一个二次函数去拟合A 的最后一行向量,画出图形;
(7)计算A 的每行的和,用条形图把该和向量描绘出来,加上轴标签和图形标题;
(8)计算A 的特征值和特征向量;
(9)计算A 的迹、逆和范数;
(10)查看*T A A 的右下角元素nn a 的值。
(T A 为A 的转置矩阵)。