J. Appl. Cryst. (2008), 41, 491-522. [ doi:10.1107/S0021889808007279 ]
Most modern small-molecule refinement programs are based on similar algorithms. Details of these methods are scattered through the literature, sometimes in books that are no longer in print and usually in mathematical detail that makes them unattractive to nonprogrammers. This paper aims to discuss these well established algorithms in nonmathematical language, with the intention of enabling crystallographers to use their favourite programs effectively.