6

I have a PDE (1D Schrödinger equation) as follows:

enter image description here

Applying the following transformations to the PDE, enter image description here

we get the following ODE:

enter image description here

I am trying to use @Kuba 's DChange package in the link. But I can't get the results.

 pde = I *D[u[x, y, t], t] - 
   1/2 D[u[x, y, t], {x, 2}] - ( Abs[u[x, y, t]]^2 - A)*u[x, y, t] == 0;

DChange[pde, {u[x, y, t] == U[ξ]E^(Iθ), ξ == x + y + αt, θ == αx + βy + γt}, {x, y, t}, {ξ}, {u[x, y, t]}]

RF_1
  • 672
  • 2
  • 7
  • Maple 2021 answers $$ u! \left(x,t\right)=-\frac{\tanh! \left(\frac{3 ,\mathrm{I} A t}{4}-\frac{\sqrt{-A}, x}{2}-\textit{_}\mathit{C1}\right) \mathrm{\sqrt{A}}}{2}-\frac{\sqrt{A}}{2}$$ and that was verified for $A=1$. – user64494 Jun 17 '21 at 15:42
  • @RF_1 Try to use u = U[\[Xi]]* E^(I*\[Theta]) /. {\[Xi] -> x + y + \[Alpha]*t, \[Theta] -> \[Alpha]*x + \[Beta]* y + \[Gamma]*t}; and I*D[u, t] - 1/2 D[u, {x, 2}] - (Abs[u]^2 - A)* u /. {Im[x \[Alpha] + y \[Beta] + t \[Gamma]] -> 0, (x \[Alpha] + y \[Beta] + t \[Gamma]) -> 0} // FullSimplify – Alex Trounev Jun 17 '21 at 16:22
  • 2
    How to achieve the transformation above using DSolveChangeVariables introduced in Mathematica 13.1? please make this separate question. – Nasser Jul 02 '22 at 05:35
  • I have shared a new question – RF_1 Jul 02 '22 at 06:13
  • The new question is here: https://mathematica.stackexchange.com/q/270262/1871 – xzczd Jul 02 '22 at 06:46

1 Answers1

7

If you read the description of DChange carefully, you'll find DChange owns 3 usages:

Usage:

DChange[expresion, {transformations}, {oldVars}, {newVars}, {functions}]

DChange[expresion, "Coordinates1"->"Coordinates2", ...]

DChange[expresion, {functionsSubstitutions}]

You can also skip {} if a list has only one element.

The first 2 are for change of independent variables, the last 1 for dependent variables, but you've mixed up 1st and 3rd. The correct usage should be:

DChange[pde, {ξ == x + y + α t, θ == α x + β y + γ t}, {x, t}, {ξ, θ}, u[x, y, t]]

DChange[%, u[ξ, y, θ] == U[ξ] E^(I θ)]

Assuming[{θ ∈ Reals}, Simplify@%] (* (2 A + α^2 - 2 γ - 2 Abs[U[ξ]]^2) U[ξ] == U''[ξ] *)

Not exactly the same as the one in the picture, but I think it's obvious mine is correct, unless you forgot to mention $u(\xi)>0$ in the question.

BTW, given the example is relatively simple, it's not too bad a choice to transform without DChange:

func[x_, y_, t_] = With[{ξ = x + y + α t, θ = α x + β y + γ t}, U[ξ] E^(I θ)]

Assuming[{{x, y, t, α, β, γ} ∈ Reals}, pde /. u -> func // Simplify] /. x + y + α t -> ξ

xzczd
  • 65,995
  • 9
  • 163
  • 468