海南大学MATLAB第1章习题解答.docx
《海南大学MATLAB第1章习题解答.docx》由会员分享,可在线阅读,更多相关《海南大学MATLAB第1章习题解答.docx(18页珍藏版)》请在冰豆网上搜索。
![海南大学MATLAB第1章习题解答.docx](https://file1.bdocx.com/fileroot1/2023-2/11/f252fe5b-22c5-4baa-8bf8-ef3d1c14bf4c/f252fe5b-22c5-4baa-8bf8-ef3d1c14bf4c1.gif)
海南大学MATLAB第1章习题解答
习题
1.熟悉MATLAB窗口,了解NewM-File、Toolboxes、Simulink、GUIDE、Profiler等按钮的用法。
解:
略,请自行练习。
2.什么是命令行输入方式?
它有什么特点?
解:
命令行输入方式即在CommandWindow窗口中直接输入所需命令。
其特点是无须执行编译和链接即可一次执行一个或一组命令,也即以即时交互的方式编写程序。
3.什么是M文件?
它有哪两种形式?
分别有什么特点?
解:
将一行行的MATLAB命令写在文件中,即M文件。
MATLAB是一门解释性的语言,因而M文件本身不能运行,必须有MATLAB环境的支持。
单击MATLAB窗口中的NewM-File按钮
,即可进入M文件的编辑器中。
M文件分为脚本(Script)和函数(Function)两种。
脚本文件是用户在CommandWindow窗口中输入的命令的简单集合,它的运行效果和用户在CommandWindow窗口中逐一的输入命令完全相同。
函数文件可以自带参数和返回值,一般比脚本文件复杂。
4.建立三路信号FDMA系统的Simulink仿真模型。
输入信号分三路,分别是正弦波、方波和锯齿波,经不同频率的双边带调制,送入加性高斯白噪声信道进行传输。
在接收端,用三个双边带解调器分别为三路信号解调。
通过示波器对原信号和解调后的信号进行比较观察。
解:
1)系统仿真图
输入信号分三路,分别是正弦波、方波和锯齿波,经不同频率的双边带调制,送入加性高斯白噪声信道进行传输。
在接收端,用三个双边带解调器分别为三路信号解调。
通过示波器对原信号和解调后的信号进行比较观察。
系统框图如图1.1所示。
图1.1FDMA系统框图
图1.1中,SignalGenerator1产生4Hz正弦波信号,SignalGenerator2产生0.5Hz方波信号,SignalGenerator3产生1Hz锯齿波信号。
Scope1中的波形如下:
图1.2正弦信号和解调后的波形
经放大的波形图表明,由于经零阶抽样保持,信号的局部呈现阶梯状;另外,解调后的正弦波幅度变小。
Scope2中的波形如下:
图1.3方波信号和调制解调后的波形
图1.1中,AnalogFilter中采用Butterworth滤波器。
由于它有一定的带限,故解调后的波形中表现出吉布斯现象。
另外,幅度也有所减小。
Scope3中的波形如下:
图1.4锯齿波信号和解调后的波形
在图1.4中的Port2中,同样可以观察到吉布斯现象。
另外,在图1.2、图1.3和图1.4中,由于模拟滤波器的传输时延,解调后的信号相比原信号都有一定的滞后。
下面,将运用SpectrumScope观察系统各处的频谱,并分析系统中模拟滤波器的作用。
2)AnalogFilterDesign滤波器的作用
发送端的三个滤波器是为了消除由零阶抽样保持产生的高频分量,并保证了信号在一定的通带内传输,彼此不发生干扰。
各滤波器的上下限截止频率计算方法是:
正弦波:
频率4Hz,带宽即4Hz,所以
矩形波:
频率0.5Hz,周期2s,频域为Sa函数包络的冲激序列,带宽4*
*0.5(取第三个零点为界),取为10,所以
锯齿波:
频率1Hz,频域为Sa函数的平方包络的冲激序列,带宽为4*
*0.5(取第一个零点为界),同样取为10,所以
接收端的三个滤波器是为了滤除信道中的高频噪声,并根据信号所处的频带,从信道中提取出相应的信号,以向解调器输出、进行解调。
三个滤波器的上下限截止频率和发送端对应滤波器相等。
发送端和接收端滤波器参数经过如上设置后,三路输出的波形图如图1.2到图1.4所示。
3)用SpectrumScope对各路信号进行频谱分析
让待观察信号先通过零阶抽样保持,再输入buffersize为512、bufferoverlap为256的SpectrumScope,仿真时Simulink自动显示出频谱图。
首先列出未经调制的正弦信号的频谱图(图1.5),然后是经调制的(图1.6),最后是解调的(图1.7)。
图1.5正弦信号频谱图图1.6已调正弦信号频谱图图1.7解调后正弦信号频谱图
以上三图是由切比雪夫窗显示的频谱图。
从图1.6和图1.7可以看出,在进行调制时,频谱中引入了直流分量,这是DSBAMModulatorPassband中引入的Inputoffset造成的。
接下来观察方波和锯齿波的情况:
图1.8中的各图分别是方波和锯齿波其本身、经调制和解调后的频谱图。
图1.8方波和锯齿波在调制解调过程中的频谱图
上图反映了整个频谱搬移、还原的过程。
另外,上图表明,模拟滤波器在解调前滤去了频谱中大部分旁瓣(尤其是对于方波的频谱),这正是时域上波形产生吉布斯现象的原因。
5.利用直接输入法和矩阵编辑器创建矩阵:
解:
1)直接输入法,在CommandWindow窗口中直接输入:
>>A=[1,3,5;2,4,6]
回车后,屏幕显示出:
A=
135
246
2)矩阵编辑器创建法,操作步骤如下:
(1)点击窗口左下角start按钮,在出现的菜单中选择DesktopTools,在出现的子菜单中选择Workspace,如图1.9所示。
图1.9菜单选择窗口
(2)创建一矩阵变量,左键双击,或单击右键,在点击“openselection”,打开矩阵编辑器,如图1.10所示。
图1.10MATLAB矩阵编辑器
(3)在VariableEditor窗口中,选择合适行数和列数,输入数值或表达式。
(4)输入完毕,保存矩阵文件为a.mat,关闭矩阵编辑器。
(5)在CommandWindow窗口中输入变量a,回车后出现a的具体阵列,表明矩阵已经创建。
6.创建矩阵:
,其中x=π/6,y=π/3。
解:
在CommandWindow窗口中直接输入:
>>x=pi/6,y=pi/3;
x=
0.5236
y=
1.0472
>>B=[sin(x),cos(y);cos(x),sin(y)]
B=
0.50000.5000
0.86600.8660
7.用矩阵编辑器创建矩阵a,使a具有如下矩阵形式。
解:
创建步骤如题5中所示,下面给出创建结果。
图1.11题1-7创建结果一
图1.12题1-7创建结果二
图1.13题1-7创建结果三
图1.14题1-7创建结果四
图1.15题1-7创建结果五
8.利用特殊矩阵函数创建3×3维零矩阵,产生4维的魔方阵,产生3×3维的单位阵。
解:
>>zeros(3,3)
ans=
000
000
000
9.已知矩阵
,提取矩阵B的第一行和第二行的第2、4、5个元素组成新矩阵B1,提取矩阵B的第三行和第一行的全部元素组成新矩阵B2,使矩阵B的第一行和第三行的第2,4个元素为0,最后标出矩阵B的第一行中小于5的元素。
解:
解题步骤如下:
1)利用矩阵编辑器创建已知矩阵B(略)
2)>>B1=B([1,2],[2,4,5])
B1=
0015
51416
>>B2=B([3,1],:
)
B2=
4013022
1701015
>>B([1,3],[2,4])=zeros
(2)
B=
1701015
23571416
4013022
101219213
11182529
>>L=B(1,:
)<5
L=
01110
10.已知矩阵a为3阶魔方阵,求sum(a)。
解:
>>a=magic(3),sum(a)
a=
816
357
492
ans=
151515
11.已知a为4阶魔方阵,令a+3赋值给b,a+b赋值给c,求b和c。
解:
>>a=magic(4),b=a+3,c=a+b
a=
162313
511108
97612
414151
b=
195616
8141311
1210915
717184
c=
357929
13252319
21171527
1131335
12.矩阵a为2×3的均匀分布随机矩阵,b为3×2的均匀分布随机矩阵,求a与b矩阵相乘,生成矩阵c。
解:
>>a=rand(2,3),b=rand(3,2),c=a*b
a=
0.81470.12700.6324
0.90580.91340.0975
b=
0.27850.9649
0.54690.1576
0.95750.9706
c=
0.90181.4199
0.84521.1126
13.已知A为3×3均匀分布随机矩阵,B为3×2均匀分布随机矩阵,C为2×3均匀分布随机矩阵,求Q=c*a^2*b。
解:
>>a=rand(3),b=rand(3,2),c=rand(2,3),Q=c*a^2*b
a=
0.04620.69480.0344
0.09710.31710.4387
0.82350.95020.3816
b=
0.76550.4898
0.79520.4456
0.18690.6463
c=
0.70940.27600.6551
0.75470.67970.1626
Q=
1.42371.2051
1.06780.9204
14.已知A为4×4均匀分布随机矩阵,B为全是“1”的4元列向量,分别利用求逆矩阵和矩阵除法解方程组,比较计算后的结果。
解:
>>a=rand(4)%产生(4×4)均匀分布随机矩阵
a=
0.11900.58530.50600.5472
0.49840.22380.69910.1386
0.95970.75130.89090.1493
0.34040.25510.95930.2575
>>b=ones(4,1)%产生全为1的4元列向量
b=
1
1
1
1
>>x1=inv(a)*b%矩阵求逆解方程组
x1=
2.0257
-1.7991
-0.1154
3.4178
>>x2=a\b%矩阵除法解方程组
x2=
2.0257
-1.7991
-0.1154
3.4178
15.指出下列矩阵函数所实现的具体运算。
A=rand(5),B=rank(A),C=eig(A),D=sqrtm(A),E=det(A)
解:
A=rand(5)%生成矩阵A,A为5×5均匀分布随机矩阵
B=rank(A)%求矩阵A的秩
C=eig(A)%求方阵A的特征值和特征向量
D=sqrtm(A)%求矩阵A的平方根
E=det(A)%求方阵A的行列式
16.利用MATLAB逻辑运算算符实现
运算,假设a=1,b=0。
解:
>>a=1,b=0,c=a|b&b
a=
1
b=
0
c=
1
17.利用MATLAB的roots函数求
的根。
解:
>>p=[1,4,10,16,17,12]
p=
1410161712
>>x=roots(p)
x=
-1.6506
-1.0000+1.4142i
-1.0000-1.4142i
-0.1747+1.5469i
-0.1747-1.5469i
18.画出函数
在t区间为[0,4π]内的曲线。
解:
解题步骤为:
1)在MATLAB主界面下点击fileÒnewÒblankM-file,
2)在新建的M文件里输入如下程序段:
t=0:
pi/50:
4*pi;
y0=exp(-t/6);
y=exp(-t/6).*cos(3*t);
plot(t,y,'-r',t,y0,':
b',t,-y0,':
b')
3)程序编写完成以后,在主菜单栏中选择DebugÒSaveFileandRun,如果编译过程中出现错误,则在MATLAB的commandwindow中显示错误行;若没有,即可显示运行结果,如图1.16所示。
图1.16第1-18题运行结果示意图
19.画出一个幅度为2,频率为4Hz,相位为
的正弦信号。
解:
解题步骤为:
1)创建新的M文件(操作与题18同),
2)在M文件中输入如下程序段:
A=2;
f=4;
phi=pi/3;
w0=2*pi*f;
t=0:
0.01:
1;
x=A*sin(w0*t+phi);
plot(t,x);
3)编译、显示结果,如图1.17所示。
图1.17第1-19题运行结果示意图