Skip to main content

勒让德多项式

开算。

勒让德方程

勒让德方程是,

(1x2)D2y2xDyλy=0(1-x^2)D^2y - 2xDy - \lambda y = 0

k(x)k(x)

2x1x2dx=log(1x2)+C\int \frac{-2x}{1-x^2} \mathrm{d}x = \log(1-x^2) + C k(x)=1x2k(x) = 1-x^2 D((1x2)Dy)=λyD((1-x^2)Dy)=\lambda y

定义域是 1-111

我们记勒让德多项式为为 RnR_n ,一般书都会记成 PnP_n ,但是这和我们之前的记号重了……

此外,注意,这里的计算是算量很大的——我提出的这个方法本征值算的很快,但是具体函数需要从生成函数绕一大圈。下一章我们会直接推出二阶二次厄米算子本征方程的通解,包括本征值,本征函数。

本征函数的计算

这里略过推导,因为推导和前文完全一致。总而言之,过程一致,可以得到,

n+1=xn+Bnn+Cnn1|n+1\rangle = x|n\rangle + B_n|n\rangle + C_n |n-1\rangle

同样的,作用算子,

E^=D((1x2)D)\hat{E} = D((1-x^2)D) λn+1n+1=E^(xn)+λnBnn+λn1Cnn1\lambda_{n+1}|n+1\rangle = \hat{E}(x|n\rangle) + \lambda_n B_n|n\rangle +\lambda_{n-1} C_n |n-1\rangle

n+1n+1 阶的系数的得到 λn\lambda_n

λn+1=(n+1)(n+2)\lambda_{n+1} = -(n+1)(n+2)

同样的定义 PnP_nQnQ_n

Pn+1=Pn+BnQn+1=Qn+BnPn+CnP_{n+1} = P_n + B_n \\ Q_{n+1} = Q_n + B_n P_n + C_n

然后对 nn 阶系数得到 BnB_nPnP_n

λn+1Pn+1=λnBnn(n+1)Pn\lambda_{n+1} P_{n+1} = \lambda_n B_n - n(n+1)P_{n}

先解出来 BnB_n

(n+1)(n+2)Pn+1=n(n+1)Bnn(n+1)Pn-(n+1)(n+2) P_{n+1} = -n(n+1) B_n - n(n+1)P_{n} (n+2)Pn+1=nBnnPn-(n+2)P_{n+1} = -nB_n - nP_n

用另一个关系,

Pn+1=Pn+BnP_{n+1} = P_n + B_n nPn+1=nPn+nBnnP_{n+1} = nP_n + nB_n

两个相加,

2Pn+1=0-2P_{n+1} = 0

因此,

Pn=0P_n = 0 Bn=0B_n = 0

勒让德多项式有这两个零,因此计算方便些。这说明勒让德多项式没有次高项(事实上,勒让德多项式只有与最高次差偶数次的项)。

现在把零带回去,

λn+1n+1=E^(xn)+λn1Cnn1\lambda_{n+1}|n+1\rangle = \hat{E}(x|n\rangle) + \lambda_{n-1} C_n |n-1\rangle

然后对 n1n-1 阶,

E^(xn)=D((1x2)D(xRn))\hat{E}(x|n\rangle) = D((1-x^2)D(x R_n))

PnP_n 的最高阶给 xn1x^{n-1} 贡献 (n+1)nQn(n1)n(n+1)n-Q_n(n-1)n

因此,

λn+1Qn+1=(n+1)nQn(n1)n+λn1Cn\lambda_{n+1} Q_{n+1} = (n+1)n-Q_n(n-1)n + \lambda_{n-1}C_n

展开本征值,

(n+1)(n+2)Qn+1=(n+1)nQn(n1)n(n1)nCn-(n+1)(n+2) Q_{n+1} = (n+1)n-Q_n(n-1)n - (n-1)nC_n

除一个 nn

(n+1)(n+2)nQn+1=(n+1)Qn(n1)(n1)Cn-\frac{(n+1)(n+2)}{n} Q_{n+1} = (n+1)-Q_n(n-1) - (n-1)C_n

又有,

Qn+1=Qn+CnQ_{n+1} = Q_n + C_n (n1)Qn+1=(n1)Qn+(n1)Cn(n-1)Q_{n+1} = (n-1)Q_n + (n-1)C_n

两个相加,

