The programs used in computational chemistry are based on many different quantum-chemical methods that solve the molecular Schrödinger equation. The methods that do not include empirical or semi-empirical parameters in their equations are called ab initio methods and are currently of the greatest use in computational chemistry. The most popular classes of ab initio methods are: Hartree-Fock, Moller-Plesset perturbation theory, configuration interaction, coupled cluster, reduced density matrices and density functional theory. Each class contains several methods that use different variants of the of the corresponding class, typically geared either to calculating a specific molecular property, or, to application to a special set of molecules. The abundance of these approaches shows that there is no single method suitable for all purposes.
It is, in principle, possible to use one exact method (for example, full configuration interaction) and apply it to all the molecules, but, although such methods are well-known and available in many programs, the computational cost of their use grows factorially (even faster than exponentially) in the number of electrons that the molecule has. Therefore a great number of approximate methods strive to achieve the best trade-off between accuracy and computational cost. Presently computational chemistry can routinely and very accurately calculate the properties of the molecules that contain no more than, say, 10 electrons. The treatment of molecules that contain a few dozen electrons is practically feasible only by more approximate methods, such as DFT.
There is some dispute within the field on whenether the latter methods are sufficient to accurately describe complex chemical reactions, such as those in biochemistry.
A number of software packages that are self-sufficient and include many quantum-chemical methods are available. Among the most widely used are GAUSSIAN, GAMESS, Q-Chem, ACES, MOLPRO, DALTON, Spartan and PSI.