問題タブ [spectral-density]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
449 参照

fft - PSDへのFFT出力

FFT の出力を理解するための助けが必要です。

私はGNUラジオを扱っています。出力が Float 型の信号ソースがあります。FFT 変換を行った後、データは UDP を使用してアプリに送信されます。

私のアプリはデータをバイト配列で受け取り、それを float 配列に変換します。だから今、私はFFT出力複合体をフォーマットで取得しました:

floatArr = {実数、実数、実数、実数 .....}.

次に、FFT 出力から PSD 値を計算し、チャートをレンダリングします。

しかし、問題は、私のグラフが正しくなく、GNU ディスプレイとはまったく異なることです。

ここに私のGNU図

ここに画像の説明を入力

この式で PSD 値を計算します。

1:マグニチュード = 2*sqrt(re^2 + img^2)/N

2: PSDx = 10*Log10(マグニチュード^2)

しかし、私のグラフは GNU とはまったく異なって見えます。

ここに画像の説明を入力

助けてください、私は現在、FFT/PSD (および英語も) についてほとんど知識がありません。このチャートを何週間もレンダリングしようとしましたが、実際にはやみくもに数式を適用しただけです。

0 投票する
1 に答える
409 参照

matlab - ベクトルの長さが同じでないため、FFT のプロットが失敗する

時間(1列目)と現在の振幅(2列目)のcsvデータがあります。電流のFFTをプロットしたい。これは実際には 30ns 以上のシミュレーション データで、データ ステップは 1ps でした。MATLAB で電流と時間をプロットできます。しかし、FFT関数を実行している間、それが言うようにまったくプロットされていません

誰でも私を助けることができますか?MATLAB コードとCSVファイルも添付しました。

また、パワー スペクトル密度もプロットしたいと思います。誰かが助けてくれれば幸いです。2GHz 以上の周波数スペクトル範囲で FFT と psd を取得したい

MATLAB コード 1:

また、私が試した別のMATLABコードがあります(ここに画像があります:コード2のFFT画像)が、時間領域で表示され、周波​​数スペクトルに沿った振幅のスパイクのような周波数スペクトルが必要です。

MATLAB コード 2:

0 投票する
1 に答える
3429 参照

matlab - PSD 評価のための matlab の pwelch 関数のウィンドウ サイズとオーバーラップ

Matlabのpwelch関数の理想的なウィンドウサイズとオーバーラップサンプルを提案してください。スペクトル パワーを評価するために、サンプリング レート 1000 (信号長またはサンプル数 = 200) の 200 ミリ秒の EEG 信号がいくつかあります。デフォルトでは、pwelch はハミング ウィンドウを使用し、データを 50% のオーバーラップで 8 つのセグメントに分割します。サンプルが 200 個しかない信号に対して、これらの既定値は問題ないでしょうか? デフォルト値は正常に機能しており、PSD プロットが表示されます。私がやっていることは概念的に正しいことを確認したいのですが、誰かがこれを行うためのより良い方法を提案できますか? これは、200 ミリ秒の持続時間での刺激に対する ERP 応答の研究です。異なる周波数帯域のスペクトル パワーを比較したいと考えています。

助けてくれてありがとう!