Skip to content

Welcome to the Wave Simulator in Python repository! This project uses the Finite Difference Method to model wave propagation in various media.

License

Notifications You must be signed in to change notification settings

amadeusferro/Finite-Difference-Wave-Equation-Simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🌐📡 Wave Simulator in Python

Welcome to the Wave Simulator in Python repository! This project uses the Finite Difference Method to model wave propagation in various media.

📜 Description

This project simulates the Wave Equation, a fundamental second-order partial differential equation used to describe how waves propagate through different environments. The simulation helps visualize wave behavior in various scenarios, including interactions with obstacles like slits.

📐 Finite Difference Method

The Finite Difference Method (FDM) numerically solves differential equations by approximating derivatives with finite differences. In this project, it discretizes the spatial and temporal domains into a grid, converting the Wave Equation into algebraic equations. Using a second-order approximation for greater accuracy, the simulation iteratively updates grid values over time. This approach models wave propagation and visualizes how waves interact with obstacles, such as in the double-slit experiment, revealing detailed interference patterns.

🚀 Features

  • Simulation of the Wave Equation using Finite Differences.
  • Visualization of wave interference patterns.
  • Implementation of the double-slit experiment.

📹 Simulation Videos

Check out the simulation videos below to see the wave patterns and interference effects in action:

simulation.mp4
simulation2.mp4
simulation3.mp4
simulation4.mp4

🤝 Contributing

Feel free to contribute to this project! If you have suggestions, improvements, or fixes, please open an issue or submit a pull request.

🙏 Acknowledgments

Special thanks to Dr. Philip Mocz, Computational Physicist at Lawrence Livermore National Laboratory, for the article detailing the method used in this project.

Article: Create Your Own Finite Difference Wave Equation Simulation (With Python)

📜 License

This project is licensed under the MIT License.

About

Welcome to the Wave Simulator in Python repository! This project uses the Finite Difference Method to model wave propagation in various media.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages