"Understanding Molecular Simulation: From Algorithms to Applications" explains the physics behind the 'recipes' of molecular simulation for materials science. Computer simulators are continuously confronted with questions concerning the choice of a particular technique for a given application. A wide variety of tools exist, so the choice of technique requires a good understanding of the basic principles. More importantly, such understanding may greatly improve the efficiency of a simulation program. The implementation of simulation methods is illustrated in pseudocodes and their practical use in the case studies used in the text. Since the first edition only five years ago, the simulation world has changed significantly - current techniques have matured and new ones have appeared. This new edition deals with these new developments; in particular, there are sections on: transition path sampling and diffusive barrier crossing to simulaterare events; dissipative particle dynamic as a course-grained simulation technique; novel schemes to compute the long-ranged forces; Hamiltonian and non-Hamiltonian dynamics in the context constant-temperature and constant-pressure molecular dynamics simulations; multiple-time step algorithms as an alternative for constraints; defects in solids; the pruned-enriched Rosenbluth sampling, recoil-growth, and concerted rotations for complex molecules; and, parallel tempering for glassy Hamiltonians. Examples are included that highlight current applications and the codes of case studies are available on the World Wide Web. Several new examples have been added since the first edition to illustrate recent applications. Questions are included in this new edition. No prior knowledge of computer simulation is assumed.