小编Mai*_*Mai的帖子

计算FFT时的信号长度

我想问一些与我的最后一个问题有关的问题,所以我不想在另一个帖子中发帖.我的问题包含一个代码,因此我不能将其作为评论发布.所以我必须将我的旧问题编辑成一个新问题.请看看并帮忙.谢谢.

我是FFT和DSP的新手,我想问你一些关于在Matlab中计算FFT的问题.以下代码来自Matlab帮助,我刚刚删除了噪音.

  1. 我可以选择与NFFT不同的信号L的长度吗?

  2. 我不确定我是否正确使用了窗口.但是当我使用窗口(以下代码中的hanning)时,我无法获得幅度的确切值?

  3. 当L和NFFT得到不同的值时,振幅值也不同.如何获得输入信号幅度的精确值?(在下面的代码中,我使用一个已知的信号来检查代码是否正常工作.但是如果我从传感器获得信号并且我不知道它的振幅,我该如何检查?)

我非常感谢你,期待收到你的来信:)

Fs = 1000;                    % Sampling frequency
T = 1/Fs;                     % Sample time
L = 512;                     % Length of signal
NFFT=1024;                   % number of fft points
t = (0:L-1)*T;                % Time vector
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);    input signal
X = fft(hann(L).*x', NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
plot(f,2*abs(X(1:NFFT/2+1)))     % Plot single-sided amplitude spectrum.
Run Code Online (Sandbox Code Playgroud)

matlab signal-processing fft wavelet

5
推荐指数
1
解决办法
1万
查看次数

带有零填充数字的Matlab文件名

我有11×11的矩阵,我救了他们的.mat文件从F01_01F11_11.我必须Func在每个文件上运行一个函数.由于需要很长时间,我想编写一个脚本来自动运行该功能:

for i=01:11  
    for j=01:11  
        filename=['F',num2str(i), '_', num2str(j),'.mat'];  
        load(filename);  
        Func(Fi_j);   % run the function for each file  Fi_j  
    end  
end  
Run Code Online (Sandbox Code Playgroud)

但它不起作用,Matlab无法找到mat文件.
有人可以帮忙吗?

matlab string-formatting

4
推荐指数
1
解决办法
6629
查看次数