Skip to content

πŸ‘©β€πŸ’» SDD Assessment - Double Pendulum simulation in JavaScript

License

Notifications You must be signed in to change notification settings

museHD/DoublePendulum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

44 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Logo

Double Pendulum Simulation

Interactive website that simulates the chaotic physics system of a Double Pendulum
Report Bug Β· Request Feature

About the Project:

πŸ‘©β€πŸ’» This is a double pendulum simulation written in JavaScript for a Year 11 Software Design & Development Assessment.

It simulates a chaotic physics system where a pendulum is attached to the end of another pendulum. The length of these pendulums and the angle they are released at can be customised using the UI. The simulation uses the Runge-Kutta differential equation solver in order to provide relatively accurate results.

Although the project has been assessed, it's still very interesting to play around with and can be improved quite a lot. Please feel free to leave any feedback! ❀️

If you are interested in improving it, see Contributing.

Assessment Update:

"Outstanding! Extremely complex and functional..."

Program Mark: 60/60 :)
Documentation Mark: 47/60 ;(
Total: 107/120

Getting Started

Installation

  • You can access the project on its website.

OR

  • You can download a local copy using git clone https://github.com/museHD/DoublePendulum.git

Other than fonts, everything is included in the repo, so it can be run locally without an internet connection. Simply open up index.html in a browser

Usage

  • The Panel on the left allows you to create, delete and select between Double Pendulum instances.
  • The Panel on the right allows you to change properties such as mass, length and starting angle of each component of the selected instance. You can also start and stop the simulation using the buttons at the top

Example

Screenshot 2022-09-14 121329 (Small)

Contributing

Please feel free to raise issues and suggest changes to the project. Although it has been submitted, it can be improved through code optimisation and UI changes.

forthebadge