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

4 views (last 30 days)
一秀 近藤
一秀 近藤 on 21 Jan 2023
Commented: 一秀 近藤 on 22 Jan 2023
pspectrumを使いスペクトルの計算を行ったのですがそのデータのベクトルの数が4096になる理由がわかりません。教えていただきたいです。

Accepted Answer

Hernia Baby
Hernia Baby on 21 Jan 2023
デフォルトが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 Comments
Hernia Baby
Hernia Baby on 22 Jan 2023
効率的にスペクトル解析を行うためのブロック点数みたいです。
■どこで使われているか?
スペクトルの計算にあるパラメータとアルゴリズムの選択に書いている式で使ってるようですね。
■コードにあるか?
コードでも確認してみました。
edit pspectrum
で確認すると378行目に
Npoints = uint32(4096);
とあります。
■結論
パワースペクトル計算で使う中で最も低い分解能帯域幅を決めるパラメータという認識です。
一秀 近藤
一秀 近藤 on 22 Jan 2023
とてもわかりやすく説明していただきありがとうございます。

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!