Atomistic simulations--algorithms and methods