Computational physics problems are in general very difficult to solve exactly. This is due to several (mathematical) reasons: lack of algebraic and/or analytic solvability,
complexity, and chaos. For example, even apparently simple problems, such as calculating the
wavefunction of an electron orbiting an atom in a strong
electric field (
Stark effect), may require great effort to formulate a practical algorithm (if one can be found); other cruder or brute-force techniques, such as
graphical methods or
root finding, may be required. On the more advanced side, mathematical
perturbation theory is also sometimes used (a working is shown for this particular example
here). In addition, the
computational cost and
computational complexity for
many-body problems (and their
classical counterparts) tend to grow quickly. A macroscopic system typically has a size of the order of 10^{23} constituent particles, so it is somewhat of a problem. Solving quantum mechanical problems is generally of
exponential order in the size of the system and for classical N-body it is of order N-squared. Finally, many physical systems are inherently nonlinear at best, and at worst
chaotic: this means it can be difficult to ensure any
numerical errors do not grow to the point of rendering the 'solution' useless. == Methods and algorithms ==