1樓:
1、nfft=2^nextpow2(n)*2 這裡是否乘以2,應該怎麼選擇,貌似乘以3結果也一樣,
此處只是確定做fft的點數,由於是單頻訊號,所以,在最後的結果上面會出現兩個對稱的尖峰,和你的fft點數沒有關係。
2、y=fft(x,nfft)/(n/2) 這裡最後除以了(n/2),才得到正確的幅值,看不懂
是否需要除以這個數字要根據其物理意義來決定,如果你是用來做頻譜分析,這個係數不會影響最終的影象的樣子。
3、f=n*fs/nfft; 頻率軸到底怎麼寫, n是0:1:n-1還是0:1:n,還是1:1:n ???
上面兩種寫法在做頻譜都不對,fft之後點數不變,如果按照原始定義xk=fft(xn),那麼應該是0:1:n-1
如果你是做頻譜分析,應該是[(0:1:n/2-1) ( -n/2:1:-1)]
例如,如果是是做8點fft,前面4點是**率,後面4點是負頻率。
2樓:匿名使用者
1. 只有當 x 的長度為 2 的整數次冪才能最大限度的提高程式運算速度。nextpow2是指靠的最近的2的指數,若是1023,則nextpow2(1023)=10,若是1025,則nextpow2(1025)=10,前者運算時可以包括全部的資料,而後者包括不了第1025個資料,故需要加1,變成11.
在2的指數上加1 等價於乘以2。理解嗎?
2. 做fft分析時,幅值大小與fft選擇的點數有關,但不影響分析結果。比如採用128和1024個點的相同頻率的振幅有不同的表現值,但在同一幅圖中,40hz和15hz的振動振幅值之比為1:
4,與真實振幅0.5:1是一致的。
為了得到真實的振幅,往往要乘以2除以n。
3. n=0:1:
n-1。中間的1可省略,一般寫成n=0:n-1即可。
頻率軸是從開始的,到n-1,這不是真實的頻率。只要將n乘以delta f 即得到真實的頻率。delta f 又等於fs/n, 這也是頻率解析度,能理解麼。
額外話,頻率軸只需取f(1:n/2)即可,因為後半部分與前半部分是對稱的。
matlab中如何對一組資料進行fft變換後得到頻譜圖??
3樓:用著追她
1、直接對其使用來ceil函式,源
可以向上取整:即大於等於給定數bai據的最du小整數。
2、使用zhifloor函式可以進行向下取dao整。如圖,將矩陣a中的每個元素取小於等於該元素的最大整數。
3、使用fix函式則可以去除小數部分。對於大於0的元素相當於floor,對於小於0的元素相當於ceil。
4、使用round函式可以把資料四捨五入到最近的整數。
5、round還可以帶有第二個引數,精確到位數。負數表示四捨五入到小數點左側多少位,正數表示小數點右側。0表示精確到個位,預設。
6、當round帶有第三個引數'significant'時,第二個參數列示精確位數。如圖表示每個元素均取2位有效數字。
4樓:手機使用者
將那個i輸出線分0一t支q出來輸入i到一b個kto file的模組就好了d,如果要轉到execl中2的話將他們連結就好e┳
matlab fft變換後幅值不對
5樓:
fft後的頻域幅值不是訊號在時域的幅值,倆相等才是不正常的。
6樓:愚笨的小寶
已經有bai網友解答在用dumatlab過程中使用fft()函式求zhi
解訊號頻譜過程dao中,相應的幅值要做版修正的問題,即參權加fft運算的點數為n時,最後幅值要除以n乘以2(直流分量時除以n即可),那麼關於最後計算的結果為何比我們預期的要小,這個問題有兩個方面原因,第一個原因是離散訊號的點數,一般我們要求是2的冪指數例如l個,若不滿足要求我們會補充零值,可以從能量守恆的角度考慮補充了資訊點數使得訊號長度增加,但因為是零值所以能量不變,但fft()作用後我們頻點數往往也是這個l,而且我們補充的零值是要參與其中計算的,所以這種能量不變卻是頻點數增加的做法,最後的結果比理論值小,這個是主要原因。第二個因素不是回答這個問題的,但往往初次使用matlab的fft()函式會人為的設定參加的運算點數,這個點數設定的過大比如剛好比訊號離散點數大了一倍,那麼最後的頻譜幅值剛好為理論的一半,特別要注意這個問題。
7樓:科技數碼答疑
fft取樣太小,改大些,比如fft256
8樓:匿名使用者
第一個和你的nfft的選取有關,如果nfft>取樣資料n的話,會需要補零點,導致整體的幅值下降回了;第二個就是和
答你設定的取樣頻率有關,理論上取樣頻率設定地越大,fft之後的幅值越接近時域的真實幅值,以上都已試過,歡迎提問!
matlab中fft函式的疑問
9樓:匿名使用者
n要取最接近資料長度的2的整數次方,命令是2^nextpow2(n),其中n是實際資料長度,因為這樣的n可以使fft更快。比如,n=1021,執行n=2^nextpow2(n)後,n=2^10=1024。而你說的512也是這個道理。
f為表示頻率的橫軸,它的長度必須和abs(y)的長度相等,它們都是在圖形上顯示的長度。比如,f顯示n的一半,abs(y)也要取n的一半:plot(f(1:
n/2),y(1:n/2)),其中y=abs(y)。
注意:做fft的資料長度是整個的資料長度,plot顯示的長度可以任取。
求教這個經濟學問題,求教幾個經濟學問題?
mpk l k 1 2 mpl k l 1 2mpk mpl l k r w 2 2 1 即 k l最大化產量q 2k 2l 64 k l 32長期總成本c rk wl 2 32 2 32 128 q表示產量,k表示資本量,l表示勞動力,w表示勞動力的 r表示資本 生產函式的意思就是生產商品要用到資...
我求教問題 0 5裡有幾個0 0 53裡有幾個
0.5 0.1 5 0.53 0.01 53 0.53裡有5.3個0.1和53個0.01組成以此類推。53個0.01是多少?5裡面有幾個0.1 53個0.01是0.53,5裡面有50個0.1。53 0.01 0.53 50 0.1 50 0.53是由多少個0.1和多少個0.01組成的?解 0.53 ...
求教幾個關於去青島旅遊的問題
1.現在處於旅遊高峰期.外地老青旅遊的人很多.2.如家.7天.漢庭.愛尊客.3.酒店到處都有.很方便.4.海邊游泳去第一第二海水浴場都很好.沿海景點 五四廣場.奧帆基地.八大關.棧橋.百麗廣場.還可以去中山路那邊,有個劈柴院,非常有名.很多好吃的東西.價錢不貴.那邊還有很多德國的老建築非常漂亮.江蘇...