离散时间信号的MATLAB仿真

简介: 离散时间信号的MATLAB仿真

程序Program1_1是用MATLAB对一个正弦信号进行仿真的程序


% Program1_1
% This program is used to generate a discrete-time sinusoidal signal and draw its plot
clear,                   % Clear all variables 清除所有变量
close all,                % Close all figure windows 关闭所有图形窗口
n = -20: 20;              % Specify the interval of time指定时间间隔
w0 = 0.2*pi;              % Specify the angular frequency指定角频率
x = sin(w0*n);            % Generate the signal 生成的信号
stem(n,x,'k.')             % Open a figure window and plot  打开图形窗口并绘制图形
title('Sinusoidal signal x[n]')
xlabel('Time Index n')

绘制如图所示

dd77bebdbdee4211b50833070fe0a9dd.png


程序Program1_2绘制了不同角频率时的正弦信号的波形

clear,close all,  
n = -20: 20; 
w0 = 0*pi; w1 = 0.1*pi; w2 = 0.2*pi; w3 = 0.8*pi; w4 = 0.9*pi; w5 = 1*pi; 
w6 = 1.1*pi; w7 = 1.2*pi;
x0 = cos(w0*n); x1 = cos(w1*n); x2 = cos(w2*n); x3 = cos(w3*n); x4 = cos(w4*n); 
x5 = cos(w5*n); x6 = cos(w6*n); x7 = cos(w7*n);
subplot(421), stem(n,x0,'k.') ,ylabel('w0=0')
subplot(422), stem(n,x1,'k.') ,ylabel('w0=0.1*pi')
subplot(423), stem(n,x2,'k.') ,ylabel('w0=0.2*pi')
subplot(424), stem(n,x3,'k.') ,ylabel('w0=0.8*pi')
subplot(425), stem(n,x4,'k.') ,ylabel('w0=0.9*pi')
subplot(426), stem(n,x5,'k.') ,ylabel('w0=1*pi')
subplot(427), stem(n,x6,'k.') ,ylabel('w0=1.1*pi')
subplot(428), stem(n,x7,'k.') ,ylabel('w0=1.2*pi')

绘制图像如图

33d29c83ff8f48bcbd91e3a5a4ac2180.png


程序Program1_3用来仿真下面形式的离散时间信号


% Program1_3
% This program is used to generate a discrete-time sequence
% and draw its plot
clear,                   % Clear all variables
close all,                % Close all figure windows
n = -5:5;                % Specify the interval of time, the number of points of n is 11. 指定时间间隔,n的点数为11。  
x = [0, 0, 0, 0, 0.1, 1.1, -1.2, 0, 1.3, 0, 0];   % Generate the signal  生成的信号
stem(n,x,'.')             % Open a figure window and draw 打开图形窗口并绘制
the plot of x[n]
grid on,
title ('A discrete-time sequence x[n]')
xlabel ('Time index n')
% Program1_4
% This program is used to generate a discrete-time sinusoidal signal
% and draw its plot
clear,                    % Clear all variables
close all,                 % Close all figure windows
n = -5:5;                 % Specify the interval of time
x = [zeros(1,4), 0.1, 1.1, -1.2, 0, 1.3, zeros(1,2)];     % Generate the sequence
stem (n,x,'.')              % Open a figure window and draw the plot of x[n]
grid on,
title ('A discrete-time sequence x[n]')
xlabel ('Time index n')

x = [zeros(1,4) x zeros(1, 2)] 来实现 一行四个零,一行两个零


相关文章
|
7月前
|
数据可视化
基于MATLAB的OFDM调制发射与接收仿真
基于MATLAB的OFDM调制发射与接收仿真
|
6月前
|
5G
基于IEEE 802.11a标准的物理层MATLAB仿真
基于IEEE 802.11a标准的物理层MATLAB仿真
350 0
|
6月前
|
算法
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
|
6月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
7月前
|
传感器 算法 数据挖掘
基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合
基于协方差交叉(CI)的多传感器融合算法,通过MATLAB仿真对比单传感器、SCC与CI融合在位置/速度估计误差(RMSE)及等概率椭圆上的性能。采用MATLAB2022A实现,结果表明CI融合在未知相关性下仍具鲁棒性,有效降低估计误差。
324 15
|
6月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
7月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
468 2
|
7月前
|
监控
基于MATLAB/Simulink的单机带负荷仿真系统搭建
使用MATLAB/Simulink平台搭建一个单机带负荷的电力系统仿真模型。该系统包括同步发电机、励磁系统、调速系统、变压器、输电线路以及不同类型的负荷模型。
1355 5
|
7月前
|
机器学习/深度学习 边缘计算 算法
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
319 0
|
6月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
579 0

热门文章

最新文章