((n1)(n+1)(n+2)n)Qn+1=(n+1)((n-1)-\frac{(n+1)(n+2)}{n}) Q_{n+1} = (n+1) ((n1)nn(n+1)(n+2)n)Qn+1=(n+1)(\frac{(n-1)n}{n}-\frac{(n+1)(n+2)}{n}) Q_{n+1} = (n+1) ((n+1)(n+2)(n1)nn)Qn+1=(n+1)(\frac{(n+1)(n+2) - (n-1)n}{n}) Q_{n+1} = -(n+1) (n2+3n+2n2+nn)Qn+1=(n+1)(\frac{n^2+3n+2 - n^2 + n}{n}) Q_{n+1} = -(n+1) (4n+2n)Qn+1=(n+1)(\frac{4n+2}{n}) Q_{n+1} = -(n+1) (4n2n1)Qn=n(\frac{4n-2}{n-1}) Q_{n} = -n Qn=n(n14n2)=n2n24(2n1)=n4(112n1)Q_{n} = -n (\frac{n-1}{4n-2}) \\ = -n \frac{2n-2}{4(2n-1)} \\ = -\frac{n}{4}(1 - \frac{1}{2n-1}) Cn=QnQn+1=n+14(112n+1)n4(112n1)=14(1+n2n1n+12n+1)=14(1+2n2+n(2n1)(n+1)(2n1)(2n+1))=14(2n2+n+(2n1)n(2n1)(2n+1))=n2(2n1)(2n+1)-C_n = Q_{n} - Q_{n+1} \\ = \frac{n+1}{4}(1 - \frac{1}{2n+1}) - \frac{n}{4}(1 - \frac{1}{2n-1}) \\ = \frac{1}{4}(1 + \frac{n}{2n-1} - \frac{n+1}{2n+1}) \\ = \frac{1}{4}(1 + \frac{2n^2 + n - (2n-1)(n+1)}{(2n-1)(2n+1)}) \\ = \frac{1}{4}(\frac{2n^2 + n + (2n-1)n}{(2n-1)(2n+1)}) \\ = \frac{n^2}{(2n-1)(2n+1)}

综上,

n+1=xnn2(2n1)(2n+1)n1|n+1\rangle = x|n\rangle - \frac{n^2}{(2n-1)(2n+1)} |n-1\rangle

前两项为,

0=11=x|0\rangle = 1 \\ |1\rangle = x

算一下模长,

0=n1xnn2(2n1)(2n+1)n1n10 = \langle n - 1|x|n\rangle - \frac{n^2}{(2n-1)(2n+1)} \langle n - 1 |n-1\rangle

再一次,因为 n1\langle n - 1| 首一, n1x\langle n - 1|x 也是首一。 n1x\langle n - 1|x 可以被 i,in\langle i|,i\leq n 展开,且 n\langle n| 项系数为 11 。又由正交性,只有这一项贡献模长,因此,

n1xn=nn\langle n - 1|x|n\rangle = \langle n |n\rangle

即,

nn=n2(2n1)(2n+1)n1n1\langle n |n\rangle = \frac{n^2}{(2n-1)(2n+1)} \langle n - 1 |n-1\rangle 00=2\langle 0 | 0\rangle=2

可以写出通项,

nn=2k=1nk2(2k1)(2k+1)=2(n!)2(2n1)!!(2n+1)!!=2(n!)2((2n1)!!)2(2n+1)\langle n |n\rangle = 2 \prod_{k=1}^{n} \frac{k^2}{(2k-1)(2k+1)} \\ = 2 \frac{(n!)^2}{(2n-1)!!(2n+1)!!} = 2 \frac{(n!)^2}{((2n-1)!!)^2(2n+1)}

双阶乘可以化为单阶乘,

nn=2k=1nk2(2k1)(2k+1)=2(n!)2((2n)!!)2((2n1)!!(2n)!!)2(2n+1)=222n(n!)4((2n)!)2(2n+1)=22n+1(n!)4((2n)!)2(2n+1)\langle n |n\rangle = 2 \prod_{k=1}^{n} \frac{k^2}{(2k-1)(2k+1)} \\ = 2 \frac{(n!)^2((2n)!!)^2}{((2n-1)!!(2n)!!)^2(2n+1)} \\ = 2\frac{2^{2n} (n!)^4}{((2n)!)^2(2n+1)} \\ = \frac{2^{2n + 1} (n!)^4}{((2n)!)^2(2n+1)}

