dds

10 Reputation

One Badge

19 years, 275 days

MaplePrimes Activity


These are questions asked by dds

Dear Maple Community,

I would like to ask you a question which will certainly be elementary for you. Imagine that I have a PDE (or, more generally, a system of PDEs) with (t, x) being independent variables, and the dependent variable defining the wave height or the fluid particle velocity u(t,x). The best example is the famous KdV equation:

u[t] + u*u[x] + u[x,x,x] = 0.

Now, I would like to automatically derive the ODE(s) that satisfy the travelling waves of this equation. Namely, we have to substitute the travelling wave ansatz u(t,x) = U(X) = U(x - c*t), where c is the travelling wave speed. In the case of the KdV equation, we obtain the following ODE:

-c*U' + U*U' + U''' = 0,

where prime ' denotes the derivative with respect to the new variable X.

My question is the following: What is the best way to automatically obtain this PDE -> ODE reduction in Maple?

Thanks a lot in advance!

Kind regards,

DDe

Dear Maple community,

I am facing a little problem verifying a power series solution obtained with Maple since the direct substitution back into the PDEs does not seem to be conclusive because the residual contains the powers of independent variables to almost any order.

Please see the enclosed Maple file with a minimal working example:

restart:

with(DETools):

PDE1 := diff(eta(t,x),t) + 1/2*diff(u(t,x),x) + 1/2*eta(t,x)*diff(u(t,x),x) - 1/48*diff(u(t,x),x$3) + diff(eta(t,x),x)*u(t,x);

diff(eta(t, x), t)+(1/2)*(diff(u(t, x), x))+(1/2)*eta(t, x)*(diff(u(t, x), x))-(1/48)*(diff(diff(diff(u(t, x), x), x), x))+(diff(eta(t, x), x))*u(t, x)

(1)

PDE2 := diff(u(t,x),t) + u(t,x)*diff(u(t,x),x) + diff(eta(t,x),x,t,t) + diff(eta(t,x),x) - 1/6*diff(u(t,x),x,x,t);

diff(u(t, x), t)+u(t, x)*(diff(u(t, x), x))+diff(diff(diff(eta(t, x), t), t), x)+diff(eta(t, x), x)-(1/6)*(diff(diff(diff(u(t, x), t), x), x))

(2)

sys := rifsimp([PDE1, PDE2]);

table( [( Solved ) = [diff(diff(diff(eta(t, x), t), t), x) = -u(t, x)*(diff(u(t, x), x))-(diff(u(t, x), t))+(1/6)*(diff(diff(diff(u(t, x), t), x), x))-(diff(eta(t, x), x)), diff(diff(diff(u(t, x), x), x), x) = 24*eta(t, x)*(diff(u(t, x), x))+48*(diff(eta(t, x), x))*u(t, x)+48*(diff(eta(t, x), t))+24*(diff(u(t, x), x))] ] )

(3)

id := initialdata(sys[Solved]);

table( [( Finite ) = [], ( Infinite ) = [eta(t, x[0]) = _F1(t), (D[2](eta))(t[0], x) = _F2(x), (D[1, 2](eta))(t[0], x) = _F3(x), u(t, x[0]) = _F4(t), (D[2](u))(t, x[0]) = _F5(t), (D[2, 2](u))(t, x[0]) = _F6(t)] ] )

(4)

sols := rtaylor(sys[Solved], id, point=[t = 0, x = 0], order = 3);

[eta(t, x) = _F1(0)+(D(_F1))(0)*t+_F2(0)*x+(1/2)*((D@@2)(_F1))(0)*t^2+_F3(0)*t*x+(1/2)*(D(_F2))(0)*x^2+(1/6)*((D@@3)(_F1))(0)*t^3+(1/2)*(-_F4(0)*_F5(0)-(D(_F4))(0)+(1/6)*(D(_F6))(0)-_F2(0))*t^2*x+(1/2)*(D(_F3))(0)*t*x^2+(1/6)*((D@@2)(_F2))(0)*x^3, u(t, x) = _F4(0)+(D(_F4))(0)*t+_F5(0)*x+(1/2)*((D@@2)(_F4))(0)*t^2+(D(_F5))(0)*t*x+(1/2)*_F6(0)*x^2+(1/6)*((D@@3)(_F4))(0)*t^3+(1/2)*((D@@2)(_F5))(0)*t^2*x+(1/2)*(D(_F6))(0)*t*x^2+(1/6)*(24*_F1(0)*_F5(0)+48*_F2(0)*_F4(0)+48*(D(_F1))(0)+24*_F5(0))*x^3]

(5)

assign(sols);

simplify(PDE1);

((D@@2)(_F1))(0)*t+_F3(0)*x+(1/2)*((D@@3)(_F1))(0)*t^2-t*(_F4(0)*_F5(0)+_F2(0)+(D(_F4))(0)-(1/6)*(D(_F6))(0))*x+(1/2)*(D(_F3))(0)*x^2+(1/2)*(D(_F5))(0)*t+(1/2)*_F6(0)*x+(1/4)*((D@@2)(_F5))(0)*t^2+(1/2)*(D(_F6))(0)*t*x+6*((_F1(0)+1)*_F5(0)+2*_F2(0)*_F4(0)+2*(D(_F1))(0))*x^2+(1/2)*(_F1(0)+(D(_F1))(0)*t+_F2(0)*x+(1/2)*((D@@2)(_F1))(0)*t^2+_F3(0)*t*x+(1/2)*(D(_F2))(0)*x^2+(1/6)*((D@@3)(_F1))(0)*t^3+(1/2)*(-_F4(0)*_F5(0)-(D(_F4))(0)+(1/6)*(D(_F6))(0)-_F2(0))*t^2*x+(1/2)*(D(_F3))(0)*t*x^2+(1/6)*((D@@2)(_F2))(0)*x^3)*(_F5(0)+(D(_F5))(0)*t+_F6(0)*x+(1/2)*((D@@2)(_F5))(0)*t^2+(D(_F6))(0)*t*x+(1/2)*(24*_F1(0)*_F5(0)+48*_F2(0)*_F4(0)+48*(D(_F1))(0)+24*_F5(0))*x^2)-(1/2)*_F1(0)*_F5(0)-_F2(0)*_F4(0)+(_F2(0)+_F3(0)*t+(D(_F2))(0)*x+(1/2)*(-_F4(0)*_F5(0)-(D(_F4))(0)+(1/6)*(D(_F6))(0)-_F2(0))*t^2+(D(_F3))(0)*t*x+(1/2)*((D@@2)(_F2))(0)*x^2)*(_F4(0)+(D(_F4))(0)*t+_F5(0)*x+(1/2)*((D@@2)(_F4))(0)*t^2+(D(_F5))(0)*t*x+(1/2)*_F6(0)*x^2+(1/6)*((D@@3)(_F4))(0)*t^3+(1/2)*((D@@2)(_F5))(0)*t^2*x+(1/2)*(D(_F6))(0)*t*x^2+(1/6)*(24*_F1(0)*_F5(0)+48*_F2(0)*_F4(0)+48*(D(_F1))(0)+24*_F5(0))*x^3)

(6)

simplify(PDE2);

((D@@2)(_F4))(0)*t+(D(_F5))(0)*x+(1/2)*((D@@3)(_F4))(0)*t^2+((D@@2)(_F5))(0)*t*x+(1/2)*(D(_F6))(0)*x^2+(_F4(0)+(D(_F4))(0)*t+_F5(0)*x+(1/2)*((D@@2)(_F4))(0)*t^2+(D(_F5))(0)*t*x+(1/2)*_F6(0)*x^2+(1/6)*((D@@3)(_F4))(0)*t^3+(1/2)*((D@@2)(_F5))(0)*t^2*x+(1/2)*(D(_F6))(0)*t*x^2+(1/6)*(24*_F1(0)*_F5(0)+48*_F2(0)*_F4(0)+48*(D(_F1))(0)+24*_F5(0))*x^3)*(_F5(0)+(D(_F5))(0)*t+_F6(0)*x+(1/2)*((D@@2)(_F5))(0)*t^2+(D(_F6))(0)*t*x+(1/2)*(24*_F1(0)*_F5(0)+48*_F2(0)*_F4(0)+48*(D(_F1))(0)+24*_F5(0))*x^2)-_F4(0)*_F5(0)+_F3(0)*t+(D(_F2))(0)*x-(1/2)*t^2*(_F4(0)*_F5(0)+_F2(0)+(D(_F4))(0)-(1/6)*(D(_F6))(0))+(D(_F3))(0)*t*x+(1/2)*((D@@2)(_F2))(0)*x^2

(7)

NULL

Download MinWorkingExa.mw

Thanks a lot in advance for any help or suggestions.

Kind regards,

DDe

Page 1 of 1