2014-06-08 29 views
0

各种距离的时候,我有一个信号x(t)与它的价值计算信号的PSD只是想:如何在MATLAB

t = 0, 1, 3, 4, 7, 8, 10, 15, ... 
x = 3, 4, 5, 4, 6, 7, 4, 8, ... 

,你可以看到,这个问题herre之间的时间距离2任何不相等的样本。你能告诉我如何使用matlab来绘制它的psd吗? 非常感谢。

+0

感觉就像一门功课来证明FFT的理解。与其仅仅调用一个fft函数,学生应该理解这个基本思想,即它是用正弦曲线计算数据乘积积分的快速方法。您可以在任何点评估正弦曲线,但问题变成如何计算离散积分。定义矩形或梯形来表示在每个点处集成的体积。此时您可能会认识到重新采样或插值输入的相似性。 interp1(有些人可能会考虑零填写。) – dennis

+0

谢谢你回答我的问题。这不是理解fft的学生作业。我工作在我的projet上,结果是一个数据文件,这是我在该文件上看到的,我不知道它。 –

+0

如果您对信号一无所知,您可以尝试对'x'进行插值,使其在统一网格中进行采样。查看['interp1'](http://www.mathworks.com/help/matlab/ref/interp1.html)(或者在matlab中键入'help interp1') – ThP

回答

0

首先,我会重新采样插值数据以获得一个有规律的采样信号。对于插值算法,我使用样条曲线,但也可以使用interp1,这会更快;

t2 = t(1):step:t(end); %with this I have a t signal with every sample separated by step 
x2 = spline(t, x, t2); 

然后你可以用fftpwelch PSD您的X2信号...