Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/laszlokorte/fourier-cuboid
Interactive exploration of the dualities between signals and their corresponding Fourier Transform
https://github.com/laszlokorte/fourier-cuboid
fourier-transform
Last synced: about 19 hours ago
JSON representation
Interactive exploration of the dualities between signals and their corresponding Fourier Transform
- Host: GitHub
- URL: https://github.com/laszlokorte/fourier-cuboid
- Owner: laszlokorte
- Created: 2022-01-05T01:52:08.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-29T15:09:42.000Z (10 months ago)
- Last Synced: 2024-04-09T23:06:25.723Z (7 months ago)
- Topics: fourier-transform
- Language: JavaScript
- Homepage: https://tools.laszlokorte.de
- Size: 199 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
![Screenshot of the app](preview.png)
[Live Demo](https://static.laszlokorte.de/fourier/)
# Fourier Cuboid
Explore the interrelation between the time domain of a signal and it's spectrum.
The cuboid demonstrates the relationships between time and frequency domains. A 90 degree rotation of the cube represents a Fourier Transform. Taking the Fourier Transform twice results in the original signal flipped along the time axis. This corresponds to a 180 degree rotation i.e. viewing the signal from the backside. A third Fourier transform then results in the same spectrum as the first Fourier transform but flipped along the frequency axis. The fourth Fourier transform returns to the original signal.
By viewing two neighboring sides of the cuboid at once you can introspect the relationship between the transformation of the signal in the time domain and it's spectrum in the frequency domain. For example shifting the signal along the time axis results in a linear phase rotation of the spectrum. A constant phase shift in one domain causes the same shift in the other domain. Stretching the signals causes the spectrum to contract and vice versa.
You can chose to either model the signal and observe the resulting spectrum or to model the spectrum and observe the resulting signal.
The transformation between time and frequency domain is done via Discrete Fourier Transform (DFT). This means that the signal and spectrum are both sampled discretely and not continuous as that would not be possible on a computer. Currently 2048 samples are used. Signals with frequencies higher than 1024/period may result in aliasing.