Step is an interactive physical simulator.

Step features:

Classical mechanical simulation in two dimensions

Particles, springs with dumping, 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 KNewStuff2

Integrated tutorials