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


  1. Jan 13, 2014 #1
    Hi guys,

    I need to simulate wave propagation for a nonlinear dispersive wave PDE and since I can't find proper resources for handling nonlinear PDEs numerically, I would appreciate any help and clues.

    the PDE is in the form of


    BC: Clamped at both ends
    IC: u(x,0)=f, ut(x,0)=g
    Last edited: Jan 14, 2014
  2. jcsd
  3. Jan 13, 2014 #2
    What are the initial and boundary conditions?
  4. Jan 14, 2014 #3
    I assume that clamped at both ends means zero displacement and zero slope, correct? You need to solve the equation numerically. You can use central differences wr to time and x. You can look up finite difference approximations to the derivatives in Abramowitz and Stegun. Also, the following link presents some good numerical schemes you can use:

    Skip the first part where they talk about analytic methods.
  5. Jan 14, 2014 #4
    Thanks Chester for your reply.

    yes, that means zero displacement at both ends.

    finite difference (FD) is the first approach that came in mind and I searched over internet to find similar PDEs with FD, and all I found was linear wave PDE (same as your link), or nonlinear first order hyperbolic PDEs.
    My question is more about nonlinear and dispersive terms in this PDE which I don't know how to treat them with this approach, or even if the FD method is the best option for this problem.
    or among FD approaches which one is better for this type of problem? Central? forward? backward? Upwind? Lax-Wendroff? Crank-Nicolson?

  6. Jan 14, 2014 #5
    This can't take more than a couple of hours to program using explicit finite differences, with central differences in time and space. For time, use the same explicit approach as linear, with (ut+Δt-2ut+ut-Δt)/(Δt)2 for the time derivative. If that doesn't stay stable, I would go directly to fully implicit at t + Δt. But I think that if you use explicit, you can control stability with a small enough time step and get what you want in a manageable amount of computation time.


Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Similar Discussions: NUMERICAL approach to NONLINEAR PDE