【问题标题】:storing results of the power spectrum density command in a matrix - matlab将功率谱密度命令的结果存储在矩阵中 - matlab
【发布时间】:2012-12-05 17:18:16
【问题描述】:

我需要一些有关 for 循环和功率谱密度的 matlab 代码的帮助。

我正在分析一个信号,需要能够测量每 30 秒段的平均功率。我已经用函数'buffer'分割信号,这样矩阵segment_mat的每一列中都有30秒的数据,但我希望能够使用for循环将功率谱密度的结果存储在矩阵中循环遍历数据并将每个段的平均功率存储在向量avpow 中。有什么想法我可能会出错吗?

for j=1:120
    Hs=spectrum.periodogram({'Hamming'});
    Power=psd(Hs,segment_mat(:,j)',fs',fs);
    avpow=mean(Power(j))';
end

【问题讨论】:

    标签: matlab for-loop matrix signal-processing


    【解决方案1】:

    您的问题是您在 for 循环的每次迭代中都覆盖了结果。

    只需修改您的代码:

    Power(j) = ...
    avpow(j) = ...
    

    您将存储计算结果。如果速度有问题,请考虑预先分配。

    【讨论】:

      猜你喜欢
      • 2017-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多