https://github.com/leonard-seydoux/melodic-table-of-elements
An interactive musical periodic table of the elements.
https://github.com/leonard-seydoux/melodic-table-of-elements
art entertainment music musical-instrument periodic-table-of-elements science sound-synthesis
Last synced: 3 months ago
JSON representation
An interactive musical periodic table of the elements.
- Host: GitHub
- URL: https://github.com/leonard-seydoux/melodic-table-of-elements
- Owner: leonard-seydoux
- License: cc-by-4.0
- Created: 2016-05-01T11:24:31.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2024-07-13T20:13:20.000Z (11 months ago)
- Last Synced: 2025-01-22T13:26:14.358Z (4 months ago)
- Topics: art, entertainment, music, musical-instrument, periodic-table-of-elements, science, sound-synthesis
- Language: HTML
- Homepage: https://leonard-seydoux.github.io/melodic-table-of-elements/
- Size: 75.3 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# The interactive periodic table of elements
[](https://creativecommons.org/licenses/by/4.0/)
[](https://leonard-seydoux.github.io/melodic-table-of-elements/)
[]()
[]()
This repository is an artistic project that turns the periodic table of elements into an interactive musical instrument. No description needed, just try it at https://leonard-seydoux.github.io/melodic-table-of-elements/. The project aims at evolving, so feel free to contribute!
## How to sonify the periodic table of elements
Each sound are made from the different features of the periodic table, like the period or the group (see the script [make_sounds.py](make_sounds.py) for more information).
The sounds are created from a fundamental frequency, and overtones that are multiples of the fundamental frequency. The fundamental frequency f of a given period is obtained from
fundamental_frequency = element_period * f0
where f0 is the lowest fundamental frequency. The overtones are obtained from
overtone = element_group * fundamental_frequency
After sine-wave generation, the sounds are shaped with a Tukey window, and an exponential decay in order to mimick the attack and decay of instruments. The sound is saved as a WAV file, and then converted to an MP3 file using ffmpeg.
Several overtones are added depending on the block of the element. The d-block elements have one overtone, the f-block elements have two overtones, and the p-block elements have three overtones. The amplitude of the overtones is reduced as the overtone number increases.
Finally, the waveform is shaped with a Tukey window, with an exponential decay to reduce the volume over time. The sound is saved as a WAV file, and then converted to an MP3 file using ffmpeg.
## Potential improvements
One notable issue is the click sound that may appear when the pointer leaves and re-enters the element before the fade-out of the sound. This is due to the fact that the sound is stopped and restarted when the pointer leaves and re-enters the element. I tried to have an "emergency" fade-out of the sound when the pointer leaves and re-enters the element, but it did not work. If you have any idea on how to solve this issue, please let me know!