用 MATLAB 产生单位抽样序列、单位阶跃序列、矩形序列、正弦序列和复指数序列

matlab 复制代码
%% 单位抽样(脉冲)序列(冲激函数)
% 参数设置
n = -10:10; % 定义时间范围
delta = (n == 0); % 生成单位抽样序列

% 绘图
figure;
stem(n, delta);
title('单位抽样序列');
xlabel('n');
ylabel('delta[n]');

%% 单位阶跃序列
% 参数设置
n = -10:10; % 定义时间范围
u = (n >= 0); % 生成单位阶跃序列

% 绘图
figure;
stem(n, u);
title('单位阶跃序列');
xlabel('n');
ylabel('u[n]');

%% 矩形序列
% 参数设置
n = -10:10; % 定义时间范围
rect = (n >= -5) & (n <= 5); % 生成矩形序列

% 绘图
figure;
stem(n, rect);
title('矩形序列');
xlabel('n');
ylabel('rect[n]');

%% 正弦序列
% 参数设置
n = 0:50; % 定义时间范围
A = 1; % 振幅
f = 0.1; % 频率
sin_seq = A * sin(2 * pi * f * n); % 生成正弦序列

% 绘图
figure;
stem(n, sin_seq);
title('正弦序列');
xlabel('n');
ylabel('sin[2πfn]');

%% 复指数序列
% 参数设置
n = 0:50; % 定义时间范围
a = 0.9; % 幅度衰减系数
f = 0.1; % 频率
complex_seq = a.^n .* exp(1i * 2 * pi * f * n); % 生成复指数序列

% 绘图
figure;
stem(n, real(complex_seq)); % 绘制实部
hold on;
stem(n, imag(complex_seq)); % 绘制虚部
hold off;
title('复指数序列');
xlabel('n');
ylabel('Re & Im');
legend('实部','虚部');

注:stem 函数是 MATLAB 中绘制离散时间序列和其他离散数据的有用工具,特别是在信号处理和通信系统分析中。

相关推荐
fzil0011 分钟前
让 AI 自己协作 —— 多智能体(Swarm)系统的设计与实现
java·开发语言·人工智能·ubuntu
Mem0rin5 分钟前
[Java/数据结构]二叉树练习题几则
java·开发语言·数据结构
2301_764150566 分钟前
CSS如何用Less实现多维度的样式复用_结合混合与继承技术实现
jvm·数据库·python
止语Lab6 分钟前
Go 错误分层实战:从裸奔到三层防线
开发语言·golang
清平乐的技术专栏7 分钟前
Python依赖包实现window下载上传到Linux
linux·开发语言·python
m0_748839498 分钟前
MySQL触发器实现简单的分表逻辑_垂直分表与自动化路由
jvm·数据库·python
java修仙传9 分钟前
从手写 Redis 锁到 Redisson:我对分布式锁安全性的理解
java·数据库·redis·分布式
oh LAN14 分钟前
Windows 下 Redis 开机自启
数据库·windows·redis
iiiiyu14 分钟前
常用API(Object类 & Objects类)
java·开发语言
2301_8176722614 分钟前
mysql如何批量增加表的字段_脚本化DDL操作实践
jvm·数据库·python