aspcore.fouriertransform.idft_vector
- aspcore.fouriertransform.idft_vector(freq_idx: int, dft_len: int)
All exponential values to calculate the IDFT for a specific output time step
Returns exp(i 2pi k n / N) for all frequency bins k = 0, 1, …, N-1 Which corresponds to the IDFT definition used here which is u(n) = sum_k u(k) exp(i 2pi k n / N) / N
- time_idxint
the index of the time step bin. Symbol n in the formula above.
- dft_lenint
the number of frequency bins. Symbol N in the formula above.
exp_vector : ndarray of shape (dft_len,)
The values corresponds to the DFT definition used here which is u(n) =
rac{1}{N} sum_k u(k) exp(-i 2pi k n / N). See documentation for the ifft function.
Although inefficient, the DFT can be calculated by multiplying the input signal with this vector and summing. Preferably, use the fft and ifft functions.