利用sinc函数恢复信号的matlab代码
时间: 2023-05-17 22:06:48 浏览: 166
【matlab代码】二维sinc函数的图像
5星 · 资源好评率100%
以下是一个利用 sinc 函数恢复信号的 MATLAB 代码示例:
```matlab
% 定义采样率和采样时间
fs = 1000; % 采样率为 1000 Hz
T = 1/fs; % 采样时间间隔
% 定义原始信号
t = 0:T:1; % 时间向量
x = sin(2*pi*10*t) + sin(2*pi*20*t); % 原始信号
% 采样原始信号
Ts = 1/100; % 采样时间间隔
n = 0:Ts:1; % 采样时间向量
xn = sin(2*pi*10*n) + sin(2*pi*20*n); % 采样信号
% 定义重建时间向量
tr = 0:T/10:1; % 重建时间向量
% 利用 sinc 函数重建信号
xr = zeros(size(tr)); % 初始化重建信号向量
for i = 1:length(tr)
xr(i) = sum(xn .* sinc((tr(i) - n)/T)); % 利用 sinc 函数计算重建信号
end
% 绘制原始信号和重建信号
figure;
subplot(2,1,1);
plot(t, x);
title('原始信号');
subplot(2,1,2);
plot(tr, xr);
title('重建信号');
```
这段代码首先定义了采样率和采样时间,然后定义了一个原始信号,接着对原始信号进行了采样,得到了采样信号。然后定义了一个重建时间向量,利用 sinc 函数计算重建信号,并绘制了原始信号和重建信号的图像。
阅读全文