フィルターのクリア

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

3 ビュー (過去 30 日間)
一秀 近藤
一秀 近藤 2023 年 1 月 21 日
コメント済み: 一秀 近藤 2023 年 1 月 22 日
pspectrumを使いスペクトルの計算を行ったのですがそのデータのベクトルの数が4096になる理由がわかりません。教えていただきたいです。

採用された回答

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

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeフーリエ解析とフィルター処理 についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!