从泰坦上的代码到成为晶体结构确定的泰坦

泰坦的电脑

来源:©剑桥大学计算机科学与技术系

1965年,剑桥大学的弗兰蒂泰坦计算机。几年后,乔治·谢尔德里克(George Sheldrick)用它编写了SHELX的初步版本

生态系统这个术语已经超越了狭隘的生物学定义,变成了一个更具隐喻性的空间,在这里,设备、思想、数据和金钱在一个基本自给自足的循环中旋转。在化学领域,有一个人可以说创造了一个生态系统,改变了分子科学。

乔治·谢尔德里克二战期间,他出生在英国哈德斯菲尔德。尽管据说他一开始学习就有点慢,但后来他成为了一名优等生,不仅获得了6门a -level课程,而且在数学、物理和化学方面表现出色。这使他获得了剑桥大学耶稣学院的奖学金。1963年毕业后,他加入了大学的课题组伊芙琳Ebsworth在大学里。作为博士学位的一部分,Sheldrick制备了硅基膦和胂,其结构尚不清楚。这是“d轨道参与”的光辉岁月,这个僵尸思想认为,需要空的d轨道来解释较重的主族元素的结构和成键。谢尔德里克和埃布斯沃斯对这两种燃性分子的振动光谱——液体的拉曼光谱和气体的红外光谱——进行了细致的对称分析,表明它们是平面的。

一个想法被点燃

1966年,他提交了他的论文,留在剑桥大学,作为耶稣学院的研究员和化学系的一名演示员。但由于对磷化氢结构的一些挥之不去的疑问,他联系了那位晶体学家德沃德Cruikshank英国在格拉斯哥的研究小组。该组的讲师布莱恩·比格利(Brian Beagley)最近建造了一个气相电子衍射仪器,可以进一步研究磷化氢。目前还不完全清楚这些具有燃性和剧毒的样本是如何从剑桥运到格拉斯哥的。

比格利记得,谢尔德里克非常自信,但也相当不耐烦,对数据收集和分析花了这么长时间感到失望。结果很明确:磷原子明显是金字塔形的。他们1968年的论文以一个警告结尾:“结构的结果确实证明了在红外光谱或拉曼光谱中缺乏波段的基础上进行几何预测的危险,因为这些波段可能太弱而无法观测到。”

在格拉斯哥,Sheldrick和Cruikshank谈到了在全国范围内运送如此可怕的危险样品的危险,以及晶体衍射可能是一门不那么伤脑筋的科学。克鲁克shank慷慨地分享了他的笔记和他对晶体学数据进行最小二乘约简的算法,谢尔德里克把这些算法带回了剑桥。当时每台计算机都是不同的,所以谢尔德里克需要将这种方法转换成可以在剑桥大型计算机上运行的代码,一台弗兰蒂Titan使用了一种非常低级的语言,称为Titan Autocode。有一个关键的限制:可用的内存量非常小。这意味着代码必须非常紧凑。一个后果是,Sheldrick没有在代码中添加解释性注释;他还在代码的不同位置出于不同目的重用了变量。如果它非常有效,它也完全无法穿透。

Sheldrick将成为一名优秀的程序员。几十年后,他的数据排序程序的速度让学生和有经验的同事都惊叹不已,他的速度可以超过其他人一两个甚至更多。

SHELX明朗化了

结晶学开始消耗谢尔德里克越来越多的精力。他的研究小组从事无机化学研究。但谢尔德里克一直在组装晶体学软件程序来完成晶体学的基本过程。当剑桥大学用IBM 370取代泰坦时,谢尔德里克的软件需要完全重写。一想到要再次做这项工作,他心里充满了恐惧,于是他把自己的代码翻译成更广泛使用的语言Fortran,并创建了一套程序来进行数据缩减、求解和结构优化。当他的学生离开去其他地方工作时,他们向谢尔德里克要了代码,这样他们就可以在不学习新东西的情况下解决结构问题。

1976年,谢尔德里克决定将他的软件作为一个完整的软件包发布,并命名为SHELX.该软件可免费用于学术目的,企业只需支付一定的费用即可使用。谢尔德里克从中赚来的钱被捐给了他的研究小组的会议基金。随着软件开始在世界各地传播,一个用户小组成立了,定期开会讨论改进。

他有时会进入一种恍惚状态——他的学生说“乔治正在重新启动”。

1978年,当谢尔德里克得到德国Göttingen大学的一个职位时,他接受的条件之一是给他一台电脑。这引起了相当大的恐慌;毕竟,学校已经有一个了!最终,谢尔德里克如愿以偿。他的团队很快就解决了一系列晶体学问题。在计算机可视化出现之前的时代,谢尔德里克开发了生成电子密度打印输出的程序。床单会被放在他办公室中央的大桌子上,电子密度的波峰和波谷是用粘土球建立起来的。这很费力,但信息量很大。这张桌子后来被用来喝下午咖啡,谢尔德里克会在那里主持会议,为他的学生们设置晶体学难题。如果他们反过来问他一个棘手的问题,他有时会进入一种恍惚状态——他的学生说“乔治正在重新启动”——然后带着一些参考文献或数据回来,这些资料是他从他们所说的过目不过目的记忆中检索出来的。

SHELX将经历几次迭代。今天,它是城里最大的游戏——免费,简单易用,功能强大。根据他自己和其他人的想法,Sheldrick将高效的程序混合在一起,创造了一个晶体学生态系统,产生了大量的结构数据,我们才刚刚开始了解。

致谢

我非常感谢kreo bujar的想法,感谢Brian Beagley, Bill Clegg, Jeremy Cockcroft和Peter Müller他们的见解和回忆。