Step is an interactive physical simulator.
Step 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
Context information for all objects, integrated wikipedia browser
Collection of example experiments, more can be downloaded with KNewStuff3
Integrated tutorials