SetDirectory["d:\\demorecursionoperator\\onweb04-28-09"]

Get["PDERecursionOperator.m"]

(* 
      Burgers' Equation *) 
RecursionOperator[
D[u[x, t],  t]  == 
        u[x, t]*D[u[x, t], x] + D[u[x, t], {x, 2}], 
u[x, 
        t], {x, t}]

RecursionOperator[
D[
          u[x, t],  t]  == 
        u[x, t]*D[u[x, t], x] + D[u[x, t], {x, 2}], 
u[x, 
        t], {x, t}, MaxExplicitDependency -> 1]

(* {{{C[5]*operatorD[-1]+C[5]*x*operatorD[0]+(2 C[5])*t*operatorD[1]+C[5]*t*u[x, t]*operatorD[0]+C[5]*t*Derivative[1, 0][u][x, t]*operatorD[-1]}}} *)

(* 
      Burger' s Equation with parameter (nu) *) 
RecursionOperator[
D[u[x, t], 
          t] == - u[x, t]*D[u[x, t], x]  +  ν*
            D[u[x, t],  {x, 2}], 
u[x, t], {x, 
        t}, {ν}]

RecursionOperator[
      D[u[x, t],  t]  ==  D[u[x, t], x]^2 + D[u[x, t], {x, 2}], 
      u[x, t], {x, 
        t}, 
WeightRules  ->  {weight[u] -> 
            1},  Seed -> 2]

RecursionOperator[
      D[u[x, t],  t]  ==  D[u[x, t], x]^2 + D[u[x, t], {x, 2}], 
      u[x, t], {x, t}, 
      WeightRules -> {weight[u] -> -weight[x]}, Seed -> 2, 
      MaxExplicitDependency  -> 1]

(* Diffusion Equation *) 
 (* 
      R1 is composed of the nonpolynomial ρ  =  
        1/u ( 
            or cosymmetry 1/(u^2) ) *) 
 (* RecursionOperator[
D[u[x, t], t]  ==  
          u[x, t]^2*D[u[x, t], {x, 2}], 
u[x, t], {x, t},  
        WeightRules -> {weight[
                u] -> -weight[
                  x]}]
*)

(* 
      The Korteweg - 
        de Vries Equation *) 
RecursionOperator[
D[u[x, t], t]  ==  
        6*u[x, t]*D[u[x, t], x] + D[u[x, t], {x, 3}], 
u[x, 
        t], {x, t}]

(* 
      Potential Korteweg - 
        de Vries Equation *) 
RecursionOperator[
D[u[x, t], t]  ==  
        3*D[u[x, t], x]^2 + D[u[x, t], {x, 3}], 
      u[x, t], {x, t}]

(* 
      Modified Korteweg - 
        de Vries Equation *) 
RecursionOperator[
D[u[x, t], t]  ==  
        u[x, t]^2*D[u[x, t], x] + D[u[x, t], {x, 3}], 
u[x, 
        t], {x, t}]

(* 
      Potential Modified Korteweg - 
        de Vries Equation *) 
RecursionOperator[
D[u[x, t],  t]  ==  
        1/3*D[u[x, t], x]^3 + D[u[x, t], {x, 3}], 
u[x, 
        t], {x, t},  
WeightRules  ->  {weight[
              u] -> 1}, 
Seed  ->  
        2
]

(* 
      Kupershmidt Equation *) 
RecursionOperator[
D[u[x, t], t] == 
        D[u[x, t], {x, 5}] + 5*D[u[x, t], x]*D[u[x, t], {x, 3}] + 
          5*D[u[x, t], {x, 2}]^2 - 5*u[x, t]^2*D[u[x, t], {x, 3}] - 
          20*u[x, t]*D[u[x, t], x]*D[u[x, t], {x, 2}] - 5*D[u[x, t], x]^3 + 
          5*u[x, t]^4*D[u[x, t], x], 
u[x, t], {x, t}, 
      Seed -> 2]

(* 
      Potential Kupershmidt Equation *) 
 (* 
      Should have a recursion operator of rank 6.  *) 
 (* Requires that weight[u]  ->  0,  
      which is not compatible with InvariantSymmetries . 
          m .  *) 
  (* 
      RecursionOperator[
D[u[x, t], t] == 
          D[u[x, t], {x, 5}] + w[1]*5*D[u[x, t], {x, 2}]*D[u[x, t], {x, 3}] - 
            w[2]*5*D[u[x, t], x]^2*D[u[x, t], {x, 3}] - 
            w[2]*5*D[u[x, t], x]*D[u[x, t], {x, 2}]^2 + 
            w[3]*D[u[x, t], x]^5, 
u[x, t], {x, 
          t}]
*)

RecursionOperator[
      D[u[x, t],  t]  ==  
        5*u[x, t]^2*D[u[x, t], x] + 5*u[x, t]*D[u[x, t], {x, 3}] + 
          5*D[u[x, t], x]*D[u[x, t], {x, 2}] + D[u[x, t], {x, 5}], 
      u[x, t], {x, t},  Seed  ->  2]

\(\(\( (*\ 
      Potential\ Sawada - 
        Kotera\ Equation\ *) \)\(
\)\(RecursionOperator[
      D[u[x, t], \ t]\  == \ 
        5/3*D[u[x, t], x]^3 + 5*D[u[x, t], x]*D[u[x, t], {x, 3}] + 
          D[u[x, t], {x, 5}], u[x, t], {x, t}, \ 
      Seed\  -> \ 2
]\)\)\)

\(\(\( (*\ 
      Kaup - Kupershmidt\ Equation\ *) \)\(
\)\(RecursionOperator[
      D[u[x, t], \ t]\  == \ 
        20*u[x, t]^2*D[u[x, t], x] + 25*D[u[x, t], x]*D[u[x, t], {x, 2}] + 
          10*u[x, t]*D[u[x, t], {x, 3}] + D[u[x, t], {x, 5}], 
      u[x, t], {x, t}, \ Seed -> 2
]\)\)\)

\(\(\( (*\ 
      Kaup - Kupershmidt\ Equation\ \((scaled)\)\ *) \)\(
\)\(RecursionOperator[
      D[u[x, t], \ t]\  == \ 
        5*u[x, t]^2*D[u[x, t], x] + 25/2*D[u[x, t], x]*D[u[x, t], {x, 2}] + 
          5*u[x, t]*D[u[x, t], {x, 3}] + D[u[x, t], {x, 5}], 
      u[x, t], {x, t}, \ Seed\  -> \ 2
]\)\)\)

\(\(\( (*\ 
      Potential\ Kaup - 
        Kupershmidt\ Equation\ *) \)\(
\)\(RecursionOperator[
      D[u[x, t], \ t]\  == \ 
        D[u[x, t], \ {x, 5}]\  + \ 
          10*D[u[x, t], \ x]*D[u[x, t], \ {x, \ 3}]\  + \ 
          15/2*D[u[x, t], \ {x, \ 2}]^2\  + \ 
          20/3*D[u[x, t], \ x]^3, 
u[x, t], {x, t}, 
      Seed\  -> 2
]\)\)\)

(* 
      Gardner Equation *) 
RecursionOperator[
D[w[x, t],  t]  == 
        6*(w[x, t]  +  ϵ^2*w[x, t]^2)*D[w[x, t],  x]  -  
          D[w[x, t],  {x, 3}], 
w[x, t], {x, 
        t}, {ϵ}, Seed -> 2]

RecursionOperator[
      D[u[x, t],  t]  ==  
        30*u[x, t]^2*D[u[x, t], x] + 20*D[u[x, t], x]*D[u[x, t], {x, 2}] + 
          10*u[x, t]*D[u[x, t], {x, 3}] + D[u[x, t], {x, 5}], 
      u[x, t], {x, t}]

(* 
      Caudrey - Dodd - Gibbon - Sawada - 
        Kotera Equation *) 
RecursionOperator[
D[u[x, t], t]  ==  -D[u[x, t],  {x,  5}]  -  
          30*u[x, t]*D[u[x, t],  {x, 3}]  -  
          30*D[u[x, t],  x]*D[u[x, t],  {x, 2}]  -  
          180*u[x, t]^2*D[u[x, t], x], 
u[x, 
        t], 
{x, t},  
      Seed -> 2
]

RecursionOperator[{D[u[x, t],  t]  ==  
          u[x, t]*D[v[x, t], x] + D[u[x, t], x]*v[x, t], 
        D[v[x, t],  t]  ==  
          D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, {u[x, t], v[x, t]}, {x, 
        t}]

RecursionOperator[{D[u[x, t],  t]  ==  
          u[x, t]*D[v[x, t], x] + D[u[x, t], x]*v[x, t], 
        D[v[x, t],  t]  ==  
          D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, {u[x, t], v[x, t]}, {x, 
        t},  WeightRules  ->  {weight[v] -> 1}]

RecursionOperator[{D[u[x, t],  t]  ==  
          D[u[x, t], {x, 2}] + v[x, t]^2, 
        D[v[x, t], t]  ==  D[v[x, t], {x, 2}]}, {u[x, t], 
        v[x, t]}, {x, t}, WeightRules -> {weight[u] -> weight[v]}, 
      RankShift -> -1 ]

RecursionOperator[{D[u[x, t],  t]  ==  
          D[u[x, t], {x, 2}] + v[x, t]^2, 
        D[v[x, t], t]  ==  D[v[x, t], {x, 2}]}, {u[x, t], 
        v[x, t]}, {x, t}, 
      WeightRules -> {weight[u] -> weight[v]} ]

RecursionOperator[{D[
            u[x, t],  t]  ==  
          2*u[x, t]^2*v[x, t] - D[u[x, t], {x, 2}], 
        D[v[x, t],  t]  ==  -2*u[x, t]*v[x, t]^2 + 
            D[v[x, t], {x, 2}]}, {u[x, t], v[x, t]}, {x, t}]

RecursionOperator[{D[u[x, t],  t]  ==  
          2*u[x, t]^2*v[x, t] - D[u[x, t], {x, 2}], 
        D[v[x, t],  t]  ==  -2*u[x, t]*v[x, t]^2 + 
            D[v[x, t], {x, 2}]}, {u[x, t], v[x, t]}, {x, t},  
      WeightRules -> {weight[u]  ->  weight[v]}]

RecursionOperator[
{D[
            u[x, t], t] == 
          D[v[x, t], {x, 2}] + 
            v[x, t]*(u[x, t]^2 + v[x, t]^2), 
D[
            v[x, t], t] == -D[u[x, t], {x, 2}] - 
            u[x, t]*(u[x, t]^2 + v[x, t]^2)}, 
{u[x, 
          t], v[x, t]}, {x, t}]

RecursionOperator[
{D[u[x, t], t] == 
          D[v[x, t], {x, 2}] - 
            v[x, t]*(u[x, t]^2 + v[x, t]^2), 
D[
            v[x, t], t] == -D[u[x, t], {x, 2}] + 
            u[x, t]*(u[x, t]^2 + v[x, t]^2)}, 
{u[x, 
          t], v[x, t]}, {x, t}]

RecursionOperator[
{D[
            u[x, t], 
            t] == -D[v[x, t], {x, 2}] - (u[x, t]^2 + v[x, t]^2)*
              D[u[x, t], x], 
D[v[x, t], t] == 
          D[u[x, t], {x, 2}] - (u[x, t]^2 + v[x, t]^2)*
              D[v[x, t], x]}, 
{u[x, t], v[x, t]}, {x, 
        t}]

(* 
      Modified Derivative Nonlinear Schrodinger System *) 
RecursionOperator[
{D[u[x, t],  
            t]  ==  D[
            u[x, t]*(u[x, t]^2 + v[x, t]^2)  +  β*u[x, t] - 
              D[v[x, t], x], x], 
D[v[x, t], 
            t]  == 
D[
            v[x, t]*(u[x, t]^2 + v[x, t]^2) + D[u[x, t], x], 
            x]}, 
{u[x, t], v[x, t]}, {x, t}, {β}, 
      WeightedParameters  ->  {β}]

(* 
      Boussinesq System [
          Ablowitz `91] *) 
RecursionOperator[
{D[u[x, t], t] == 
          D[u[x, t]*v[x, t], x] + D[v[x, t], {x, 3}], 
D[
            v[x, t], t] == 
          D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, 
{u[x, 
          t], v[x, t]}, {x, t}]

(* 
      Boussinesq System *) 
RecursionOperator[
{D[u[x, t],  t]  ==  
          D[v[x, t], x], 
 
        D[v[x, t],  t]  == 
          1/3*D[u[x, t],  {x, 3}]  + 
            8/3*u[x, t]*D[u[x, t],  x]}, 
{u[x, t], 
        v[x, t]}, {x, t},  Seed -> 2]

RecursionOperator[
{D[
            u[x, t],  t]  ==  
          3*D[v[x, t], {x, 2}] + 6*u[x, t]*D[v[x, t], x] + 
            6*D[u[x, t], x]*v[x, t], 
D[v[x, t],  
            t]  ==  -D[u[x, t], {x, 2}] - 6*v[x, t]*D[v[x, t], x] + 
            2*u[x, t]*D[u[x, t], x]}, 
{u[x, t], 
        v[x, t]}, {x, t}, Seed  ->  2]

RecursionOperator[
{D[
            u[x, t], t]  ==  
          1/2*(6*u[x, t]*D[u[x, t],  x]  +  D[u[x, t],  {x, 3}]) - 
            2*v[x, t]*D[v[x, t],  x], 
D[v[x, t],  
            t]  ==  -3*u[x, t]*D[v[x, t],  x]  -  
            D[v[x, t],  {x, 3}]}, 
{u[x, t], v[x, t]}, {x, 
        t}, Seed -> 2]

(* 
      Symmetrically Coupled Korteweg - 
        de Vries System *) 
RecursionOperator[
{D[u[x, t], t] == 
          D[u[x, t], {x, 3}] + D[v[x, t], {x, 3}] + 6*u[x, t]*D[u[x, t], x] + 
            4*u[x, t]*D[v[x, t], x] + 
            2*D[u[x, t], x]*v[x, t], 
D[v[x, t], 
            t] == 
          D[u[x, t], {x, 3}] + D[v[x, t], {x, 3}] + 6*v[x, t]*D[v[x, t], x] + 
            4*v[x, t]*D[u[x, t], x] + 
            2*D[v[x, t], x]*u[x, t]}, 
{u[x, t], 
        v[x, t]}, {x, t}, Seed -> 2, 
      RankShift -> -1]

RecursionOperator[
{D[
            u[x, t], t] == 
          D[u[x, t], {x, 3}] + 6*u[x, t]*D[u[x, t], x] + 
            6*v[x, t]*D[v[x, t], x], 
D[v[x, t], 
            t] == 
          D[v[x, t], {x, 3}] + 6*u[x, t]*D[v[x, t], x] + 
            6*v[x, t]*D[u[x, t], x]}, 
{u[x, t], 
        v[x, t]}, {x, t}]

(* 
      Ito System (Coupled Nonlinear Wave System) *) 
RecursionOperator[
{D[u[x, t], 
            t] == 
          D[u[x, t], {x, 3}] + 6*u[x, t]*D[u[x, t], x] + 
            2*v[x, t]*D[v[x, t], x], 
D[v[x, t], 
            t] == 
          2*u[x, t]*D[v[x, t], x] + 
            2*D[u[x, t], x]*v[x, t]}, 
{u[x, t], 
        v[x, t]}, {x, t}]

(* 
      Drinfel' d - Sokolov - 
        Wilson System *) 
RecursionOperator[
{D[u[x, t],  t]  ==  
          3*v[x, t]*D[v[x, t],  x], 
D[v[x, t],  
            t]  ==  
          2*D[v[x, t],  {x, 3}]  +  2*u[x, t]*D[v[x, t],  x]  +  
            D[u[x, t], x]*v[x, t]}, 
{u[x, t],  
        v[x, t]}, {x, t}, Seed -> 3]

(* 
      Benney System *) 
RecursionOperator[
{D[u[x, t], t] == 
          v[x, t]*D[v[x, t], x] + 
            2*D[u[x, t]*w[x, t], x], 
D[v[x, t], 
            t] == 
          2*D[u[x, t], x] + D[v[x, t]*w[x, t], x], 
D[
            w[x, t], t] == 
          2*D[v[x, t], x] + 2*w[x, t]*D[w[x, t], x]}, 
{u[
          x, t], v[x, t], w[x, t]}, {x, t}, 
      WeightRules -> {weight[w] -> 1}]

\(\(\( (*\ 
      Meuris - Deconinck - 
        Verheest\ System\ *) \)\(\ \)\(
\)\(RecursionOperator[{D[u[x, t], \ 
            t]\  == \ β*D[u[x, t], x] + 
            3*D[u[x, t], x]*u[x, t]^2 + D[u[x, t], x]*v[x, t]^2 + 
            2*u[x, t]*D[v[x, t], x]*v[x, t] - 
            D[v[x, t], {x, 2}] + γ*D[v[x, t], x], 
        D[v[x, t], \ t]\  == 
          D[u[x, t], {x, 2}] + θ*D[u[x, t], x] + 
            2*D[u[x, t], x]*u[x, t]*v[x, t] + 
            u[x, t]^2*D[v[x, t], x] + δ*D[v[x, t], x] + 
            3*D[v[x, t], x]*v[x, t]^2}, {u[x, t], v[x, t]}, {x, 
        t}, \ {β, γ, δ, θ}, \ 
      WeightedParameters\  -> \ {β, γ, δ, θ}]\)\)\)

RecursionOperator[
{D[u[x, t], t] == 
          u[x, t]*D[v[x, t], x] + 1/2*D[u[x, t], x]*v[x, t] - 
            1/4*D[v[x, t], {x, 3}], 
D[v[x, t], t] == 
          D[u[x, t], x] + 3/2*v[x, t]*D[v[x, t], x]}, 
{u[
          x, t], v[x, t]}, {x, t}]

(* 
      Dispersive Water Wave equation of Kuperschmidt *) 
 (* 
      Clarkson and Ludlow,  
Symmetry Reductions,  
      Exact Solutions,  
      and Painleve Analysis for a Generalized Boussinesq Equation,  
J .  Math .  Anal .  and Appl.,  
      186,  132-- 155,  (1994).*)

RecursionOperator[
{D[u[x, t], t] == 
            D[u[x, t]*v[x, t], x] + a*D[v[x, t], {x, 3}] - 
              b*D[u[x, t], {x, 2}], 
D[v[x, t], t] == 
            D[u[x, t], x] + v[x, t]*D[v[x, t], x] + 
              b*D[v[x, t], {x, 2}]}  /.  {a -> 1, 
          b -> 1}, 
{u[x, t], v[x, t]}, {x, 
        t}]

(* 
      Dispersiveless Long Wave System *) 
{RecursionOperator[
{D[
              u[x, t], t] == 
            u[x, t]*D[v[x, t], x] + 
              D[u[x, t], x]*v[x, t], 
D[v[x, t], 
              t] == 
            D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, 
{u[x, 
            t], v[x, t]}, {x, t},  
        WeightRules  ->  {weight[v] -> 
              1}, 
RankShift  -> -1
], 
RecursionOperator[
{D[u[x, t], 
              t] == 
            u[x, t]*D[v[x, t], x] + 
              D[u[x, t], x]*v[x, t], 
D[v[x, t], 
              t] == 
            D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, 
{u[x, 
            t], v[x, t]}, {x, t},  
        WeightRules  ->  {weight[v] -> 
              1}
], 
RecursionOperator[
{D[u[x, t], t] == 
            u[x, t]*D[v[x, t], x] + 
              D[u[x, t], x]*v[x, t], 
D[v[x, t], 
              t] == 
            D[u[x, t], x] + v[x, t]*D[v[x, t], x]}, 
{u[x, 
            t], v[x, t]}, {x, t},  
        WeightRules  ->  {weight[v] -> 
              1}, 
RankShift  -> 
          1
]}