1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Numerical solution to the second order wave equation

  1. Nov 7, 2011 #1
    1. The problem statement, all variables and given/known data
    Consider the second order wave equation

    [tex]u_{tt} = 4u_{xx}[/tex]

    There are initial and boundary conditions attached, but I'm less concerned with those for the moment. I think I can figure those out if I can figure out where to get started.

    Rewrite this as a system of first order equations of the form [itex]\mathbf{u}_t = A\mathbf{u}_x + B\mathbf{u}[/itex] where [itex]\mathbf{u} = (u,u_t,u_x)^T[/itex] and solve using the Crank-Nicolson method.


    2. Relevant equations

    The Crank-Nicolson method (which is implicit) is given by

    [tex]u_j^{n+1} - (1/4)\lambda(u_{j+1}^{n+1} - u_{j-1}^{1}) = u_j^n + (1/4)\lambda(u_{j+1}^n - j_{j-1}^n[/tex]

    3. The attempt at a solution

    The first thing I did was to rewrite the equation as a system, as instructed. This came out to be

    [tex]\left[\begin{array}{c}u \\ u_t \\ u_x\end{array}\right]_t = \left[\begin{array}{ccc}0 & 0 &0\\ 0&0&4\\ 0&1&0\end{array}\right]\left[\begin{array}{c}u\\ u_t \\ u_x\end{array}\right]_x + \left[\begin{array}{ccc}0 & 1 &0\\ 0&0&0\\ 0&0&0\end{array}\right]\left[\begin{array}{c}u\\ u_t \\ u_x\end{array}\right] [/tex]

    I feel stuck from here, though. Typically when you deal with systems of equations in PDEs, you decouple the system by diagonalizing it. This was the suggested step even in this case, in one of the books I found. You write [itex]A = T^{-1}\Lambda T[/itex] and premultiply by T to get

    [tex]T\mathbf{u}_t = \Lambda T\mathbf{u}_x + TB\mathbf{u}[/tex]

    In theory, then, you can make a change of variables [itex]w = Tu[/itex] to get a completely decoupled system. In this case, however, the presence of that u term makes it impossible to completely decouple. After computing T, I ended up with this system:

    [tex]\mathbf{v}_t = \left[\begin{array}{ccc}-2 & 0 &0\\ 0&2&0\\ 0&0&0\end{array}\right]\mathbf{v}_x + \left[\begin{array}{ccc}0 & 0 &0\\ 0&-2&0\\ 0&1&0\end{array}\right]\mathbf{u}[/tex]

    I'm not sure where to go from here, since I can't even eliminate u. Does anyone have any experience with this? Thanks!

    edit: forgot to include u at the end
     
    Last edited: Nov 7, 2011
  2. jcsd
  3. Nov 8, 2011 #2
    Is the transformation matrix T a matrix of eigenvectors?
     
  4. Nov 9, 2011 #3
    Yes, T is a matrix of eigenvectors with [itex]\Lambda[/itex] the corresponding diagonal matrix of eigenvalues
     
  5. Nov 9, 2011 #4
    I'll post, step by step, how I used this method for a heat conduction problem a number of years ago. First I'll try photographing it from a journal article. If that is illegible, I'll type it out. Equation will be first order in time. I'll post within 2 hours.
     
  6. Nov 9, 2011 #5
    Awesome, thank you!
     
  7. Nov 9, 2011 #6
    Here are some pictures of pages from something that belongs to me so there are no copyright issues. I'm not a lawyer. Method is same as was used in journal article I cited above. Hope this helps you out.
     

    Attached Files:

  8. Nov 9, 2011 #7
    That was very helpful. Thank you again!
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook