 Although it does not scale to larger numbers of constraints, it is very often used to constrain rigid water molecules, which are present in almost all biological simulations and are usually modelled using three constraints (e.g.SPC/E and TIP3P water models).The SHAKE algorithm was first developed for satisfying a bond geometry constraint during molecular dynamics simulations.