TOPICS
Search

Crank-Nicolson Method


The Crank-Nicolson method is an implicit finite difference method for approximating solutions of partial differential equations, especially diffusion equations. It averages the spatial difference operator between the old and new time levels, corresponding to the trapezoidal rule in time.

For the one-dimensional heat conduction equation u_t=kappau_(xx) with kappa>0, let U_j^n approximate u(jh,nDeltat) and set r=kappaDeltat/h^2. The scheme is

 U_j^(n+1)-U_j^n=r/2[U_(j-1)^(n+1)-2U_j^(n+1)+U_(j+1)^(n+1)+U_(j-1)^n-2U_j^n+U_(j+1)^n].

With prescribed endpoint values, each time step requires solving a linear system of equations with a tridiagonal matrix. For sufficiently smooth solutions, the method is second order in both time and space.

For this linear diffusion problem with periodic or homogeneous fixed endpoint conditions, the scheme has numerical stability without a restriction on r. Numerical stability does not imply that all step sizes give accurate or nonoscillatory solutions. Large time steps can retain spurious oscillations in rapidly varying components of the data.


See also

Finite Difference, Heat Conduction Equation, Trapezoidal Rule, Tridiagonal Matrix

Explore with Wolfram|Alpha

References

Crank, J. and Nicolson, P. "A Practical Method for Numerical Evaluation of Solutions of Partial Differential Equations of the Heat-Conduction Type." Proc. Cambridge Philos. Soc. 43, 50-67, 1947. https://doi.org/10.1017/S0305004100023197.

Cite this as:

Weisstein, Eric W. "Crank-Nicolson Method." From MathWorld--A Wolfram Resource. https://mathworld.wolfram.com/Crank-NicolsonMethod.html

Subject classifications