Message Boards Message Boards

GROUPS:

Numerical solution by NDSolve has discontinuity

Posted 5 months ago
528 Views
|
2 Replies
|
3 Total Likes
|

For the given ODE

$uu_{ttt}-u_{t}u_{tt} + u^3 u_{t}=0,$

I am trying to do a comparison between numerical and analytical results. Analytically, I got the solution of sech, but for a numeric solution, I used NDSolve, it fives discontinuity in the solution. Why?

POSTED BY: A Afi
2 Replies

I don't see any discontinuities when I run the code (V13.2). You cut off the plot range, which creates a break in the graph, but that is not a discontinuity in the solution. Extend the plot range to ±2.25 and you should see the entire solution.

POSTED BY: Michael Rogers
Posted 8 days ago

Hi A, don't be surprised. The identity that produces Sech as the soution to the KdV equation involves the inversion of the elliptic integral F[ArcSinh.] in order to get an solution x-> sech 0 d/dx JacobiAmplitude[x,1].

But the general JacobiAmplitude is probably ill defined in Mathematica. It has jumps by 4 Pi at the peridodicity point +- 4 K on the real line.

All this mess stems from the fact that the JacobiAmplitude is a complex line integral over JacobiDN that has a lattice of simple poles in the complex domai. The choice of the path of integration around all the logarithmic branch points to choice is the decision of the IT-specialist who in general has as little knowldege about elliptic functions as most mathematicians.

This ambiguity is at the heart of the impossibility to verify solutions to our beloved models solvable nonlinear PDE's KdV and sineGordon.

In[28]:= DSolve[ u'''[t] u[t] - u'[t]*u''[t] + u[t]^3 u'[t] == 0, 
 u[t], t]

Out[28]= {{u[t] -> 
   InverseFunction[-((2 I EllipticF[
            I ArcSinh[(Sqrt[1/(-C[2] + Sqrt[-C[1] + C[2]^2])] #1)/
              Sqrt[2]], (C[2] - Sqrt[-C[1] + C[2]^2])/(
            C[2] + Sqrt[-C[1] + C[2]^2])] Sqrt[
           1 + #1^2/(2 (-C[2] + Sqrt[-C[1] + C[2]^2]))] Sqrt[
           1 - #1^2/(2 (C[2] + Sqrt[-C[1] + C[2]^2]))])/(Sqrt[
           1/(-C[2] + Sqrt[-C[1] + C[2]^2])]
            Sqrt[-2 C[1] + 2 C[2] #1^2 - #1^4/2])) &][t + C[3]]}, {u[
    t] -> InverseFunction[(2 I EllipticF[
          I ArcSinh[(Sqrt[1/(-C[2] + Sqrt[-C[1] + C[2]^2])] #1)/Sqrt[
            2]], (C[2] - Sqrt[-C[1] + C[2]^2])/(
          C[2] + Sqrt[-C[1] + C[2]^2])] Sqrt[
         1 + #1^2/(2 (-C[2] + Sqrt[-C[1] + C[2]^2]))] Sqrt[
         1 - #1^2/(2 (C[2] + Sqrt[-C[1] + C[2]^2]))])/(Sqrt[
         1/(-C[2] + Sqrt[-C[1] + C[2]^2])]
          Sqrt[-2 C[1] + 2 C[2] #1^2 - #1^4/2]) &][t + C[3]]}}

In[25]:= MapAll[
 FullSimplify[
   PowerExpand[
    Simplify[# /. {(C[2] - Sqrt[-C[1] + C[2]^2])/(
        C[2] + Sqrt[-C[1] + C[2]^2]) -> 
        4/\[Omega]^2 ((-C[2] + Sqrt[-C[1] + C[2]^2])^(-(1/2)) #1)/
          Sqrt[2] :> A #1 } ]] ] &, 
 DSolve[ u'''[t] u[t] - u'[t]*u''[t] + u[t]^3 u'[t] == 0, u[t], t]] 

Out[25]= $Aborted

In[9]:= u'''[t] u[t] - u'[t]*u''[t] + 
   u[t]^3 u'[t] /. {u -> (Sech[ #/2] &)} // FullSimplify

Out[9]= 0

In[27]:= [PartialD]_x JacobiAmplitude[x, 1]

Out[27]= Sech[x]

Regards Roland

POSTED BY: Updating Name
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract