1. A computer-implemented method of simulating behaviour of a thermodynamic system over time, the thermodynamic system having potential energy that can be split into more quickly varying parts and more slowly varying parts and having a state described by collective vectors of position and momentum at any given time, the method comprising a momentum refreshment process, a conservative dynamics process, and an acceptance/rejection process, wherein the momentum refreshment process comprises mixing the collective momentum vector with a noise vector; the conservative dynamics process comprises applying a mollified impulse multiple time stepping conservative dynamics method to a current state, in which process calculations for forces corresponding to more slowly varying energy parts in the thermodynamic system undergo an averaging procedure and are carried out at a larger time step than calculations for forces corresponding to more quickly varying energy parts; and wherein the acceptance/rejection process is based on the system energy and comprises accepting a current state or returning a replacement state.