https://github.com/brendanashworth/fft-small
cooley-tukey 2-radix discrete fast fourier transform in C for embedded systems
https://github.com/brendanashworth/fft-small
Last synced: 17 days ago
JSON representation
cooley-tukey 2-radix discrete fast fourier transform in C for embedded systems
- Host: GitHub
- URL: https://github.com/brendanashworth/fft-small
- Owner: brendanashworth
- License: mit
- Created: 2019-06-12T19:28:33.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2021-12-25T19:12:41.000Z (over 3 years ago)
- Last Synced: 2025-04-11T06:27:56.771Z (3 months ago)
- Language: C
- Size: 4.88 KB
- Stars: 34
- Watchers: 3
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Fast Fourier Transform
This is an implementation of the [Cooley-Tukey FFT algorithm](https://en.wikipedia.org/wiki/Cooley%E2%80%93Tukey_FFT_algorithm)
designed for embedded systems. It uses the 2-radix variation to grow with `O(n log n)` complexity.This implementation, unlike most found elsewhere, does not dynamically allocate memory on the heap and thus
is easier to use in embedded systems. It also has a deterministic runtime given any size sample.### Usage
```c
/* Fast Fourier Transform
* Cooley-Tukey algorithm with 2-radix DFT
*/void fft_slow(int* x, double complex* X, uint16_t N);
void fft(int* x, double complex* X, uint16_t N);
```
### License
MIT