这个长度有点复杂,开根也不有理。一般来说课本上的也不是归一,而是使得每个的模长为,

22n+1\sqrt{\frac{2}{2n+1}}

因为剩下的部分可以有理地开根,

nn=2n+1(2n(n!)2(2n)!)2\langle n |n\rangle = \frac{2}{n+1} (\frac{2^n (n!)^2}{(2n)!})^2

这种规定也可以视为保证 Rn(1)=1R_n(1) = 1 ,因为我们有,

Rn+1=xRnn2(2n1)(2n+1)Rn1R_{n+1} = xR_n - \frac{n^2}{(2n-1)(2n+1)}R_{n-1}

我们算一下首一下 11 处值的递推,

Rn+1(1)=Rn(1)n2(2n1)(2n+1)Rn1(1)R_{n+1}(1) = R_n(1) - \frac{n^2}{(2n-1)(2n+1)}R_{n-1}(1) Rn+1(1)Rn(1)=1n2(2n1)(2n+1)Rn1(1)Rn(1)\frac{R_{n+1}(1)}{R_n(1)} = 1 - \frac{n^2}{(2n-1)(2n+1)}\frac{R_{n-1}(1)}{R_n(1)} Rn+1(1)Rn(1)2n+1n+1=2n+1n+1nn+1Rn1(1)Rn(1)n2n1\frac{R_{n+1}(1)}{R_n(1)}\frac{2n+1}{n+1} = \frac{2n+1}{n+1} - \frac{n}{n+1}\frac{R_{n-1}(1)}{R_n(1)}\frac{n}{2n-1}

记,

Kn=Rn1(1)Rn(1)n2n1K_n = \frac{R_{n-1}(1)}{R_n(1)}\frac{n}{2n-1}

则,

Kn+1=Rn(1)Rn+1(1)n+12n+1K_{n+1} = \frac{R_{n}(1)}{R_{n+1}(1)}\frac{n+1}{2n + 1}

因此,

1Kn+1=2n+1n+1nn+1Kn\frac{1}{K_{n+1}}=\frac{2n+1}{n+1} - \frac{n}{n+1}K_n

不动点是 11 ,但是显然 K0=1K_0=1 ,因此,

1=Rn1(1)Rn(1)n2n11 = \frac{R_{n-1}(1)}{R_n(1)}\frac{n}{2n-1}

整理过程和上面求模长一样,最后得到,

Rn(1)=2n(n!)2(2n)!R_n(1) = \frac{2^n (n!)^2}{(2n)!}

因此可以用,

2n(n!)2(2n)!\frac{2^n (n!)^2}{(2n)!}

做因子标准化。这个因子和前面一样。

生成函数

Rodrigues 公式这里我想不出啥好方法来,参考大部分教科书吧……鉴于后面我们会直接给出一个很方便的公式,这里证明它也没啥意义,就不算了。

下面 DD 是对 zz 求导。

n+1=xnn2(2n1)(2n+1)n1|n+1\rangle = x|n\rangle - \frac{n^2}{(2n-1)(2n+1)} |n-1\rangle

理论上可以直接算,但其实我们在前面拉盖尔函数生成函数求解时节省了一部分——就是为什么取,

G(z;x)=n=01n!LnznG(z;x)=\sum_{n=0}^{\infty}\frac{1}{n!}L_nz^n

即为什么除一个阶乘——如果你不加这个,会特别难算——其实是完全没法算(其实可以解,但是首先计算麻烦,其次最后需要分解一个带微分的算子,没有软件辅助很难算,但确实可以得到结果)。

下面的勒让德函数的计算也是。如果你直接按这个带阶乘的展开,一算一个不吱声。如果不加,依然很难算。我们需要在这里给出确定这个加权的方法。

现在我们不求 RnR_n ,而是求一个加权的 SnRnS_nR_n ,即,

G(z;x)=n=0SnRnznG(z;x)=\sum_{n=0}^{\infty}S_nR_nz^n

我们规定 G(z;x)G(z;x) 必须满足一阶微分方程,阶数不能再高了,不然没法解。

DG(z;x)=n=0nSnRnzn1DG(z;x)=\sum_{n=0}^{\infty}nS_nR_nz^{n-1}

而且我们希望不存在分母——分母意味着积分。

前面这里,

