ในบริบทของ DFT ตัวอย่างความถี่ Nyquist อยู่ที่ไหนในสเปกตรัมความถี่สองด้าน (ด้านบวก / ด้านลบ)
หากเรามีจุดข้อมูลจำนวนเท่ากัน $N$หลังจาก DFT ใน MATLAB ผลลัพธ์จะมีลำดับดังนี้
$$(\text{DC}, f_1, f_2, \ldots, f_{N/2-1}, f_\text{Nyq}, -f_{N/2-1}, -f_{N/2-2}, \ldots, -f_1)$$
สำหรับสัญญาณจริงเอาต์พุตแรกที่สอดคล้องกับ $k$= 0 เป็นจริงและความถี่ Nyquist ก็เช่นกัน หลังจากนั้นตัวเลขจะเป็นคอนจูเกตที่ซับซ้อน
หากเราสนใจสเปกตรัมด้านเดียวความถี่ของ Nyquist จะแสดงในด้านบวก
อย่างไรก็ตามเมื่อมีการพล็อตสเปกตรัมความถี่สองด้านผู้เขียนหลายคนใส่ความถี่ Nyquist ไว้ในด้านลบ
ซอฟต์แวร์บางตัวเช่น OriginPro ทำตามสิ่งที่ตรงกันข้าม มีวิธีที่ถูกต้องโดยพื้นฐานหรือเป็นเพียงแบบแผนกล่าวคือ
$$ \text { If } N \text { is even, } \quad k\quad\text { takes: }-\frac{N}{2}, \ldots,-1,0,1, \ldots, \frac{N}{2}-1 $$
อีกทางหนึ่ง $$ \text { If } N \text { is even, } \quad k \text { takes: } -\frac{N}{2}-1, \ldots,-1,0,1, \ldots, \frac{N}{2}$$
ที่ไหน $k$ คือเวกเตอร์ดัชนี DFT ซึ่งใช้สร้างแกนความถี่เป็น
$$\text {Frequency axis}=k/ N\Delta t$$
ที่ไหน $\Delta t$ คือช่วงการสุ่มตัวอย่าง
หลายคนบอกว่ามันเป็นเพียงแบบแผนและถูกต้องทั้งคู่ ขอบคุณ.
คำตอบ
มันเป็นอนุสัญญาพวกเขาเทียบเท่า:
$$ \exp{\left(j2 \pi \frac{N}{2}n/N \right)} = \exp{\left(j2\pi \frac{-N}{2}n/N\right)} \\ \Rightarrow e^{j\pi n} = e^{-j \pi n} \Rightarrow \cos(\pi n) = \cos(-\pi n)=(-1)^n,\ j\sin(\pi n) = j\sin(-\pi n) = 0 $$
MATLAB และ Numpy ไป $[-N/2, ..., N/2-1]$ซึ่งเป็นเรื่องโชคร้ายสำหรับการเป็นตัวแทนการวิเคราะห์ (+ freqs เท่านั้น) โปรดทราบว่าค่าของมันจะเพิ่มขึ้นเป็นสองเท่าเมื่อเทียบกับถังขยะอื่น ๆ (แต่ไม่ใช่ด้วยตนเองพวกมันมีความสัมพันธ์แบบนี้) ดังนั้นในแง่หนึ่งมันเป็นทั้งความถี่เชิงลบและเชิงบวกดังนั้นพลังงานจึงคงไว้:
คุณสามารถบอกความชอบของไลบรารีได้โดยใช้fftshift
เอกสาร :
สมมติ $x[n]$ เป็นของจริงส่งผลให้ $X[k]$เป็น"Hermitian สมมาตร" ;
$$ X[N-k] = (X[k])^* $$
และถ้า $N$ เท่ากับค่าในถัง DFT $X[\tfrac{N}{2}]$(ซึ่งเป็นปริมาณจริงที่มีส่วนจินตภาพเป็นศูนย์) ควรแบ่งออกเป็นสองส่วนเท่า ๆ กัน ควรวางครึ่งหนึ่งไว้ที่$k=-\tfrac{N}{2}$ และอีกครึ่งหนึ่งวางไว้ที่ $k=+\tfrac{N}{2}$.
คำตอบก่อนหน้านี้เกี่ยวข้องกับสิ่งนี้