
各位高手大家好!!我利用fft功率密度頻譜轉換後,想找出之中最大值對應的頻率值,不過轉換後取出矩陣並不是預想的大小,而是其他值,請問是那邊出錯呢?感謝回答。

各位高手大家好!!我利用fft功率密度頻譜轉換後,想找出之中最大值對應的頻率值,不過轉換後取出矩陣並不是預想的大小,而是其他值,請問是那邊出錯呢?感謝回答。
長度為n、採樣速度是Fs (單位Hz) 的離散時域信號陣列經過FFT後,
一般會輸出兩個大小減半(n/2)的資料陣列,
對應到傅立葉轉換實數部的陣列是power/magnitude陣列,
對應到虛數部的陣列是phase/polar陣列,
由上面兩個陣列標示出傅立葉轉換後的向量空間,
頻譜截止點 (輸出陣列的最後一點) 會是採樣頻率的一半 (Fs/2, 採樣定理),
所以頻譜解析度(Resolution Bandwidth)還是原狀 ( Fs/n or (Fs/2)/(n/2) ),
要多瞭一些就請上wiki查一查採樣定理與傅立葉轉換群吧...
DennyT40678.9006134259那如果我想要找出最大的功率密度所對應的頻率(如圖所示),我應該如何去寫呢?感謝回答。
簡單的話用Express VI裡的Tone Measurements.vi 試試吧...
動動腦的話, 可以把magnitude 1D陣列套進for loop裡利用shif register方式逐一比較大小, 比到大的就把當下的index放到輸出 (利用case structure), 最大數的index 乘上 Resolution Bandwidth (樓上上有提到如何計算) 便是max tone的頻率了.
DennyT40678.9423263889