Tanh函数展开法

Tanh 函数展开法是目前求解非线性偏微分方程行波解的最强劲的和行之有效的方法。1992年数学家 Malfliet 首先应用 tanh 展开法运用这个方法要进行的大量繁杂的运算，必须借助Maple、Mathematica、Matlab等计算机代数系统。

设一个非线性偏微分方程可以用下列表述：

$$\psi(u,u_{t},u_{x},u_{tt},u_{xx},u_{tx})=0$$

作变数代换：

$u(x,t)$→ $U(\xi)$

$$\xi=k*(x-c*t)$$

得到常微分方程

$\psi(U(\psi),-kc*\frac{d U}{d \psi},k*\frac{d U}{d \psi},$ $k^2*c^2*\frac{d^2 U}{d \psi^2}$ $,k^2*\frac{d^2 U}{d \psi^2},-k^3*c^3*\frac{d^3 U}{d \psi^3},k^3*\frac{d^3 U}{d \psi^3})=0$

作Malfliet 的 tanh 函数代换，引入新函数：

$$Y=tanh(\xi)$$

由此：

$$\frac{d Y}{d \xi}=1-tanh^2(\xi)=1-Y^2$$

$$\frac{d F(Y)}{d \xi}=\frac{d F(Y)}{d Y}*\frac{d Y}{d \xi}=\frac{d F(Y)}{d Y}*(1-Y^2)$$

显然

$$\frac{d}{d \xi}=L=(1-Y^2)*\frac{d}{d Y}$$

$$\frac{d^2}{d \xi^2}=L^2=-2*(1-Y^2)*Y*\frac{d}{dY}+(1-Y^2)^2*\frac{d^2}{dY^2}$$

依此类推。

设 F(Y)=Σ(a_{i}*Y^i)

代入 常微分方程$\psi(U(\psi),-kc*\frac{d U}{d \psi},k*\frac{d U}{d \psi},$ $k^2*c^2*\frac{d^2 U}{d \psi^2}$ $,k^2*\frac{d^2 U}{d \psi^2},-k^3*c^3*\frac{d^3 U}{d \psi^3},k^3*\frac{d^3 U}{d \psi^3})=0$

得到Y的多项式。用机械代数法或吴文俊消元法解多项式，反代入原式，即得偏微分方程的行波解。

## 实例

用tanh函数展开法求KdV方程的行波解。

$$\partial_t\phi+6\phi\partial_x\phi+\partial^3_x\phi=0$$

作行波代换

$tr1 := {t = tau, u = U(\xi), x = \xi/k+c*tau}$ 得常微分方程：

$$-ck\frac{d U(\xi)}{d \xi}+6kU(\xi)\frac{d U(\xi)}{d \xi}+k^3\frac{d^3U(\xi)}{d \xi^3} = 0$$

对ξ积分，得：

$$-ckU(\xi)+3kU(\xi)^2+k^3\frac{d (U(\xi)}{d^2 \xi^2} = 0$$ 令 $U(\xi)=F(Y)$得：

$$-ckF(Y)+3kF(Y)^2+k^3(1-Y^2)(-2Y\frac{d(F(Y)}{dY}+(1-Y^2)\frac{d^2(F(Y)}{d^2Y}) = 0$$

令 $U(\xi)=F(Y)= a[0]+a[1]Y+a[2]Y^2+a[3]Y^3+a[4]Y^4+a[5]Y^5+\cdot\cdot\cdot\cdot\cdot+a[M]Y^M+$……

得：

$$-ck(a[0]+a[1]Y+a[2]Y^2+a[3]Y^3+a[4]Y^4+a[5]Y^5+\cdot\cdot\cdot\cdot\cdot+a[M]Y^M)+3k(a[0]+a[1]Y+a[2]Y^2+a[3]Y^3+a[4]Y^4+a[5]Y^5+\cdot\cdot\cdot\cdot\cdot+a[M]Y^M)^2+k^3(1-Y^2)(-2Y(a[1]+2a[2]Y+3a[3]Y^2+4a[4]Y^3+5a[5]Y^4+\cdot\cdot\cdot\cdot\cdot+Ma[M]Y^{M-1})+(1-Y^2)(2a[2]+6a[3]Y+12a[4]Y^2+20a[5]Y^3+30a[6]Y^4))$$

由此得 M=2;而且：

$(3ka[2]^2+6k^3a[2])Y^4+(2k^3a[1]+6ka[1]a[2])Y^3+$ $(-cka[2]+3ka[1]^2+6ka[0]a[2]-8k^3a[2])Y^2+$ $(-cka[1]+6ka[0]a[1]-2k^3a[1])Y-cka[0]+3ka[0]^2+2k^3a[2]=0$

令系数为0，得下列关于 a0,a1,a2,c,k 的五元多项式方程组：

$$-cka[0]+3ka[0]^2+2k^3a[2]=0$$

$$-cka[1]+6ka[0]a[1]-2k^3a[1] =0$$

$$>-cka[2]+3ka[1]^2+6ka[0]a[2]-8k^3a[2]=0$$

$$2k^3a[1]+6ka[1]a[2]=0$$

$$3ka[2]^2+6k^3a[2]=0$$

利用Maple,Mathematica,Matlab等计算机代数系统，解多项式方程组，得两组非平凡解：

a0=2k^2,a1=0,a2=-2k^2,c=4k^2;

a0=(2/3)k^2,a1=0,a2=-2k^2,c=-4k^2;

于是KdV 方程的行波解为：

$$u(x,t)=2k^2(1-tanh^2(k(x-4k^2t))=2k^2sech^2(k(x-4k^2t))$$

$$u(x,t)=\frac{2}{3}k^2(1-3tanh^2(k(+4k^2t)))$$

## 推广

Malfliet 的tanh 函数展开法被后人推广到 三角函数、雅可比椭圆函数、魏尔斯特拉斯椭圆函数。

JacobiCN, JacobiDN, JacobiNC, JacobiND, JacobiNS, JacobiSN, WeierstrassP, arcsinh, cos, cosh, cot, coth, csc, csch, exp, ln, sec, sech, sin, sinh, tan, tanh 等。

## 软件包

Maple商业计算机代数系统内包括一个求解偏微分方程的软件包，可用于多种非线性性偏微分方程，求得显式解析解。这个软件包称为为TWSolutions,功能丰富，可求多数非线性偏微分方程的行波解，但仍非万能，对有些非线性偏微分方程无解或只有平凡解

基本用法

tws:={TWSolutions(pdes,functions = arcsinh, cos, cosh, cot, coth, csc, csch, exp, identity, ln, sec, sech, sin, sinh, tan, tanh, JacobiCN, JacobiDN, JacobiNC, JacobiND, JacobiNS, JacobiSN)};

其中 pdes 代表 非线性偏微分方程，或非线性偏微分方程组；若function= 列出所有可用的函数集合，常可一下子给出十几个到几十个解如果不写"function="，则只作tanh展开。用包括所有可用函数的Tanh 函数展开法在Intel Core i7笔记本电脑计算，一道非线性偏微分方程往往需时几十分以至十几小时。

中国数学家李志斌写了一个名为RATH 的Maple学术软件包，用双曲函数展开法和吴文俊消元解非线性偏微分方程 软件包RATH可以下载。