Doppler Effect Simulation Show and Tell #159
veillette
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Doppler Effect Simulation Show and Tell
GitHub Repository: [Doppler Effect PhET](https://github.com/veillette/dopplerEffectPhET)

Author: Martin Veillette
Framework: SceneryStack
Physics Focus: Wave Physics & The Doppler Effect
Live Simulation: https://veillette.github.io/dopplerEffectPhET/
Bringing Wave Physics to Life
The Doppler effect surrounds us in daily life—from the familiar pitch change of passing emergency vehicles to the cosmic redshift that reveals the universe's expansion, yet students often struggle with the concept because it involves complex spatiotemporal relationships where the perspectives of both source and observer matter critically. We hope that this interactive simulation can bridge this conceptual divide.
Our simulation design emphasizes hypothesis-driven exploration—students form predictions about parameter changes and receive immediate visual feedback. This iterative prediction-observation cycle builds deep conceptual understanding. To guide student discovery effectively, we developed multiple scenarios (via a ComboBox) highlighting the most important Doppler effect cases.
SceneryStack proved instrumental in creating this sophisticated physics simulation without wrestling with low-level graphics programming. The framework's WebGL-based wave rendering delivers smooth animations of the waves (circles) without requiring knowledge of shaders or vertex manipulation. We simply focused on the physics and pedagogy while SceneryStack handled the technical complexity.
The simulation leverages SceneryStack's interactive components seamlessly—For instance, students can manipulate source velocity, observer position, and wave frequency through intuitive slider controls. Panels, check boxes, and pause/play Buttons used were all parts of the SceneryStack Library. As an additional benefit, SceneryStack's responsive architecture ensures the simulation works flawlessly across devices and screen sizes, so we did not have to worry about this aspect.
Following SceneryStack principles, we released the Doppler Effect code under an MIT License as open source. GitHub's educational account benefits enabled us to implement automated build and deployment through GitHub Actions workflows. The SceneryStack community proved remarkably responsive—when I encountered ComboBox implementation challenges, I created a GitHub issue on this repo and received prompt feedback from the framework maintainers.
We also utilized their internationalization framework to create a multilingual simulation supporting both French and English, and it would be very easy to extend it to other languages.
Expanding Accessibility and Future
There remains opportunities for enhancement. While we've implemented keyboard navigation for alternative input methods, dynamic screen-reader descriptions represent our next milestone. This is already supported in the SceneryStack but we have not leverage it yet. This highlights another valuable lesson about SceneryStack development: simulation features are remarkably modular, allowing incremental implementation rather than requiring everything to be completed simultaneously. Overall, SceneryStack has exceeded our expectations throughout this project, and I strongly encourage other users to utilize the Show and Tell discussion to share your own experiences.
Beta Was this translation helpful? Give feedback.
All reactions