Некоторые точные решения

К лекции 4 (2024)

мКдФ

. (SuperPlus[мКдФ])

eq[v_]:=-D[v,t]+D[v,x,x,x]+6(v^2)D[v,x]
Simplify[eq[(k/(Cosh[k x+(k^3)t+d]))]]

. (SuperMinus[мКдФ])

u=a Tanh[a x-2(a^3) t+d];
Simplify[D[u,t]-D[D[u,x,x]-2(u^3),x]]

Plot[u/.{a->1,d->0,t->1},{x,-7,7},
PlotStyle->{Blue},
PlotRange->{-1.15,1.15},
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x","u"}]

Проиллюстрируем один способ рекуррентного построения решений (при помощи преобразований Бэклнда; будет объяснено позже на лекциях).

F[a_,d_]:=-a Tanh[a x+4 (a^3)t+d]
u=F[a,d]
Simplify[-D[u,t]+D[u,x,x,x]-6((u^2)-(a^2))D[u,x]]

F[a1_,d1_,a2_,d2_]=-F[a1,d1]-(((a2^2)-(a1^2))/(F[a1,d1]-F[a2,d2]))
u=F[a1,d1,a2,d2]
Together[TrigToExp[-D[u,t]+D[u,x,x,x]-6((u^2)-(a2^2))D[u,x]]]

F[a1_,d1_,a2_,d2_,a3_,d3_]:=-F[a1,d1,a2,d2]-(((a3^2)-(a2^2))/(F[a1,d1,a2,d2]-F[a1,d1,a3,d3]))

u=F[a1,d1,a2,d2,a3,d3]
Together[TrigToExp[-D[u,t]+D[u,x,x,x]-6((u^2)-(a3^2))D[u,x]]]

Tanh[x+I π/2]

Manipulate[
Plot[F[a1,d1,a2,d2+I π/2,a3,d3]/.t->tt,{x,-40,40},
PlotStyle->{Blue},
PlotRange->{-2.15,2.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->500,
AxesLabel->{"x","u"}],
{{a1,0.6},0,2,Appearance->"Labeled"},
{{a2,0.8},0,2,Appearance->"Labeled"},
{{a3,1},0,2,Appearance->"Labeled"},
{{d1,0},-5,5,Appearance->"Labeled"},
{{d2,0},-5,5,Appearance->"Labeled"},
{{d3,3},-5,5,Appearance->"Labeled"},
{{tt,0},-12,12,Appearance->"Labeled"}]

Bsq  (Subscript[u, tt])=±(Subscript[((Subscript[u, xx])+3(u^2)), xx])

. (Subscript[u, tt])=(Subscript[((Subscript[u, xx])+3(u^2)), xx])

В отличие от КдФ, солитоны могут двигаться в любую сторону

eq[u_]:=-D[u,t,t]+D[D[u,x,x]+3(u^2),x,x]

uBq1[x_,t_,k_,d_]=((2 (k^2))/((Cosh[k x+2 (k^2)t+d])^2))
uBq2[x_,t_,k_,d_]=((2 (k^2))/((Cosh[k x-2 (k^2)t+d])^2))

Simplify[{eq[uBq1[x,t,k,d]],eq[uBq2[x,t,k,d]]}]

Manipulate[
Plot[uBq1[x,t,k,0],{x,-20,20},
PlotStyle->{Blue},
PlotRange->{-2.15,2.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->300,
AxesLabel->{"x","u"}],
{{k,1},-2,2,Appearance->"Labeled"},
{{t,0},-2,2,Appearance->"Labeled"}]

. (Subscript[u, tt])=-(Subscript[((Subscript[u, xx])+3(u^2)), xx])

Тригонометрическое решение

Clear[u1,u2]
eq[u_]:=D[u,t,t]+D[D[u,x,x]+3(u^2),x,x]

uBqm1[x_,t_,k_,d_]=-((2 (k^2))/((Cos[k x+2 (k^2)t+d])^2))
uBqm2[x_,t_,k_,d_]=-((2 (k^2))/((Cos[k x-2 (k^2)t+d])^2))

Simplify[{eq[uBqm1[x,t,k,d]],eq[uBqm2[x,t,k,d]]}]

Manipulate[
Plot[uBqm1[x,t,1,0],{x,-20,20},
PlotStyle->{Blue},
PlotRange->{-5.15,0.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->300,
AxesLabel->{"x","u"}],
{{t,0},-2,2,Appearance->"Labeled"}]

(NLS^±)     i (Subscript[q, t]) = (Subscript[q, xx]) ± 2((|q|)^2)q,    q=u+i v

Общие формулы для быстроубывающего n-солитонного решения и некоторые специальные случаи (раздел 3.4):

• В.Е. Захаров, А.Б. Шабат.Точная теория двумерной самофокусировки и одномерной автомодуляции волн в нелинейных средах. ЖЭТФ 61:1 (1971) 118-134.

См. также
• M.J. Ablowitz, D.J. Kaup, A.C. Newell, H. Segur. Nonlinear evolution equations of physical significance. Phys. Rev. Let. 31:2 (1973) 125-127.
• В.Е. Захаров, С.В. Манаков, С.П. Новиков, Л.П. Питаевский. Теория солитонов. Метод обратной задачи, М.: Наука, 1980.
• М. Абловиц, Х. Сигур. Солитоны и метод обратной задачи. М.: Мир, 1987.
• Н.Н. Ахмедиев, А. Анкевич. Солитоны. М.: Физматлит, 2003.

. Классические симметрии

Однопараметрические группы преобразований, не меняющие систему

i (Subscript[q, t])=(Subscript[q, xx])+2(q^2)p,  -i (Subscript[p, t])=(Subscript[p, xx])+2q (p^2)

Clear[q,p,a,σ]
NLSru={
Derivative[0,1][q][x_,t_]:>-I (Derivative[2,0][q][x,t]+2((q[x,t])^2)p[x,t]),
Derivative[0,1][p][x_,t_]:>I (Derivative[2,0][p][x,t]+2q[x,t]((p[x,t])^2))};

NLS[Q_,P_]:=Expand[{-I D[Q,t]+D[Q,x,x]+2(Q^2)P,I D[P,t]+D[P,x,x]+2Q (P^2)}/.NLSru]

Сдвиги по x и по t

NLS[q[x+a,t],p[x+a,t]]
NLS[q[x,t+a],p[x,t+a]]

Сдвиг аргумента

NLS[Exp[I a]q[x,t],Exp[-I a]p[x,t]]

Скейлинг

NLS[Exp[a] q[Exp[a] x,Exp[2a]t],Exp[a] p[Exp[a] x,Exp[2a]t]]

Преобразование Галилея

NLS[Exp[I(a x+(a^2)t)]q[x+2a t,t],Exp[-I (a x+(a^2)t)]p[x+2a t,t]]

Аналогичные замены для системы

(Subscript[q, t])=(Subscript[q, xx])+2(q^2)p,  -(Subscript[p, t])=(Subscript[p, xx])+2q (p^2)

NLSru={
Derivative[0,1][q][x_,t_]:>Derivative[2,0][q][x,t]+2((q[x,t])^2)p[x,t],
Derivative[0,1][p][x_,t_]:>-(Derivative[2,0][p][x,t]+2q[x,t]((p[x,t])^2))};

NLS[Q_,P_]:=Expand[{-D[Q,t]+D[Q,x,x]+2(Q^2)P,D[P,t]+D[P,x,x]+2Q (P^2)}/.NLSru]

NLS[q[x+a,t],p[x+a,t]]

NLS[q[x,t+a],p[x,t+a]]

NLS[Exp[a]q[x,t],Exp[-a]p[x,t]]

NLS[Exp[a] q[Exp[a] x,Exp[2a]t],Exp[a] p[Exp[a] x,Exp[2a]t]]

NLS[Exp[a x+(a^2)t]q[x+2a t,t],Exp[-a x-(a^2)t]p[x+2a t,t]]

. Бозе-конденсат

cc[f_]:=f/.{Complex[a_,b_]:>Complex[a,-b]}
cri[f_]:=ComplexExpand[ReIm[f]]

qNLS[x_,t_,a_,b_,c_,s_]=b Exp[I (a x+((a^2)-2s (b^2)) t+c)];
q=%
cc[q]
cri[q]

Together[-I D[q,t]+D[q,x,x]+2s cc[q](q^2)]

qq=qNLS[x,t,0.3,1,0,1]

Plot3D[Evaluate[cri[qq][[1]]],{x,-10,10},{t,-8,8},
PlotRange->{-2,2},
PlotPoints->80,Mesh->False,
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"},
AxesLabel->{"x","t","Re u"}
]

. (SuperPlus[NLS]): солитон огибающей

Envelope soliton
Частный случай при b=0: бризер (breather)

Солитон КдФ содержит 2 параметра – амплитуду и фазовый сдвиг. Амплитуду можно сделать равной 1 растяжением, сдвиг убирается сдвигом x. То есть, фактически, параметров нет (если речь именно об одном солитоне).

В солитоне НУШ  есть 4 параметра, из них c,d можно сдвинуть в 0, один из параметров a или b можно растянуть в 1, но второй остается свободным.

qNLS[x_,t_,a_,b_,c_,d_]=ComplexExpand[TrigToExp[((a Exp[I (b x+((b^2)-(a^2))t+c)])/(Cosh[a(x+2b t)+d]))]];
q=%

Simplify[-I D[q,t]+D[q,x,x]+2cc[q](q^2)]

{u,v}=cri[q]

plotNLS1[a_,b_,c_,d_,t_]:=Module[{u,v},
{u,v}=cri[qNLS[x,t,a,b,c,d]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-1.15,1.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

esPr1=plotNLS1[1,12,0,0,0]

Manipulate[
plotNLS1[a,b,c,d,t],
{{a,1},0,2,Appearance->"Labeled"},
{{b,0},-30,30,Appearance->"Labeled"},
{{c,0},-3,3,Appearance->"Labeled"},
{{d,0},-3,3,Appearance->"Labeled"},
{{t,0},-10,10,Appearance->"Labeled"}]

Plot3D[Re[qNLS[x,t,1,3,0,0]],{x,-10,10},{t,-3,3},
PlotRange->{-1,1},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Re u"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

. (SuperPlus[NLS]): двухсолитонное решение

Детерминантная формула для n-солитонного решения

A=(Subscript[((Subscript[A, jk])), 1]^n),    (Subscript[A, jk])=((Subscript[c, k])/((Subscript[λ, k])-(Subscript[(OverBar[λ]), j])))exp(-2i ((Subscript[(OverBar[λ]), j])x-2(Subscript[λ, k]^2)t))
	M=I+(OverBar[A])A 
	(Subscript[M, 1])=(({{M, (Subscript[E, 1])}, {(Subscript[E, 2]), 0}})),   (Subscript[E, 1])=(((exp(2i (Subscript[λ, 1])x),...,exp(2i (Subscript[λ, n])x)))^t),   (Subscript[E, 2])=((Subscript[c, 1])exp(4i (Subscript[λ, 1]^2)t),...,(Subscript[c, n])exp(4i (Subscript[λ, n]^2)t))
	q=-2det (Subscript[M, 1])/det M

.. Решение общего вида

Вронскианные формулы могут быть выведены примерно так же, как для КдФ. Однако, они более сложные – 2-солитонное решение содержит 8 вещественных параметров против 4 у КдФ. Возможны нетривиальные вырождения и предельные случаи.

1-солитонное решение

Clear[a,b,c,d,λ,μ]

n=1;
A=Table[((c[k]Exp[-2I(μ[j]x-2((λ[k])^2)t)])/(λ[k]-μ[j])),{j,1,n},{k,1,n}];
M=IdentityMatrix[n]+(cc[A]/.{λ->μ,μ->λ,c->d,d->c}).A;

MM=Table[
If[j<n+1,
If[k<n+1,M[[j,k]],Exp[2I λ[j]x]],
If[k<n+1,c[k]Exp[4I ((λ[k])^2)t],0]],
{j,1,n+1},{k,1,n+1}];

q=-2Det[MM]/Det[M]
cq=cc[q]/.{λ->μ,μ->λ,c->d,d->c};

Together[-I D[q,t]+D[q,x,x]+2cq (q^2)]

2-солитонное решение

n=2;
A=Table[((c[k]Exp[-2I(μ[j]x-2((λ[k])^2)t)])/(λ[k]-μ[j])),{j,1,n},{k,1,n}];
M=IdentityMatrix[n]+(cc[A]/.{λ->μ,μ->λ,c->d,d->c}).A;

MM=Table[
If[j<n+1,
If[k<n+1,M[[j,k]],Exp[2I λ[j]x]],
If[k<n+1,c[k]Exp[4I ((λ[k])^2)t],0]],
{j,1,n+1},{k,1,n+1}];

q=-2Det[MM]/Det[M]
cq=cc[q]/.{λ->μ,μ->λ,c->d,d->c};

Together[-I D[q,t]+D[q,x,x]+2cq (q^2)]

Отметим, что команда Simplify приводит формулу для q к более компактному виду, но в результате время проверки очень сильно увеличивается

q=Simplify[-2Det[MM]/Det[M]]
cq=cc[q]/.{λ->μ,μ->λ,c->d,d->c};

(* Simplify[-I D[q,t]+D[q,x,x]+2cq (q^2)] *)

.. (SuperPlus[NLS]): спаренный солитон (2 солитона с одинаковой скоростью и разной амплитудой)

Для уравнения КдФ, скорости солитонов обязаны быть разными. В НУШ они разные в случае общего положения, но при этом можно выбрать параметры и таким образом, чтобы скорости совпали. Для такого 2-солитонного решения перейдем в подвижную с.к., применяя преобразование Галилея, и сделаем скорость равной 0.

qNLSd[x_,t_,a_,b_,c_]=((2 ((a^2)-(b^2))(a Exp[-I (a^2)t]Cosh[b(x+c)]-b Exp[-I (b^2)t]Cosh[a x]))/((((a-b))^2)Cosh[a x+b(x+c)]+(((a+b))^2)Cosh[a x-b(x+c)]-4 a b Cos[((a^2)-(b^2))t]));
q=%

Simplify[Together[-I D[q,t]+D[q,x,x]+2cc[q](q^2)]]

plotNLSd[a_,b_,c_,t_]:=Module[{u,v},
{u,v}=cri[qNLSd[x,t,a,b,c]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-5.15,5.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

Manipulate[
plotNLSd[a,b,c,t],
{{a,1},-5,5,Appearance->"Labeled"},
{{b,2},-5,5,Appearance->"Labeled"},
{{c,-3},-5,5,Appearance->"Labeled"},
{{t,0},-10,10,Appearance->"Labeled"}]

Plot3D[Re[qNLSd[x,t,1.2,2,3]],{x,-10,10},{t,-3,3},
PlotRange->{-2,2},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Re u"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

Plot3D[Re[qNLSd[x,t,1,1.2,-0.4]],{x,-20,20},{t,-6,6},
PlotRange->{-2,2},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Re u"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

.. (SuperPlus[NLS]): полурациональный солитон (предельный случай предыдущего решения)

Берем предыдущее решение

qNLSd[x_,t_,a_,b_,c_]=((2 ((a^2)-(b^2))(a Exp[-I (a^2)t]Cosh[b(x+c)]-b Exp[-I (b^2)t]Cosh[a x]))/((((a-b))^2)Cosh[a x+b(x+c)]+(((a+b))^2)Cosh[a x-b(x+c)]-4 a b Cos[((a^2)-(b^2))t]));
q=%

Заменяем c=δ(a-b), где δ=const, и переходим к пределу b->a. 
При этом числитель и знаменатель равны 0, применяем правило Лопиталя (два раза).

numden={Numerator[q],Denominator[q]}/.c->δ(a-b);
%/.b->a

dnumden=D[numden,b]
%/.b->a

ddnumden=D[dnumden,b];
%/.b->a
qq=%[[1]]/%[[2]]

qNLSr[x_,t_,a_,δ_]=-((8 a (-(E^(-I (a^2) t)) Cosh[a x]+2 I (a^2) (E^(-I (a^2) t)) t Cosh[a x]+a (E^(-I (a^2) t)) (x-a δ) Sinh[a x]))/(2+16 (a^4) (t^2)+4 (a^2) (((-x+a δ))^2)+2 Cosh[2 a x]));

q=%

Simplify[Together[-I D[q,t]+D[q,x,x]+2cc[q](q^2)]]

Получилось 2 солитона одинаковой амплитуды и с логарифмической разностью скорости

plotNLSr[a_,d_,t_]:=Module[{u,v},
{u,v}=cri[qNLSr[x,t,a,d]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-5.15,5.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

Manipulate[
plotNLSr[a,d,t],
{{a,3},-5,5,Appearance->"Labeled"},
{{d,0},-30,30,Appearance->"Labeled"},
{{t,0},-100,100,Appearance->"Labeled"}]

Plot3D[Re[qNLSr[x,t,1,3]],{x,-10,10},{t,-40,40},
PlotRange->{-2,2},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Re u"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

. (SuperPlus[NLS]): солитон Перегрина (рациональный солитон)

• D.H. Peregrine. Water waves, nonlinear Schrödinger equations and their solutions. J. Austral. Math. Soc. Ser. B 25 (1983) 16-43.

qNLSP[x_,t_]=Exp[-2I t](1-((4(1-4I t))/(1+4(x^2)+16(t^2))));
q=%
cri[q]

Simplify[Together[-I D[q,t]+D[q,x,x]+2cc[q](q^2)]]

plotNLSP[t_]:=Module[{u,v},
{u,v}=cri[qNLSP[x,t]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-3.15,3.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

Manipulate[
plotNLSP[t],
{{t,0},-10,10,Appearance->"Labeled"}]

Plot3D[Abs[qNLSP[x,t]],{x,-6,6},{t,-2,2},
PlotRange->{-1,4},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","\[LeftBracketingBar]q\[RightBracketingBar]"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

Plot3D[Re[qNLSP[x,t]],{x,-6,6},{t,-2,2},
PlotRange->{-3,4},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Re q"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}]

Plot3D[Im[qNLSP[x,t]],{x,-6,6},{t,-2,2},
PlotRange->{-3,4},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","Im q"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}]

. (SuperPlus[NLS]): солитон Ма

(или солитон на фоне конденсата)

• E.A. Kuznetsov. Solitons in a parametrically unstable plasma. Sov. Phys. Dokl. 236 (1977) 575-577.
• T. Kawata, H. Inoue. Inverse scattering method for the nonlinear evolution equations under nonvanishing conditions. J. Phys. Soc. Japan 44:5 (1978) 1722-1729.
• Y.-C. Ma. The perturbed plane-wave solution of the cubic Schrödinger equation. Stud. Appl. Math. 60 (1979) 43-58.

qNLSMa[x_,t_,a_,b_]=a Exp[-2I (a^2)t](1+((2b(b Cos[4 (a^2)b c t]-I Sqrt[1+(b^2)] Sin[4 (a^2)b c t]))/(c Cosh[2a b x]+Cos[4 (a^2)b c t])))/.c->Sqrt[1+(b^2)];
q=%
Simplify[Together[-I D[q,t]+D[q,x,x]+2cc[q](q^2)]]

plotNLSMa[t_,a_,b_]:=Module[{u,v},
{u,v}=cri[qNLSMa[x,t,a,b]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-3.15,3.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

Manipulate[
plotNLSMa[t,a,b],
{{a,1},-5,5,Appearance->"Labeled"},
{{b,1},-5,5,Appearance->"Labeled"},
{{t,0},-10,10,Appearance->"Labeled"}]

Plot3D[Re[qNLSMa[x,t,1,1]],{x,-6,6},{t,-8,8},
PlotRange->{-4,4},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","\[LeftBracketingBar]q\[RightBracketingBar]"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

. (SuperMinus[NLS]): темный солитон

qNLSdark[x_,t_,a_,b_]=-b Tanh[b(x+2a t)]Exp[I(2(b^2)-(a^2)) t+I a(x+2a t)];

q=%
cri[q]

Simplify[Together[-I D[q,t]+D[q,x,x]-2cc[q](q^2)]]

plotNLSdark[t_,a_,b_]:=Module[{u,v},
{u,v}=cri[qNLSdark[x,t,a,b]];
Plot[{u,v,Sqrt[(u^2)+(v^2)]},{x,-7,7},
PlotStyle->{Blue,Green,Red},
PlotRange->{-3.15,3.15},
BaseStyle->{FontSize->16,FontFamily->"Times New Roman"},
ImageSize->400,
AxesLabel->{"x",None},
PlotLegends->LineLegend[{Blue,Green,Red},{"Re q","Im q","|q|"}]
]]

Manipulate[
plotNLSdark[t,a,b],
{{a,1},-5,5,Appearance->"Labeled"},
{{b,1},-5,5,Appearance->"Labeled"},
{{t,0},-10,10,Appearance->"Labeled"}]

Plot3D[Re[qNLSdark[x,t,1,2]],{x,-6,6},{t,-3,3},
PlotRange->{-4,4},
PlotPoints->200,
Mesh->False,
ImageSize->500,
AxesLabel->{"x","t","\[LeftBracketingBar]q\[RightBracketingBar]"},
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}
]

Sin-Гордон  (Subscript[u, xy])= sin u

. Приведение к рациональному виду

Вычисления удобнее делать для уравнения в рациональной форме

(Subscript[v, xy])=(v/(1+(v^2)))(2(Subscript[v, x])(Subscript[v, y])+1-(v^2)),   v=tan (u/4).

Clear[u,v]
u=4ArcTan[v[x,y]]
FullSimplify[D[u,x,y]-Sin[u]/.{D[v[x,y],x,y]->((v[x,y])/(1+((v[x,y])^2)))(2D[v[x,y],x]D[v[x,y],y]+1-((v[x,y])^2))}]

1-солитонное решение

v=v1=c Exp[a x+y/a]
Factor[D[v,x,y]-(v/(1+(v^2)))(2D[v,x]D[v,y]+1-(v^2))]
u=4ArcTan[v]
FullSimplify[D[u,x,y]-Sin[u]]

2-солитонное решение

v=v2=(((a1+a2)(c2 Exp[a2 x+y/a2]-c1 Exp[a1 x+y/a1]))/((a1-a2)(1+c1 c2 Exp[(a1+a2) x+(1/a1+1/a2)y])))
Simplify[D[v,x,y]-(v/(1+(v^2)))(2D[v,x]D[v,y]+1-(v^2))]

Здесь параметры не обязательно вещественны. Выбирая их по разному, получаем разные типы решений.

. Кинк

Plot3D[4ArcTan[v1]/.{a->0.5,c->1},{x,-12,12},{y,-8,8},
PlotRange->{0,2π},
PlotPoints->50,
Mesh->False,
ColorFunction->"Aquamarine",
AxesLabel->{"x","y","u"},
ImageSize->500,
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}]

. Кинк-антикинк

Plot3D[4ArcTan[v2]/.{a1->0.5,a2->1,c1->1,c2->1},{x,-12,12},{y,-8,8},
PlotRange->{-2.1π,2.1π},
PlotPoints->50,
Mesh->False,
ColorFunction->"Aquamarine",
AxesLabel->{"x","y","u"},
ImageSize->500,
BaseStyle->{FontSize->12,FontFamily->"Times New Roman"}]

Manipulate[
Plot[4ArcTan[v2]/.{a1->0.5,a2->1,c1->1,c2->1,y->yy},{x,-50,50},
PlotRange->{-2.1π,2.1π},
PlotPoints->50,
PlotStyle->Blue,
AxesLabel->{"x","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}],
{{yy,0},-10,10}
]

. Кинк-кинк

Plot3D[4ArcTan[v2]/.{a1->0.5,a2->-1,c1->1,c2->1},{x,-12,12},{y,-8,8},
PlotRange->{-2.1π,2.1π},
PlotPoints->50,
Mesh->False,
ColorFunction->"Aquamarine",
AxesLabel->{"x","y","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}]

Manipulate[
Plot[4ArcTan[v2]/.{a1->0.5,a2->-1,c1->1,c2->1,y->yy},{x,-50,50},
PlotRange->{-2.1π,2.1π},
PlotPoints->50,
PlotStyle->Blue,
AxesLabel->{"x","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}],
{{yy,-15},-20,20}
]

. Бризер

Пусть параметры комплексно сопряжены:

v2
v2/.{a1->a+I b,a2->a-I b,c1->c+I d,c2->c-I d}
v=Factor[ComplexExpand[%]]
Simplify[D[v,x,y]-(v/(1+(v^2)))(2D[v,x]D[v,y]+1-(v^2))]

Это можно переобозначить так:

V[x_,y_,a_,b_,C1_,C2_]=((a Sin[b(x-(y/((a^2)+(b^2))))+C1])/(b Cosh[a(x+(y/((a^2)+(b^2))))+C2]));
v=%
Simplify[D[v,x,y]-(v/(1+(v^2)))(2D[v,x]D[v,y]+1-(v^2))]

VV[x_,y_,a_,b_,C1_,C2_]=(a/(b Cosh[a(x+(y/((a^2)+(b^2))))+C2]));

Manipulate[
Plot[{4ArcTan[VV[x,y,a,b,0,0]],4ArcTan[V[x,y,a,b,0,0]]},{x,-50,50},
PlotRange->{-1.5,1.5},
PlotPoints->100,
PlotStyle->{{Dashing[{0.01}],Red},{Blue}},
AxesLabel->{"x","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}],
{{a,0.5},-1,1,Appearance->"Labeled"},
{{b,1.5},-5,5,Appearance->"Labeled"},
{{y,0},-70,70}
]

Plot3D[4ArcTan[V[x,y,0.5,1.5,0,0]],{x,-20,20},{y,-20,20},
PlotRange->{-2,2},
PlotPoints->100,
Mesh->False,
ColorFunction->"Aquamarine",
AxesLabel->{"x","y","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}]

В частности, если (a^2)+(b^2)=1, то в лабораторных координатах получается стоячий бризер:

V[x,y,3/5,4/5,0,0]

Plot3D[4ArcTan[V[x,y,3/5,4/5,0,0]],{x,-20,20},{y,-20,20},
PlotRange->{-5,5},
PlotPoints->50,
Mesh->False,
ColorFunction->"Aquamarine",
AxesLabel->{"x","y","u"},
ImageSize->500,
BaseStyle->{FontSize->14,FontFamily->"Times New Roman"}]