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

相关推荐
三品吉他手会点灯43 分钟前
C语言学习笔记 - 50.流程控制4 - 流程控制为什么非常非常重要
c语言·开发语言·笔记·学习
计算机安禾2 小时前
【数据库系统原理】第19篇:计算机存储层次结构与数据库文件的物理组织
数据库·oracle
JAVA面经实录9173 小时前
操作系统面试题
java·服务器·数据库·计算机网络·面试
摇滚侠3 小时前
mariadb-libs 被 mysql-community-libs-5.7.28-1.el7.x86_64 取代
数据库·mysql·mariadb
在放️4 小时前
Python 爬虫 · 第三方代理接入与合规使用
开发语言·爬虫·python
KANGBboy4 小时前
java知识五(继承)
java·开发语言
c++之路4 小时前
Bazel C++ 构建系列文档(三):构建第一个 C++ 项目
开发语言·c++
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题 第117题】【并发篇】第17题:线程有几种状态,之间如何转换?
java·开发语言·面试
DIY源码阁4 小时前
JavaSwing饮品管理系统 - MySQL版
java·数据库·mysql·eclipse
专注搞钱4 小时前
GPT-4o写设备Recipe:从3小时到10分钟
数据库·人工智能·gpt·半导体