数字信号处理共轭对称共轭反对称.docx

上传人:b****6 文档编号:8157097 上传时间:2023-01-29 格式:DOCX 页数:13 大小:288.17KB
下载 相关 举报
数字信号处理共轭对称共轭反对称.docx_第1页
第1页 / 共13页
数字信号处理共轭对称共轭反对称.docx_第2页
第2页 / 共13页
数字信号处理共轭对称共轭反对称.docx_第3页
第3页 / 共13页
数字信号处理共轭对称共轭反对称.docx_第4页
第4页 / 共13页
数字信号处理共轭对称共轭反对称.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

数字信号处理共轭对称共轭反对称.docx

《数字信号处理共轭对称共轭反对称.docx》由会员分享,可在线阅读,更多相关《数字信号处理共轭对称共轭反对称.docx(13页珍藏版)》请在冰豆网上搜索。

数字信号处理共轭对称共轭反对称.docx

数字信号处理共轭对称共轭反对称

xxxx大学实验报告

学生姓名_xxx_学号_xxxxxxx_

年级班级_xxxxxxx_实验项目_xxxxxxxx_

实验时间_xxxxxxxxx_

实验二

一、实验目的:

1.充分熟悉复指数函数find、sigshift、sigfold函数的使用;

2.熟悉序列的加、减、乘、除、移位、折叠的计算;

3.能够画出结果的图形。

二、实验步骤:

1.用help查找find、sigshift、sigfold函数的使用情况;

2.编辑并生成函数sigadd.m(序列相加)

function[y,n]=sigadd(x1,n1,x2,n2)

%实现y(n)=x1(n)+x2(n)

%[y,n]=sigadd(x1,n1,x2,n2)

%y=在包含n1和n2的n点上求序列和

%x1=在n1上的第一序列

%x2=在n2上的第二序列(n2可与n1不等)

n=min(min(n1),min(n2)):

max(max(n1),max(n2));%y(n)的长度

y1=zeros(1,length(n));y2=y1;%初始化

y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;%具有y的长度的x1

y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;%具有y的长度的x2

y=y1+y2;%序列相加.

3.编辑并生成函数sigmult.m(序列相乘)

function[y,n]=sigmult(x1,n1,x2,n2)

%实现y(n)=x1(n)*x2(n)

%[y,n]=sigmult(x1,n1,x2,n2)

%y=在n区间上的乘积序列,n包含n1和n2

%x1=在n1上的第一序列

%x2=在n2上的第二序列(n2可与n1不等)

n=min(min(n1),min(n2)):

max(max(n1),max(n2));%y(n)的长度

y1=zeros(1,length(n));y2=y1;%初始化

y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;%具有y的长度的x1

y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;%具有y的长度的x2

y=y1.*y2;%序列相乘

4.编辑并生成函数sigshift.m(序列移位)

function[y,n]=sigshift(x,m,n0)

%实现y(n)=x(n-n0)

%[y,n]=sigshift(x,m,n0)

n=m+n0;y=x;

5.编辑并生成函数sigfold.m(序列折叠)

function[y,n]=sigfold(x,n)

%实现y(n)=x(-n)

%[y,n]=sigfold(x,n)

y=fliplr(x);n=-fliplr(n);

6.编辑并生成实现两序列相乘和相加程序

clc;

clear;

x1=[0,1,2,3,4,3,2,1,0];n1=-2:

6;

x2=[2,2,0,0,0,-2,-2];n2=2:

8;

[y1,n]=sigmult(x1,n1,x2,n2);

[y2,n]=sigadd(x1,n1,x2,n2);

subplot(2,2,1);stem(n1,x1);title('序列x1')

xlabel('n');ylabel('x1(n)');

subplot(2,2,2);stem(n2,x2);title('序列x2')

xlabel('n');ylabel('x2(n)');

subplot(2,2,3);stem(n,y1);title('两序列相乘')

xlabel('n');ylabel('y1(n)');

subplot(2,2,4);stem(n,y2);title('两序列相加')

xlabel('n');ylabel('y2(n)');

运行以上程序得到的图形:

体会:

相加或相乘时,两序列尺度要保持一致。

7.改变坐标尺度重新画图,使图形更加直观;

8.在命令窗口打出x1,x2,y1,y2的值,并贴近实验报告;

9.编辑并生成实现序列移位和折叠程序

x1=[0,1,2,3,4,3,2,1,0];n1=-2:

6;

