用 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 中绘制离散时间序列和其他离散数据的有用工具,特别是在信号处理和通信系统分析中。

相关推荐
biter down3 小时前
14:pytest-order 插件 顺序控制案例
开发语言·python·pytest
郝学胜-神的一滴3 小时前
Qt 高级开发 009: C++ Lambda 表达式
开发语言·c++·qt·软件构建
这个DBA有点耶3 小时前
DBA的AI助手:向量检索与NL2SQL入门
数据库·人工智能·postgresql·学习方法·dba
星栈独行3 小时前
我在 Rust 全栈项目里用 JWT 做无状态认证
开发语言·后端·rust·前端框架·开源·github·web
石山代码4 小时前
C++ 轻量级日志系统
开发语言·c++
basketball6164 小时前
SQL 常用数据格式化操作方法总结
数据库·sql
小技与小术4 小时前
玩转Flask
开发语言·python·flask
SilentSamsara4 小时前
Python 性能优化:tracemalloc、profiling 与 C 扩展加速
开发语言·python·青少年编程·性能优化
冰小忆4 小时前
大驼峰命名规范和小驼峰命名规范的区别是什么?
开发语言·python
TE-茶叶蛋4 小时前
数据库-引用完整性(referential integrity)
数据库