pspectrumで​得られたデータのベク​トルが4096になる​理由

pspectrumを使いスペクトルの計算を行ったのですがそのデータのベクトルの数が4096になる理由がわかりません。教えていただきたいです。

 采纳的回答

デフォルトが4096だからです
周波数分解能等をいじるとサイズが変わります
Fs = 1000;
t = (0:1/Fs:.296).';
x = cos(2*pi*t*200)+0.1*randn(size(t));
xTable = timetable(seconds(t), x);
s0 = pspectrum(xTable);
s1 = pspectrum(xTable,'FrequencyResolution',25);
disp(size(s0))
4096 1
disp(size(s1))
161 1

4 个评论

ご丁寧な回答ありがとうございます!
4096とはなにを示している値になるのでしょうか?
なんどもすいません
効率的にスペクトル解析を行うためのブロック点数みたいです。
■どこで使われているか?
スペクトルの計算にあるパラメータとアルゴリズムの選択に書いている式で使ってるようですね。
■コードにあるか?
コードでも確認してみました。
edit pspectrum
で確認すると378行目に
Npoints = uint32(4096);
とあります。
■結論
パワースペクトル計算で使う中で最も低い分解能帯域幅を決めるパラメータという認識です。
とてもわかりやすく説明していただきありがとうございます。

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!