||
最近在用bethe ansatz解一个两粒子的模型时,我们遇到了这样一个有意思的数学问题:
通过严格对角化,我们可以获得波函数的精确解。问题是,这个波函数是否具有bethe ansatz的形式呢?具体而言,这个波函数是否可以写成若干个(在我们的问题中是四个)指数函数的叠加呢?
一个自然的想法是做fourier分解。但是这个路子的缺陷是明显的,因为fourier分解采用的正交归一的基函数是事先给定的,而波函数里涉及到的指数函数的指数因子是比较随机的。Fourier分解也许可以给出几个尖峰,但是仍然不能断定波函数是且仅仅是四个指数函数之和。
更何况,fourier分解采用的基函数是不衰减的,也就是指数为实数。而这里的波函数可能包含衰减的指数函数。
我们后来找到的办法简单而精确。这个办法其实早在1795年就被prony找到了,所以一般称为prony算法。
学过线性代数的人大概都做过这样的习题:有一个递归数列满足
x_{n+2} = x_{n+1} + x_{n}
已知初值x_0和x_1, 求解x_n的表达式。
这类线性迭代问题(也出现在差分方程里)的标准解法是采用转移矩阵框架(transfer matrix formalism)。通过对角化转移矩阵,很容易获得 x_n 的一般表达式------在非简并的情况下------形式为指数函数之和!
所以,线性迭代方程给出指数函数叠加。反过来也成立!如果一个数列是M个指数函数叠加,那么这个数列满足一个长度为M的线性迭代方程!
所以,只需要检验波函数是否满足一个线性迭代方程!
具体而已,找连续2M个数据,构建一个线性方程求解问题,看解是否依赖于这2M个数据的位置就行了。如果解不依赖于位置,那么说明这个波函数是M个指数函数之和;反之,如果解依赖于位置,那么说明波函数不是M个指数函数之和。特别地,如果证实波函数是M个指数函数之和,那么解就确定了一个线性迭代关系,由此可以确定指数函数之指数。
这个算法在信号处理里用得很普遍,但是貌似在physics里还没被用过。做bethe ansatz的人整天跟这类波函数打交道,但是可能因为这个圈子是严重倾向于解析的,所以他们从来没从数值的角度考虑过,所以也没提出这个算法。
相关的文章在这里:
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-21 01:38
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社