[英]Why does this output of the same expression from printf differ from cout?
[英]Why does the input and output for cufft greatly differ from traditional fft?
從我對fft函數的理解(例如,從類似這樣的問題開始 )
假設1D fft,給定N點實際數據,對於零頻率,我將得到長度為N(但為復數)+1的雙面fft。 如果我采用相同的fft輸出,並對其執行ifft,則將獲得N個實數值,在理想情況下,這將與fft的原始輸入完全匹配。
在cufft中 ,這似乎有很大不同。
根據Nvidia的研究,給N個實數分量將導致fft的N2 +1個復雜分量,而N2 + 1個復雜分量將導致N個實數分量。
看到這里 (R =實數,C =復數,2 =到):
請注意,我認識到一半的復雜成分實際上是重復的(但共軛且是反向的),因此輸入輸出值不必保留重建所需的所有日期,但這並不能解釋Nvidia如何聲稱fft的輸入和輸出數據長度應該結構化, cufft的輸入和輸出長度所做的事情與我對此情況的預期相反。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.