第243章 他又体会到了那种无力感(2 / 2)
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
许铭连忙打开电脑,调出他们三个多月的心血,一个简陋的软件雏形,里面布满了密密麻麻的代码和数据,还有很多标注的错误和疑问。
肖宿快速浏览着,手指在键盘上轻轻敲击,偶尔停下来打量一下。
一旁的许铭紧张的看着他,连呼吸都变轻了许多。
“你们第一步算的是什么?”肖宿问。
“分子坐标,从输入文件里读取原子类型和核坐标,然后构造成距离矩阵。”
“距离矩阵之后呢?”
许铭犹豫了一下。
“按照论文里的思路,我们把距离矩阵映射到辛几何空间,这一步我们卡了很久,因为映射出来的结构总是不对。后来又参考了顾辛几何那篇论文里关于拉格朗日子流形的构造方法,才算勉强跑通了。”
肖宿没有评价勉强跑通这四个字。
他把几何映射模块的代码展开,屏幕上出现了大约三百行C++。
他的目光从函数签名开始往下走,在某一行停了下来。
“这里,你们在构造辛流形的时候,直接把原子核坐标当成了辛流形上的点。
但论文里写的是把电子密度分布视为辛流形上的一个截面,化学键对应的是这个截面上的拉格朗日子流形。
原子核的位置只是边界条件,不是映射对象本身。”
许铭凑近屏幕。
肖宿光标停着的那一行,正是他们构造初始流形的struitialManifold函数,里面第一个参数是nuclearCoordates。
“你的意思是,我们从头就把映射对象搞错了?”
“不是全错。”
肖宿说:
“原子核坐标决定了电子密度分布的边界,所以不是没用。
但是直接拿原子核坐标去做几何映射,信息维度是完全不够的。”
许铭的后背开始发凉。
三个多月。
他们花了三个多月在这个框架上,反复调试映射精度,换过三种不同的辛流形构造方法,甚至他们三个还专门啃了一遍顾辛几何的论文,就为了把那一段的数学工具用对。
结果肖宿告诉他,他们连映射的对象都没找对。
肖宿继续往下翻代码。
到了群表示分解模块的时候,他又停了下来。
这次停得更快,几乎是一展开就停了。
“你们用的对称群是SU(2)。”
“对。”
许铭说:“论文里提到了群表示论的不可约分解,我们查了文献,电子自旋的对称群是SU(2),所以……”
“电子自旋是SU(2),但是分子体系的对称性不是。”
肖宿打断他,“水分子的点群是C2v,苯是D6h,氨是C3v,不同分子的对称群不一样,不可约表示也不一样。
用统一的SU(2)去套,对称性信息就全丢了,计算结果当然对不上实验值。”
许铭张了张嘴,没说出话来,脸颊变得滚烫起来。
这本来应该非常基础,结果他们连这个都忽视了。
他忽然想起万汇杨在某次组会上说过的一句话:
肖宿的论文里,每一句话都是有原因的,你以为他在某一处提了一个看似无关的概念,读到后面才发现那个概念是整个论证的基石。
当时许铭觉得自已已经足够认真了,论文读了不下五十遍。
现在他才知道,读了五十遍和真正读懂之间,隔着的不是努力,是思维方式。
他又体会到了去年肖宿给他指出错误时的那种无力感。
那些他坚信的,觉得正确的东西,其实从一开始就全错了。