[y1,n2]=sigshift(x1,n1,2);

[y2,n3]=sigfold(x1,n1);

subplot(3,1,1);stem(n1,x1);title('序列x1')

xlabel('n');ylabel('x1(n)');

subplot(3,1,2);stem(n2,y1);title('序列移位')

xlabel('n');ylabel('y1(n)');

subplot(3,1,3);stem(n3,y2);title('序列折叠')

xlabel('n');ylabel('y2(n)');

 

运行以上程序得到的图形:

体会:

折叠和移位要注意坐标尺度,注意移位和折叠的顺序对最终结果的影响。

10.在命令窗口打出y1,y2,n2,n3的值,并贴近实验报告;

11.画出y3=2x1(2-n),y4=x1(3n)的图形,在命令窗口打出y3,y4的值,并贴近实验报告;

运行以下程序得到y3:

x1=[0,1,2,3,4,3,2,1,0];n1=-2:

6;

[y1,n2]=sigfold(x1,n1);

[y2,n3]=sigshift(x1,n2,-2);

y3=2*y2;

subplot(2,2,1);stem(n1,x1);title('序列x1')

xlabel('n');ylabel('x1(n)');

subplot(2,2,2);stem(n2,y1);title('序列折叠')

xlabel('n');ylabel('y1(n)');

subplot(2,2,3);stem(n3,y2);title('序列移位')

xlabel('n');ylabel('y2(n)');

subplot(2,2,4);stem(n3,y3);title('序列y3')

xlabel('n');ylabel('y3(n)');

体会:

要能够灵活运用移位和折叠,先移位后折叠,先折叠后移位得到的结果会不同,这就要注意确定好采用变化的方式,是先移位还是先折叠,之后把握好移位或折叠后坐标尺度的变化即可。

当然,此程序也可改为先移位后折叠的方式,只要把最关键的两句程序改为[y1,n2]=sigshift(x1,n1,2);[y2,n3]=sigfold(x1,n2);再改一下标题title即可。

 

运行以下程序得到y4:

x1=[0,1,2,3,4,3,2,1,0];

n1=-2:

6;

n2=n1/3;

n3=fix(-2/3):

fix(6/3);

n3

m=find(n1/3==fix(n1/3));

m

y4=x1(m)

subplot(3,1,1);stem(n1,x1);title('序列x1')

xlabel('n');ylabel('x1(n)');

subplot(3,1,2);stem(n2,x1);title('变化后')

xlabel('n');ylabel('x1(n)');

subplot(3,1,3);stem(n3,y4);title('序列y4')

xlabel('n');ylabel('y4(n)');

体会:

此段程序最关键在于n3=fix(-2/3):

fix(6/3);n3m=find(n1/3==fix(n1/3));m这几句程序的掌握,即选出除三后为整的n3及第几项满足除后为整的条件的值。

y3,y4的值:

实验三

一、实验目的:

4.充分熟悉复指数函数exp的使用;

5.熟悉复指数函数的实部、虚部、振幅、相位的计算;

6.能够画出复指数函数实部、虚部、振幅、相位的图形。

二、实验步骤:

10.用help查找exp函数的使用情况;

11.编辑并生成函数exp.m(单位脉冲序列)

n=[0:

1:

20];

alpha=-0.1+0.5j;

x=exp(alpha*n);

subplot(2,2,1);

stem(n,real(x));

title('实部');

xlabel('n')

subplot(2,2,3);

stem(n,imag(x));

title('虚部');

xlabel('n')

subplot(2,2,2);

stem(n,abs(x));

title('振幅');

xlabel('n')

subplot(2,2,4);

stem(n,(180/pi)*angle(x));

title('相位');

xlabel('n')

12.先运行exp.m,画出图形,分析图形的结果。

13.当alpha=-0.1+0.5j时,计算x的共轭对称分量和共轭反对称分量,也分实部、虚部、振幅、相位分别画图。

 

共轭对称分量

共轭反对称分量

 

14.再改变alpha=1.5,alpha=-2,画出图形,分析图形的结果。

体会:

当alpha不含虚部时,复指数序列的虚部为零,相位也为零,而实部与振幅相等。

 

15.思考题:

试用公式表示x=exp(alpha*n)的实部、虚部、振幅、相位。

X=e(a+bj)n=eanebnj=ean(cos(bn)+jsin(bn))

则eancos(bn)为实部,eanjsin(bn)为虚部,ean为振幅,bn为相位。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1