Rn+1=xRnn2(2n1)(2n+1)Rn1eR_{n+1}= xR_n - \frac{n^2}{(2n-1)(2n+1)}R_{n-1e} SnRn+1zn=xSnRnznSnn2(2n1)(2n+1)Rn1znS_nR_{n+1}z^n= xS_nR_nz^n - S_n\frac{n^2}{(2n-1)(2n+1)}R_{n-1}z^n

我们需要让所有项的系数都是一次——否则会需要二阶导数。

我们设,

Kn+1=SnSn+1K_{n+1}=\frac{S_{n}}{S_{n+1}}

那么有,

Kn+1Sn+1Rn+1zn=xSnRnznSn1Knn2(2n1)(2n+1)Rn1znK_{n+1}S_{n+1}R_{n+1}z^n= xS_nR_nz^n - \frac{S_{n-1}}{K_n}\frac{n^2}{(2n-1)(2n+1)}R_{n-1}z^n Kn+1(Sn+1Rn+1zn)=x(SnRnzn)1Knn2(2n1)(2n+1)(Sn1Rn1zn)K_{n+1}(S_{n+1}R_{n+1}z^n)= x(S_nR_nz^n) - \frac{1}{K_n}\frac{n^2}{(2n-1)(2n+1)}(S_{n-1}R_{n-1}z^n)

现在只这么做显然无法保证至高一次性。我们待定一个因子 PP

PKn+1(Sn+1Rn+1zn)=xP(SnRnzn)PKnn2(2n1)(2n+1)(Sn1Rn1zn)PK_{n+1}(S_{n+1}R_{n+1}z^n)= xP(S_nR_nz^n) - \frac{P}{K_n}\frac{n^2}{(2n-1)(2n+1)}(S_{n-1}R_{n-1}z^n)

把分母乘过去,

(2n1)(2n+1)PKn+1(Sn+1Rn+1zn)=x(2n1)(2n+1)P(SnRnzn)PKnn2(Sn1Rn1zn)(2n-1)(2n+1)PK_{n+1}(S_{n+1}R_{n+1}z^n)= x(2n-1)(2n+1)P(S_nR_nz^n) - \frac{P}{K_n}n^2(S_{n-1}R_{n-1}z^n)

现在因子不多,其实可以猜。但是最好是可以分析出来 PPKnK_n

(2n1)(2n+1)P(2n-1)(2n+1)P

说明 PP 有且只能有分母因式 (2n1)(2n-1)(2n+1)(2n+1)

PKnn2\frac{P}{K_n} n^2

说明 KnK_n 的分母因式必须和 PP 分母因式相同,否则这一项会留下分母。

如果 PPKnK_n 的分母有 2n+12n+1 ,那么 Kn+1K_{n+1} 的分母有 2n+32n+3 ,但是这会导致,

(2n1)(2n+1)PKn+1(2n-1)(2n+1)PK_{n+1}

留下分母。因此 KnK_{n} 有分母因式 2n12n-1PP 有且仅有分母因式 2n12n-1

但是,

PKnn2\frac{P}{K_n} n^2

至多只能留下一阶,但是 PP 有且只能有分母因式 (2n1)(2n-1) ,说明 KnK_n 有分子因式 nc,c1n^c, c\geq1

但是,

(2n1)(2n+1)PKn+1(2n-1)(2n+1)PK_{n+1}

的结果一定是 PKn+1PK_{n+1} 的分子因式的积(因为 PKn+1PK_{n+1} 有分母因式 (2n1)(2n+1)(2n-1)(2n+1) )。

因此 c=1c = 1 ,同时说明 PP 分子因式是零阶。综上,

P=12n1P = \frac{1}{2n-1} Kn=n2n1K_n = \frac{n}{2n-1}

因此可以算出来,

Sn=2n(n!)2(2n)!S_n = \frac{2^n (n!)^2}{(2n)!}

这个计算上面已经算过了。

注意,

S0=1S1=1S_0 = 1 \\ S_1 = 1

此时递推是,

(n+1)(Sn+1Rn+1zn)=x(2n+1)(SnRnzn)n(Sn1Rn1zn)(n+1)(S_{n+1}R_{n+1}z^n)= x(2n+1)(S_nR_nz^n) - n(S_{n-1}R_{n-1}z^n)

这样就好算多了。

累和,

n=1(n+1)(Sn+1Rn+1zn)=n=1x(2n+1)(SnRnzn)n=1n(Sn1Rn1zn)\sum_{n=1}^\infty(n+1)(S_{n+1}R_{n+1}z^n)= \sum_{n=1}^\infty x(2n+1)(S_nR_nz^n) - \sum_{n=1}^\infty n(S_{n-1}R_{n-1}z^n)

