Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Crank-Nicolson vs Heun's method

  1. Apr 6, 2010 #1
    Hi, can someone tell me the difference between the Crank-Nicolson and Heun numerical methods? For Heun's method I'm looking here http://en.wikipedia.org/wiki/Heun's_method and for the Crank-Nicolson method I'm looking here http://en.wikipedia.org/wiki/Crank–Nicolson_method . When I actually carry out a calculation with equal timesteps for both methods and f(t,u)=-.5*u, I get the exact same solution.

    The equation I have for both is:

    u[tex]^{n+1}[/tex] = u[tex]^{n}[/tex] - [tex]\frac{1}{2}[/tex]u[tex]^{n}[/tex]dt - [tex]\frac{1}{8}[/tex]u[tex]^{n}[/tex]dt[tex]^{2}[/tex]
    Last edited by a moderator: Apr 25, 2017
  2. jcsd
  3. Apr 9, 2010 #2
    I'm no expert, but from what I can gather Heun's method is for ODE's while Crank-Nicolson is for PDE's?
  4. Apr 9, 2010 #3
    Heun's method is an improvement of the forward Euler's method which is an explicit method.
    While Crank-Nicolson method is an implicit method. Probably the improvement for the backward Euler method. This is the Crank-Nicolson method for ODE.

    But of course the Crank-Nicolson method is verypopular in PDE.
  5. Apr 10, 2010 #4
    Ah, in all cases I've come across Crank-Nicolson, it has been to solve PDEs.

    So, if I read my notes correctly, while both methods take an average of the current state and the state at the next timestep, the main difference between Heun's method and Crank-Nicolson is that for Heun's method you use a predictor for the next timestep, keeping it explicit, while for Crank-Nicolson it is used implicitly instead. At least that's my understanding.

    Using this I get some different results from yours, both with Crank-Nicolson and Heun's method, are you sure you do Heun's method correctly?
  6. Apr 10, 2010 #5


    User Avatar
    Staff Emeritus
    Science Advisor
    Homework Helper

    If we make that a +⅛ instead, I agree that Heun's method gives that equation. But I get something different for Crank-Nicolson.

    For Crank-Nicolson, ignore the x-dependence of u and we have
    (un+1 - un) / Δt = ½ ( -½ un+1 - ½ un)​
    Solve that for un+1 and we get something different than the Heun's method equation. (Though they do agree up to order Δt2.)
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook