MATLAB产生离散信号

Matlab产生离散信号

常见离散信号

冲击信号

n = -5:5;
x = n == 0;% 当n为0时,x的值为1
stem(n, x, ‘filled‘);
axis([-5 5 0 1.1*max(x)]);%规定坐标轴的范围
xlabel(‘时间(n)‘);ylabel(‘幅度(n)‘);

冲击信号

阶跃信号

n = -2:8;
x = n >= 0; % 当n大于等与零时,其值为1
stem(n, x, ‘filled‘);
axis([-4, 4, 0, 1.1*max(x)]);
title(‘阶跃信号‘);
xlabel(‘时间(n)‘);ylabel(‘幅度(n)‘);

阶跃信号

实指数序列

n1=-10; n2=10;
a1=0.5; a2=2;
na1=n1:0;
x1 = a1.^na1;
na2 = 0:n2;
x2 = a2.^na2;
subplot(2,2,1);
plot(na1,x1);
title(‘实指数原信号(a<1)‘);
subplot(2,2,3);
stem(na1,x1,‘filled‘);
title(‘实指数序列(a<1)‘);
subplot(2,2,2);
plot(na2,x2);
title(‘实指数原信号(a>1)‘);
subplot(2,2,4);
stem(na2,x2,‘filled‘);
title(‘实指数序列(a>1)‘);

实数序列

复指数序列

n = -10:0.2:10;
x = exp((-0.2+1j*0.6*pi)*n);
subplot(2,2,1), plot(n, real(x));% real画出实部
subplot(2,2,3), stem(n, real(x), ‘filled‘);
subplot(2,2,2), plot(n, imag(x)); % imag画出虚部
subplot(2,2,4), stem(n, imag(x), ‘filled‘);

复指数信号

随机信号

tn=0:0.2:15;
N=length(tn);
x=rand(1,N);
subplot(2,1,1);
plot(tn,x);

tn=0:0.5:15;
N=length(tn);
y=rand(1,N);
subplot(2,1,2);
stem(tn,y);

随机信号

时间: 2024-08-08 21:56:02

MATLAB产生离散信号的相关文章

基于MATLAB的离散小波变换

申明,本文非笔者原创,原文转载自:  基于Matlab的离散小波变换         http://blog.sina.com.cn/s/blog_725866260100ryh3.html 简介 在数字图像处理中,需要将连续的小波及其小波变换离散化.一般计算机实现中使用二进制离散处理,将经过这种离散化的小波及其相应的小波变换成为离散小波变换(简称DWT).实际上,离散小波变换是对连续小波变换的尺度.位移按照2的幂次进行离散化得到的,所以也称之为二进制小波变换. 虽然经典的傅里叶变换可以反映出信

【转帖】MATLAB对语音信号加随机噪声及去噪程序

MATLAB对语音信号加随机噪声及去噪程序 (2011-01-28 23:26:51) %对语言信号做原始的时域波形分析和频谱分析 [y,fs,bits]=wavread('C:\Documents and Settings\Administrator\桌面\cuocuo.wav'); %  sound(y,fs)      % 回放语音信号 n=length(y)  %选取变换的点数 y_p=fft(y,n);      %对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n;   %

MATLAB信号与系统分析(四)&mdash;&mdash;离散信号与系统的复频域分析及MATLAB实现

一.系统的z变换和反变换 1.利用部分分式展开求解逆Z变换: 2.例子 3.Z变换的MATLAB函数 clear all f=sym('cos(a*k)'); F=ztrans(f) F=sym('z^2/((1+z)*(z-2))'); f=iztrans(F) 二.系统的零极点分布及其稳定性 %求H(z)=(z^3+2z)/(z^4+3(z^3)+2(z^2)+2z+1)的零极点及其分布图 %求H(z)=(1+z^(-1))/(1+z^-1/2+z^-2/4+1)的零极点及其分布图 %采用r

[转] Matlab中给信号加高斯白噪声的方法

MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN.WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声. 1. WGN:产生高斯白噪声 y = wgn(m,n,p) 产生一个m行n列的高斯白噪声的矩阵,p以dBW为单位指定输出噪声的强度. y = wgn(m,n,p,imp) 以欧姆(Ohm)为单位指定负载阻抗. y = wgn(m,n,p,imp,state) 重置RANDN的状态. 在数值变量后还可附加一些标志性参数: y = wgn(

时域中的离散信号和系统

单位脉冲序列的m文件: function [x,n] = impseq(n0,n1,n2) if ((n0 < n1) | (n0 > n2) | (n1 > n2)) error('参数必须满足 n1 <= n0 <= n2') end n = [n1:n2]; x = [(n-n0) == 0]; 调用例如: [x,n] = impseq(2,0,5); %表示从0开始共6个点,第二个点为1. stem(n,x); 单位阶跃序列的m文件: function [x,n] =

【MATLAB】画信号频谱的子函数

输入信号序列和采样率,该子函数可以画出该信号的频谱图. function [f,spec,NFFT]=spec_fft_plot(sample,L,Fs) % 输入数据说明: % sample:信号序列: % L:信号序列的长度: % Fs:该信号的采样频率. % 输出数据说明: % f:频率: % spec:频谱图纵坐标: NFFT = 2^nextpow2(L); % NFFT = L; spec=abs(fft(sample,NFFT)./L); flag = 1; if flag ==1

MATLAB信号与系统分析(二)&mdash;&mdash;离散时间信号与系统的时域分析

一.离散信号的表示 1.一个离散信号需要用两个向量来表示: (1)离散信号的幅值 (2)离散信号的位置信息 2.用MATLAB实现离散信号的可视化 (1)不能利用符号运算来表示 (2)绘制离散信号一般采用stem命令. (3)x(n)--stem(n,x) 3.一个demo: clear all; x=[-1,2,3,3,5,-4]; n=[-2,-1,0,1,2,3]; figure(1) stem(n,x),axis([-2.5,3.5,-4.5,5.5]) 二.一些常用的离散信号 1.单位

MATLAB仿真中连续和离散的控制器有何区别?

matlab系统同时提供连续和离散的控制器和对象的目的是:在降低用户使用复杂程度的同时提高仿真精度.仿真速度和应用的广泛性. 仿真步长和求解精度的概念对于理解这个问题至关重要. 首先是步长,步长和求解精度存在一对矛盾,步长的选择是仿真消耗的时间和求解精度要求的折中.计算机只能一步一步计算你的电路或者其他方程,例如你输入一个连续的信号,计算机在一个时刻仅仅会采集这个信号上的一个点,然后把这个点带入你的控制器数学方程中,求出电路方程的一个解,根据这个解得到系统的输出.因此,仿真波形其实是一个个的点聚

一维信号频谱图仿真——matlab

程序1: %在MATLAB中是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当采样时间间隔足够小时,这些离散的采样值就能较好地近似出连续信号,matlab中连续信号的显示实际上还是离散信号的显示,只是取样点特别 %多的时候,用线连接起来,显示出来的图形就比较圆滑,接近连续信号:如果取样点特别少,连接起来就会变成折线: clear all; %这个其实可以没有,只不过以前出过问题,现在就加上! N=1024; %这个是你举得信号的点数,随便你了 fs=16000; %这个是抽样频率,记得要