左边,

G(z;x)=n=0SnRnznG(z;x)=\sum_{n=0}^{\infty}S_nR_nz^n G(z;x)1=n=1SnRnznG(z;x)-1=\sum_{n=1}^{\infty}S_nR_nz^n G(z;x)1=n=0Sn+1Rn+1zn+1G(z;x)-1=\sum_{n=0}^{\infty}S_{n+1}R_{n+1}z^{n+1} D(G(z;x)1)=DG(z;x)=n=0(n+1)Sn+1Rn+1znD(G(z;x)-1) = DG(z;x) =\sum_{n=0}^{\infty}(n+1)S_{n+1}R_{n+1}z^{n} DG(z;x)x=n=1(n+1)Sn+1Rn+1znDG(z;x) -x =\sum_{n=1}^{\infty}(n+1)S_{n+1}R_{n+1}z^{n}

右边,

G(z;x)1=n=1SnRnznG(z;x)-1=\sum_{n=1}^{\infty}S_nR_nz^n D(G(z;x)1)=DG(z;x)=n=1nSnRnzn1D(G(z;x)-1) = DG(z;x) =\sum_{n=1}^{\infty}nS_nR_nz^{n-1} zDG(z;x)=n=1nSnRnznzDG(z;x) = \sum_{n=1}^{\infty}nS_nR_nz^{n} G(z;x)=n=0SnRnznG(z;x)=\sum_{n=0}^{\infty}S_nR_nz^n G(z;x)=n=1Sn1Rn1zn1G(z;x)=\sum_{n=1}^{\infty}S_{n-1}R_{n-1}z^{n-1} zG(z;x)=n=1Sn1Rn1znzG(z;x)=\sum_{n=1}^{\infty}S_{n-1}R_{n-1}z^{n} D(zG(z;x))=n=1nSn1Rn1zn1D(zG(z;x)) =\sum_{n=1}^{\infty}nS_{n-1}R_{n-1}z^{n-1} zD(zG(z;x))=n=1nSn1Rn1znzD(zG(z;x)) =\sum_{n=1}^{\infty}nS_{n-1}R_{n-1}z^{n}

最后有,

DG(z;x)x=2xzDG(z;x)+x(G(z;x)1)zD(zG(z;x))DG(z;x) -x = 2xzDG(z;x) + x(G(z;x)-1) - zD(zG(z;x))

整理一下,

DG(z;x)x=2xzDG(z;x)+xG(z;x)xzG(z;x)z2DG(z;x)DG(z;x) -x = 2xzDG(z;x) + xG(z;x) - x - zG(z;x) - z^2DG(z;x) DG(z;x)=2xzDG(z;x)+xG(z;x)zG(z;x)z2DG(z;x)DG(z;x) = 2xzDG(z;x) + xG(z;x) - zG(z;x) - z^2DG(z;x) (z22xz+1)DG(z;x)+(zx)G(z;x)=0(z^2-2xz+1)DG(z;x) + (z-x)G(z;x) = 0

求积分因子,

zxz22xz+1dz=121z22xz+1d(z22xz+1)=12log(z22xz+1)+?\int\frac{z-x}{z^2-2xz+1} \mathrm{d}z \\ = \frac{1}{2} \int \frac{1}{z^2-2xz+1} \mathrm{d}(z^2-2xz+1) \\ = \frac{1}{2} \log (z^2-2xz+1) + ?

积分因子是,

e12log(z22xz+1)=z22xz+1e^{\frac{1}{2} \log (z^2-2xz+1)} = \sqrt{z^2-2xz+1}

因此,

G(z;x)z22xz+1=CG(z;x)\sqrt{z^2-2xz+1} = C

又,

G(0;x)=S0R0=1G(0;x) = S_0R_0 = 1

因此,

G(z;x)=1z22xz+1G(z;x) = \frac{1}{\sqrt{z^2-2xz+1}}

这个生成函数 zznn 次方系数为,

SnRn(x)S_nR_n(x)

本征函数缩放不影响本征性,因此也可以直接把带权的作为本征函数集。

这里就算到生成函数吧,从生成函数的系数展开式肯定是能得到 Rodrigues 公式的,只是算量和技巧的问题。

下一章我们开始考虑任意情况。