集群开始计算以后

程序终于跑通的时候,已经是夜里了。

屏幕上没有什么可称作热闹的东西,只是一行一行输出,参数、积分值、误差估计,安静地往下走。真正费心的部分,到这里算是暂时放下了。剩下那些大量而繁琐的计算,便交给计算集群去做。机器有机器的耐心,人有人的限度。到了某个时刻,把任务提交出去,看着队列里多出一个名字,心里会有一点很轻的松弛。

这个问题,其实在美国的时候,Allen 教授就曾和我讨论过。

那时我们想弄清楚的,是双电子关联效应中二阶微扰的极限。问题说起来并不花哨,却很要紧。微扰方法不同于变分法,不能简单地说能量越低越好。变分法有它清楚的上界,计算者至少知道自己在朝哪个方向逼近;微扰却没有这样显眼的标尺。可是不能因为标尺不显眼,便以为它没有准则。

我一直想做的,就是在双电子体系里,把二阶微扰理论的下限说清楚。

理论工作有时很像在黑板前站久了。最初以为只隔一层纸,伸手便能碰到;真往前走,才发现那层纸后面还有墙,墙后面还有一道窄门。这个问题拖了这么久,主要便卡在三电子积分的精确求解上。九维积分摊开在那里,像一块沉默的石头。你绕着它走,换变量,查公式,试展开,算来算去,它仍旧在原处。

这周终于借助 Mathematica,把这个积分的快速精确求解做了出来。

说“终于”二字,并不夸张。实际计算中,已经可以精确到四十位有效数字。四十位这个数,写在纸上很轻,真正算到那里,却知道背后有多少细小的谨慎。每一个表达式都要检查,每一步化简都不能太随意。符号计算有它漂亮的一面,也有它危险的一面。它会替人走很远的路,却不会替人判断这条路是不是仍在原来的问题上。

我有时会想,这些年是不是浪费了太多时间。

杂事太多,精力被切碎。一个原本应当早些完成的问题,在书桌的一角放了许久。文件夹还在那里,笔记也在,有些推导写了一半,墨迹已经旧了。若早几年少被别的事情牵走,也许这件工作早就可以完成。这样想的时候,心里不免有一点惭愧。

可是再往回看,也未必全是耽误。

这些年里,我确实更认真地学了关联理论,也更熟悉 Mathematica 的脾气。许多当年看不清的地方,后来慢慢有了轮廓;许多起初只会机械使用的工具,后来才知道怎样顺着它的长处做事。也许有些问题不能在最初遇见它的时候解决,并不是因为你不够努力,而是因为你还没有长到能够解决它的位置。

我并不觉得自己聪明。

这一点,年纪越大越清楚。真正聪明的人,常常一眼看见结构,三五步便走到关键处。我做不到。我的办法笨些,只能反复看,反复算,靠时间把不明白的地方一点点磨薄。好在物理并不完全拒绝笨人。只要还肯下功夫,肯承认自己不会,肯在一个错误面前停下来重新查起,它总会偶尔给人一点回报。

常有人问,做计算的和做理论的到底有什么不同。

这个问题如今变得有些含混。似乎只要拿一个现成程序,选几个基组,调几组参数,得到若干能量和图表,就可以说自己在做理论。这样的事当然也是研究的一部分,工具用得好,也能解决实际问题。可若把理论只缩成这种操作,未免太委屈了理论,也太放纵了计算。

计算终究只是手段。

它可以很强大,可以替我们走到手算不能到达的地方;它可以在巨大的矩阵、复杂的积分、漫长的迭代中保持冷静。可它回答不了问题本身为什么值得问,也不能替我们分辨一个结果究竟意味着什么。数字不会自己长出物理意义。图线也不会因为画得平滑,便自动成为理解。

真正的理论工作,仍然要面对未知。

它要从一团看似杂乱的现象里抽出结构,要给一个模糊的问题找到可检验的表述,要在各种近似、限制和误差之间守住清楚的判断。有时结论未必是绝对的。从量子力学到统计物理,我们早已习惯了概率性的语言。可是即使答案在本质上带有概率,它也必须真正回答了某个问题,而不是只把问题换一种格式存放起来。

这一次,我想回答的只是一个很具体的问题:双电子情况下,二阶微扰理论究竟能走到哪里。

问题不大,却足够清楚。清楚的问题常常比宏大的题目更可亲,也更严厉。它不允许你靠气势取胜,也不允许你用漂亮话遮掩。积分若算不出,理论便停在那里;程序若不稳,结论便没有根基;物理图像若不明白,四十位有效数字也只是一串沉默的符号。

现在程序已经完成,集群开始慢慢计算。

我坐在桌前,反倒没有想象中那样兴奋。只是觉得一块放了多年的石头,终于被稍稍搬动了一下。窗外很静,机器在远处工作,屏幕上偶尔刷新。那些数字还要跑很久,论文也还要写,许多检验、比较和修正还在后面。

可是今晚,至少可以把手从键盘上拿开一会儿。

一个问题从多年前的谈话里走来,绕过许多杂事、迟疑和自责,终于在此刻有了一个能继续往前的样子。对我这样不算聪明、只能慢慢做事的人来说,这已经是很大的安慰了。