matlab时域离散信号与系统,实验一离散时间信号与系统的时域分析报告.ppt

一、实验目的 二、实验原理 离散时间信号 离散时间信号只在某些离散的瞬时给出函数值,而在其他时刻无定义。它是时间上不连续按一定先后次序排列的一组数的集合,称为时间序列,用x(n)表示,n取整数代表时间的离散时刻。 在matlab中用向量来表示一个有限长度的序列。 序列的类型 为了分析的方便,在数字信号处理中规定了一些基本的序列。 单位采样序列 function [x,n]=impseq(n1,n2,n0) n=[n1:n2]; x=[(n-n0)==0]; 单位采样序列的另一种生成方法 n0=-2; n=[-10:10]; nc=length(n); x=zeros(1,nc); for i=1:nc if n(i)==n0 x(i)=1 end end stem(n,x) 单位阶跃序列 function [x,n]=stepseq(n1,n2,n0) n=[n1:n2]; x=[(n-n0)>=0]; 实数指数序列 x(n)=an (运算符“.^”) n=[0:10]; x=0.9.^n; stem(n,x) 复数指数序列 n=[-10:10]; alpha=-0.1+0.3*j; x=exp(alpha*n); real_x=real(x); image_x=imag(x); mag_x=abs(x); phase_x=angle(x); subplot(2,2,1); stem(n,real_x) subplot(2,2,2); stem(n,image_x) subplot(2,2,3); stem(n,mag_x) subplot(2,2,4); stem(n,phase_x) 正、余弦序列 随机序列 rand(1,N)产生其元素在[0,1]之间均匀分布长度为N的随机序列 randn(1,N)产生均值为0,方差为1,长度为N的高斯随机序列 周期序列 如果序列x(n)=x(n+N) 如何生成周期序列 1、 将一个周期复制p次; 2、借助矩阵运算、matlab下标能力。先生成一个包含 p列x(n)值的矩阵,然后用结构(:)来把p列串接成一个 长周期序列。因为这个结构只能用于列向,最后还需要 做矩阵转置获得所需序列。 信号运算 信号时移 信号倒置 信号加 信号乘 信号微分 信号积分等 序列运算 在matlab中进行序列运算要求参与运算的序列的长度要一样,如果出现长度不一样或者长度相同但采样位置不同时,不能直接利用加减运算符,利用matlab中的下标运算使其具有相同的长度。 移位 function [y,n]=sigshift(x,m,n0) n=m+n0; y=x; 例: 求出下列波形 x1(n)=2x(n-5)-3x(n+4) 离散卷积的计算公式如下: 序列x(n)、h(n) 可以是有限长或无限长,但为了在计算机上绘图观察方便,我们主要讨论有限长序列。如果x(n) 和h(n)长度分别为M和N,则响应序列y(n) 也为有限长序列,其长度为 L=M+N-1 。于是,上式可以“形象”地描述为两个有限长序列的反褶、移位、相乘、累加过程,这使计算机编程十分方便。 卷积函数conv(a,b) 已知 试求卷积C(t)=f1(t)*f2(t),并绘制出f1、f2、 及卷积以后的波形。 p=0.1; t1= [0:p:1]; f1=t1.*(t1>0); t2= [-1:p:2]; f2=t2.*exp(-t2).*(t2>=0)+exp(t2).*(t2<0); [y,ny]=conv_m(f1,t1,f2,t2,p); Subplot(3,1,1); stem(t1,f1) Subplot(3,1,2); stem(t2,f2) Subplot(3,1,3); stem(ny,y) 练习题 1、利用zeros和ones函数来产生单位阶跃序列。 函数格式: zeros(1,n) ones(1,n) n为序列长度。 2、已知一个IIR数字低通滤波器的系统函数公式为 输入一个矩形信号序列 x=square(n/5) (-2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值