Step is an interactive physics simulator.
With Step you can not only learn but feel how physics works. You place some bodies on the scene, add some forces such as gravity or springs, then click "Simulate" and Step shows you how your scene will evolve according to the laws of physics. You can change every property of bodies/forces in your experiment (even during simulation) and see how this will change evolution of the experiment.
Browser requirements: Chrome, Firefox, Safari.
Key Features:
- Classical mechanical simulation in two dimensions
- Particles, springs with damping, gravitational and coulomb forces
- Rigid bodies
- Collision detection (currently only discrete) and handling
- Soft (deformable) bodies simulated as user-editable particles-springs system, sound waves
- Molecular dynamics (currently using Lennard-Jones potential): gas and liquid, condensation and evaporation, calculation of macroscopic quantities and their variances
- Units conversion and expression calculation: you can enter something like "(2 days + 3 hours) * 80 km/h" and it will be accepted as distance value (requires libqalculate)
- Errors calculation and propagation: you can enter values like "1.3 ± 0.2" for any property and errors for all dependent properties will be calculated using statistical formulas
- Solver error estimation: errors introduced by the solver is calculated and added to user-entered errors
- Several different solvers: up to 8th order, explicit and implicit, with or without adaptive timestep (most of the solvers require GSL library)
- Controller tool to easily control properties during simulation (even with custom keyboard shortcuts)
- Tools to visualize results: graph, meter, tracer