matlab综合大作业附详细答案.docx
- 文档编号:23190735
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:15
- 大小:175.07KB
matlab综合大作业附详细答案.docx
《matlab综合大作业附详细答案.docx》由会员分享,可在线阅读,更多相关《matlab综合大作业附详细答案.docx(15页珍藏版)》请在冰豆网上搜索。
matlab综合大作业附详细答案
《MATLAB语言及应用》期末大作业报告
1.数组的创建和访问(20分,每小题2分):
1)利用randn函数生成均值为1,方差为4的5*5矩阵A;
实验程序:
A=1+sqrt(4)*randn(5)
实验结果:
A=
2)将矩阵A按列拉长得到矩阵B;
实验程序:
B=A(:
)
实验结果:
B=
3)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;
实验程序:
C=[A(2,2),A(2,4);A(3,2),A(3,4)]
实验结果:
C=
4)寻找矩阵A中大于0的元素;]
实验程序:
G=A(find(A>0))
实验结果:
G=
5)求矩阵A的转置矩阵D;
实验程序:
D=A'
实验结果:
D=
6)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;
实验程序:
E=flipud(fliplr(A))
实验结果:
E=
7)删除矩阵A的第2列和第4列得到矩阵F;
实验程序:
F=A;
F(:
[2,4])=[]
实验结果:
F=
8)求矩阵A的特征值和特征向量;
实验程序:
[Av,Ad]=eig(A)
实验结果:
特征向量Av=
+-
+-
-+
+-
特征值Ad=
0000
0+000
00-00
0000
0000
9)求矩阵A的每一列的和值;
实验程序:
lieSUM=sum(A)
实验结果:
lieSUM=
10)求矩阵A的每一列的平均值;
实验程序:
average=mean(A)
实验结果:
average=
2.符号计算(10分,每小题5分):
1)求方程组
关于
的解;
实验程序:
S=solve('u*y^2+v*z+w=0','y+z+w=0','y,z');
y=S.y,z=S.z
实验结果:
y=
[-1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))-w]
[-1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))-w]
z=
[1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))]
[1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))]
2)利用dsolve求解偏微分方程
的解;
实验程序:
[x,y]=dsolve('Dx=y','Dy=-x')
实验结果:
x=-C1*cos(t)+C2*sin(t)
y=C1*sin(t)+C2*cos(t)
3.数据和函数的可视化(20分,每小题5分):
1)二维图形绘制:
绘制方程
表示的一组椭圆,其中
;
实验程序:
t=0:
*pi:
2*pi;
fora=:
:
;
x=a*cos(t);
y=sqrt(25-a^2)*sin(t);
plot(x,y)
holdon
end
实验结果:
2)利用plotyy指令在同一张图上绘制
和
在
上的曲线;
实验程序:
x=0:
:
4;
y1=sin(x);
y2=10.^x;
[ax,h1,h2]=plotyy(x,y1,x,y2);
set(h1,'LineStyle','.','color','r');
set(h2,'LineStyle','-','color','g');
legend([h1,h2],{'y=sinx';'y=10^x'});
实验结果:
3)用曲面图表示函数
;
实验程序:
x=-3:
:
3;
y=-3:
:
3;
[X,Y]=meshgrid(x,y);
Z=X.^2+Y.^2;
surf(X,Y,Z)
实验结果:
4)用stem函数绘制对函数
的采样序列;
实验程序:
t=-8:
:
8;
y=cos(pi.*t/4);
stem(y)
实验结果:
4.设采样频率为Fs=1000 Hz,已知原始信号为
,由于某一原因,原始信号被白噪声污染,实际获得的信号为
,要求设计出一个FIR滤波器恢复出原始信号。
(20分)
实验程序:
t=0:
:
;
x1=sin(2*pi*80*t)+2*sin(2*pi*150*t);
x2=randn(size(t));%添加随机噪声;
x=x1+x2;
A=[1];%滤波器分母系数;
B=[];%滤波器分子系数;
y=filter(B,A,x);
plot(t,x,':
',t,y,'-');
legend('带有噪声的信号波形','FIR滤波后信号波形');
t=0:
:
200;
x=sin(2*pi*80*t)+2*sin(2*pi*150*t)+randn(size(t));
n=3;
f=9;
[b,g]=sgolay(n,f);
halfwin=((f+1)/2)-1;
forn=(f+1)/2:
996-(f+1)/2;
SG0(n)=dot(g(:
1),x(n-halfwin:
n+halfwin));
end
subplot(2,1,1);plot(x(1:
length(SG0)));
subplot(2,1,2);plot(SG0);
实验结果:
5.人体心电图测量信号在测量的过程中经常会受到工业高频干扰,所以必须经过低通滤波处理后,才能判断心脏功能的有用信息。
下面是一组实际心电图信号采样的样本x(n),其中存在高频干扰。
试在实验中,通过MATLAB程序,以x(n)作为输入序列,滤出其中的干扰成分。
x(n)={-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,-2,8,12,12,10,6,6,4,0,0,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0}。
(20分,每小题4分))
1)绘制原数据图形;
2)设计巴特沃斯低通滤波器并绘制出其幅频响应曲线;
3)用设计的滤波器对原数据进行滤波;绘制滤波后的数据图;
4)绘制原数据功率谱图;
5)绘制滤波后的数据功率谱图。
解:
(1)实验程序:
xn=[-4-20-4-6-4-2-4-6-6-4-4-6-6-261280-16-38-60-84-90-66-32-4-2812121066400000-2-200-2-2-2-20];
N=49;
n=0:
N-1;
stem(n,xn);%绘制原数据图形
title('原数据图形');
实验结果:
(2)实验程序:
N_filter=10;fs_filter=5000;%20阶滤波器,采样频率5000Hz
wn_filter=1000/(fs_filter/2);%截止频率1000Hz
[b,a]=butter(N_filter,wn_filter);
freqz(b,a);%画出频率特性
title('低通滤波器频率特性');
实验结果:
(3)实验程序:
yn=filter(b,a,xn);%滤波
stem(n,yn);
title('滤波后的数据图');
实验结果:
(4)实验程序:
Nfft=1024;
periodogram(xn,window,nfft,fs_filter);
%绘制原数据功率谱图
实验结果:
(5)实验程序:
periodogram(yn,window,nfft,fs_filter);
%绘制滤波后数据功率谱图
实验结果:
6.已知x(n)=[2101],计算如下表达式:
(10分)
1)计算
的6点DFT结果
;
实验程序:
xn=[2101];
Xk=fft(xn,6)
实验结果:
Xk=0++
2)已知
,求
;
实验程序:
实验结果:
3)已知
,求
;
实验程序:
实验结果:
4)已知
,求
;
实验程序:
实验结果:
5)已知
=
,求
;
实验程序:
实验结果:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 综合 作业 详细 答案