MATLAB中Spectrum_Calc可实现傅里叶变换

本文介绍了MATLAB中的Spectrum_Calc函数,用于进行快速傅里叶变换(FFT)。该函数接受时域信号序列和采样频率作为输入,返回频域序列和相应频率。文中详细解释了Fs/2的含义,并提到了如何添加Hanning窗以改善变换效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从Matlab的帮助文档中,可以提取出这样一个可以用于实际的快速fourier变换程序。

function [Yf,f] = Spectrum_Calc(yt,Fs)
%功能:实现快速fourier变换
%输入参数:yt为时域信号序列,Fs为采样频率
%返回值:Yf为经过fft的频域序列,f为相应频率

L = length(yt);
NFFT = 2^nextpow2(L);
Yf = fft(yt,NFFT)/L;

Yf = 2*abs(Yf(1:NFFT/2+1));
f = Fs/2 * linspace(0,1,NFFT/2+1);
end

 

调用方法:

Fs = 1000;                    % Sampling frequency
T = 1/Fs;                     % Sample time
L = 1000;                     % Length of signal
t = (0:L-1)*T;                % Time vector
% Sum of a 50 Hz sinusoid and a 120

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值