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

相关推荐
wuqingshun31415918 分钟前
MYSQL默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
空中湖41 分钟前
电池简史(五):极限之梦与终章——锂硫、锂空气、量子电池,以及你该知道的电池投资与生活指南
数据库·程序人生
名字还没想好☜1 小时前
Go slice 的 append 陷阱:共享底层数组导致的数据串改
开发语言·后端·golang·go·slice
bitbrowser1 小时前
Claude 账号频繁被封?转向国内可直接使用的 AI 工具
开发语言·php
An_s1 小时前
机器学习python之识别图中物品信息
java·linux·开发语言
小雪_Snow2 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
肖爱Kun2 小时前
C++设计策略模式
开发语言·c++·策略模式
蓝胖子酱2 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库
灯澜忆梦2 小时前
GO_面向对象_方法
开发语言·golang
布朗克1682 小时前
Go 入门到精通-16-字符串深入
开发语言·后端·golang·字符串