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 {dU}{d\psi }},k*{\frac {dU}{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 {dY}{d\xi }}=1-tanh^{2}(\xi )=1-Y^{2}
$$

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

顯然

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

$$
{\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 {dU}{d\psi }},k*{\frac {dU}{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 _{x}^{3}\phi =0$

作行波代換

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

$$
-ck{\frac {dU(\xi )}{d\xi }}+6kU(\xi ){\frac {dU(\xi )}{d\xi }}+k^{3}{\frac {d^{3}U(\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^{2}Y}})=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^{3}a[2])Y^{4}+(2k^{3}a[1]+6ka[1]a[2])Y^{3}+$ $(-cka[2]+3ka[1]^{2}+6ka[0]a[2]-8k^{3}a[2])Y^{2}+$ $(-cka[1]+6ka[0]a[1]-2k^{3}a[1])Y-cka[0]+3ka[0]^{2}+2k^{3}a[2]=0
$$

令係數為 0，得下列關於 a [0],a [1],a [2],c,k 的五元多項式方程組：

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

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

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

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

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

利用 Maple,Mathematica,Matlab 等計算機代數系統，解多項式方程組，得兩組非平凡解：

a[0]=2k^2,a[1]=0,a[2]=-2k^2,c=4k^2;

a[0]=(2/3)k^2,a[1]=0,a[2]=-2k^2,c=-4k^2;

於是 KdV 方程式的行波解為：

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

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



推廣

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 可以下載。



參考文獻