计算化学(computational chemistry)是理论化学的一个分支。计算化学的主要目标是利用有效的数学近似以及电脑程序计算分子的性质(例如总能量,偶极矩,四极矩,振动频率,反应活性等)并用以解释一些具体的化学问题。计算化学这个名词有时也用来表示计算机科学与化学的交叉学科。

理论化学泛指采用数学方法来表述化学问题,而计算化学作为理论化学的一个分支,常特指那些可以用电脑程序实现的数学方法。计算化学并不追求完美无缺或者分毫不差,因为只有很少的化学体系可以进行精确计算。不过,几乎所有种类的化学问题都可以并且已经采用近似的算法来表述。

理论上讲,对任何分子都可以采用相当精确的理论方法进行计算。很多计算软件中也已经包括了这些精确的方法,但由于这些方法的计算量随电子数的增加成指数或更快的速度增长,所以他们只能应用于很小的分子。对更大的体系,往往需要采取其他一些更大程度近似的方法,以在计算量和结果的精确度之间寻求平衡。

研究领域

计算机在化学中的应用。又称计算机化学。包括 5 个主要研究领域:① 化学中的数值计算。即利用计算数学方法 ,对化学各专业的数学模型进行数值计算或方程求解,例如 ,量子化学和结构化学中的演绎计算、分析化学中的条件预测、化工过程中的各种应用计算等。②化学模拟。包括:数值模拟,如用曲线拟合法模拟实测工作曲线;过程模拟,根据某一复杂过程的测试数据,建立数学模型,预测反应效果;实验模拟,通过数学模型研究各种参数(如反应物浓度、温度、压力)对产量的影响,在屏幕上显示反应设备和反应现象的实体图形,或反应条件与反应结果的坐标图形。③模式识别在化学中的应用。最常用的方法是统计模式识别法,这是一种统计处理数据、按专业要求进行分类判别的方法,适于处理多因素的综合影响,例如,根据二元化合物的键参数(离子半径、元素电负性、原子的价径比等)对化合物进行分类,预报化合物的性质。模式识别广泛用于最优化设计,根据物性数据设计新的功能材料。④化学数据库及检索。在化学数据库中,数据、常数、谱图、文摘、操作规程、有机合成路线、应用程序……都是数据。数据库能存贮大量信息,并可根据不同需要进行检索。根据谱图数据库进行谱图检索,已成为有机分析的重要手段,首先将大量的谱图(红外、核磁、质谱等)存入数据库,作为标准谱图,然后由实验测出未知物的各种谱图,把它们和标准谱图进行对照,就可求得未知物的组成和结构。⑤化学专家系统。专家系统是数据库与人工智能结合的产物,它把知识规则作为程序,让机器模拟专家的分析、推理过程,达到用机器代替专家的效果。如酸碱平衡专家系统,内容包括知识库和检索系统,当你向它提出问题时,它能自动查出数据,找到程序,进行计算、绘图 、推理判断等处理,并用专业语言回答你的问题,如溶液pH值的计算,任意溶液用酸、碱进行滴定时操作规程的设计。

1.利用计算机程序解量子化学方程来计算物质的性质(如能量,偶极距,振动频率等),用以解释一些具体的化学问题。这是一个计算机科学与化学的交叉学科。

2.利用计算机程序做分子动力学模拟。

应用

计算化学主要应用已有的电脑程序和方法对特定的化学问题进行研究。而算法和电脑程序的开发则由理论化学家和理论物理学家完成。计算化学在研究原子和分子性质、化学反应途径等问题时,常侧重于解决以下两个方面的问题:

为合成实验预测起始条件

研究化学反应机理、解释反应现象

计算化学的子学科主要包括:

原子和分子的计算机表述

利用计算机协助存储和搜索化学信息数据 (参见化学数据库)

研究化学结构与性质之间的关系 (参见定量构效关系(QSAR)及定量构性关系(QSPR))

根据对作用力模拟对化学结构进行理论阐释

计算机辅助化合物合成

计算机辅助特性分子设计(例如计算机辅助药物设计)

发展

计算化学其实是一门有着悠久历史的研究领域,自一九二零年代量子力学理论建立以来,许多科学家曾尝试以各种数值计算方法来深入了解原子与分子之各种化学性质。然而在数值计算机广泛使用之前,此类的计算由于其复杂性而只能应用在简单的系统与高度简化的理论模型之中。在十多年前,计算化学仍是一门须具有高度量子力学与数值分析素养的人从事的研究,而且由于其庞大的计算量,绝大部分的计算工作需依靠昂贵的大型计算机主机或高阶工作站来进行。

普及

然而,此情况在九十年代中期开始有了重大的改变。由于使用在个人计算机上的处理器(Pentium, Pentium Pro)以及外围设备(如高速内存及硬盘)的大幅进步,个人计算机的运算速度已经直逼一些传统的工作站;再加上个人计算机系统无需负担传统多人多任务系统中复杂的作业,使得个人计算机逐渐开始成为从事量子化学计算的一种经济而有效率的工具。然而,早期为个人计算机操作系统所发展的计算化学软件非常有限,因为数十年来大部分的科学应用软件都是在Unix操作系统下所开发出来的,但当时在个人计算机上的Unix操作系统都非常昂贵且不易安装与使用。就在此时,逐渐成熟的Linux操作系统开始被广泛的使用在个人计算机之上。Linux 是由一位芬兰人Torvald Linus所开发出来的在个人计算机上执行的Unix操作系统。在经过数年全世界无数人的协助发展下 ,在九十年代末期Linux已成为一功能齐全的网络多人多任务操作系统。Linux最吸引人 的地方在其稳定性且不需要昂贵的计算机配备,而且更重要的是它基本上是免费的。比 如说,大家对目前普遍使用的操作系统当机的情况并不陌生,但Linux工作站通常可以正常运作几个月而不出现任何问题;此外,一般个人计算机上使用的操作系统、网络、网页、邮件、档案、X-Window等服务器软件动辄需要上万元,但这些在Linux操作系统中几乎都可免费取得。因此,搭配Linux操作系统的个人计算机现在已成为量子化学计算的一种很好的选择。当然,如本刊中另一篇文章所介绍的,近几年来许多可在Windows操作系 统下运作的计算化学软件也陆续出现,功能也不断的增强,使得个人计算机成为当今计 算化学领域中非常重要的工具。

计算化学普及的另外一个原因是图形接口的发展与使用。传统上计算工作的输入与输出都是以文字方式来表示,不但输入耗时易错,许多计算结果的解读也非常不易。近年来图形接口的使用大大的简化了这些过程,使得稍具计算化学知识的人都能够轻易的设计复杂的理论计算,并且能够以简单直接的视觉效果来分析计算所得的结果。现在的研究生可能很难想象以往我们成天坐在文字终端机前一个一个字的将大分子的Z-matrix敲入 的生活。

第一原理方法

第一原理方法(Ab initio methods),也称为从头算方法,常指基于量子力学理论的,完全由理论推导而得,不使用基本物理常数和原子量以外的实验数据、以及经验或者半经验参数的求解薛定谔方程的方法。大多数情况下这些第一原理方法包括一定的近似,而这些近似常由基本数学推导产生,例如换用更简单的函数形式或采用近似的积分方法。

大多数第一原理方法使用波恩-奥本海默近似,将电子运动和原子核运动分离以简化薛定谔方程。计算经常分两个步骤进行:

电子结构计算

化学动力学计算

电子结构

电子结构可以通过求解定态薛定谔方程(也成为不含时薛定谔方程)得到。求解过程常使用原子轨道线性组合 (LCAO)得到的基组来进行近似。通过这种近似,薛定谔方程可以转化为一个"简单"的电子哈密顿量的本征值方程。该方程的解为离散集。解得的本征值是分子结构的函数。这种对应关系称为势能面。

Hartree-Fock是最常见的一种第一原理电子结构计算。在Hartree-Fock近似中,每个电子在其余电子的平均势中运动,但是不知道这些电子的位置。当电子离得很近时,即使是用平均方法考虑电子间的库仑相互作用,电子也不能相互避开,因此在Hartree-Fock中高估了电子排斥。Hartree-Fock方程需采用变分法求解,所得的近似能量永远等于或高于真实能量,随着基函数的增加,Hartree-Fock能量无限趋近于Hartree-Fock极限能。

化学动力学计算

很多方法先进行Hartree-Fock计算,随后对电子的瞬时相关对此进行修正。相应能量的降低称为电子相关能。这些方法称为后Hartree-Fock方法,包括多体微扰理论、耦合簇理论 (Coupled Cluster) 等。

量子蒙特卡罗 (QMC) 是另外一种解决电子相关问题的方法。在量子蒙特卡罗中,体系的基态波函数显式地写成关联的波函数,也就是说波函数是电子--电子之间距离的显式函数。量子蒙特卡罗采用蒙特卡罗方法对积分进行数值解析。量子蒙特卡罗计算非常耗时,但却可能是目前精确度最高的第一原理方法。

密度泛函理论 (DFT) 的许多常用泛函均包含由实验数据拟合而来的参数。但在解决分子的电子结构问题时也常将密度泛函理论被当做第一原理方法。密度泛函理论使用电子密度而不是波函数来表述体系能量。在DFT计算中,哈密顿量的一项,交换-相关泛函,采用近似形式。

当采取的近似足够小的时候,第一原理电子结构方法的结果可以无限趋近准确值。但是,与真实值的偏差往往并不随近似的减少而单调递减,有时最简单的计算反而会有更准确的结果。第一原理计算的主要缺点是运算量巨大,往往需要大量的计算时间、内存和磁盘空间。HF方法的计算量随体系的增大以 N4 增长(N 是基函数的数目)–计算两倍大的体系需要16倍的时间–电子相关方法的增长速度更快(DFT计算大约以 N3 增长,相比之下是效率最高的电子相关方法)。

计算化学方法也可以用来解决固体物理的问题。晶体的电子结构通常用能带结构来表示。第一原理和半经验方法得到的轨道能量可以进一步应用于能带结构的计算当中。

量子蒙特卡罗

量子蒙特卡罗 (QMC) 是另外一种解决电子相关问题的方法。在量子蒙特卡罗中,体系的基态波函数显式地写成关联的波函数,也就是说波函数是电子--电子之间距离的显式函数。量子蒙特卡罗采用蒙特卡罗方法对积分进行数值解析。量子蒙特卡罗计算非常耗时,但却可能是目前精确度最高的第一原理方法。

密度泛函理论 (DFT) 的许多常用泛函均包含由实验数据拟合而来的参数。但在解决分子的电子结构问题时也常将密度泛函理论被当做第一原理方法。密度泛函理论使用电子密度而不是波函数来表述体系能量。在DFT计算中,哈密顿量的一项,交换-相关泛函,采用近似形式。

当采取的近似足够小的时候,第一原理电子结构方法的结果可以无限趋近准确值。但是,与真实值的偏差往往并不随近似的减少而单调递减,有时最简单的计算反而会有更准确的结果。第一原理计算的主要缺点是运算量巨大,往往需要大量的计算时间、内存和磁盘空间。HF方法的计算量随体系的增大以 N4 增长(N 是基函数的数目)–计算两倍大的体系需要16倍的时间–电子相关方法的增长速度更快(DFT计算大约以 N3 增长,相比之下是效率最高的电子相关方法)。

计算化学方法也可以用来解决固体物理的问题。晶体的电子结构通常用能带结构来表示。第一原理和半经验方法得到的轨道能量可以进一步应用于能带结构的计算当中。

密度泛函理论

密度泛函理论 (DFT) 的许多常用泛函均包含由实验数据拟合而来的参数。但在解决分子的电子结构问题时也常将密度泛函理论被当做第一原理方法。密度泛函理论使用电子密度而不是波函数来表述体系能量。在DFT计算中,哈密顿量的一项,交换-相关泛函,采用近似形式。

当采取的近似足够小的时候,第一原理电子结构方法的结果可以无限趋近准确值。但是,与真实值的偏差往往并不随近似的减少而单调递减,有时最简单的计算反而会有更准确的结果。第一原理计算的主要缺点是运算量巨大,往往需要大量的计算时间、内存和磁盘空间。HF方法的计算量随体系的增大以 N4 增长(N 是基函数的数目)–计算两倍大的体系需要16倍的时间–电子相关方法的增长速度更快(DFT计算大约以 N3 增长,相比之下是效率最高的电子相关方法)。

计算化学方法也可以用来解决固体物理的问题。晶体的电子结构通常用能带结构来表示。第一原理和半经验方法得到的轨道能量可以进一步应用于能带结构的计算当中。

第一原理电子结构方法的常可分为:

Hartree-Fock方程

多体微扰理论

多组态自洽场理论 (MCSCF)

组态相互作用方法 (CI)

多组态相互作用 (MRCI)

耦合簇理论 (Coupled Cluster)

二次组态相互作用 (QCI)

量子蒙特卡罗

密度泛函理论

广义价键理论 (GVB)

现代价键理论

化学动力学

Once the electronic and nuclear variables are separated (within the Born-Oppenheimer representation), in the time-dependent approach, the wave packet corresponding to the nuclear degrees of freedom is propagated via the time evolution operator associated to the time-dependent Schrödinger equation (for the full molecular Hamiltonian). In the complementary energy-dependent approach, the time-independent Schrödinger equation is solved using the scattering theory formalism. The potential respresenting the interatomic interaction is given by the potential energy surfaces. In general, the potential energy surfaces are coupled via the vibronic coupling terms.

The most popular methods for propagating the wave packet associated to the molecular geometry are

the split operator technique,

多组态含时Hartree方法(MCTDH),

the semiclassical method.

分子动力学

分子动力学使用牛顿运动定律研究系统的含时特性,包括振动或布朗运动。大部分情况经常加入一些经典力学的描述。分子动力学与密度泛函理论的结合称作Car-Parrinello方法。

半经验方法

电子结构

半经验方法省略或近似处理了Hartree-Fock计算中的一些项(例如双电子积分)。为了修正这些近似方法带来的误差,半经验方法计算使用了一系列由实验结果拟合的参数。有时,这些参数是根据第一原理计算结果进行拟合的。

经验方法是对半经验方法的进一步近似。经验方法并没有包括哈密顿量的双电子部分。经典方法包括埃里克·休克尔提出的应用于π电子体系的Huckel方法和Roald·霍夫曼提出的扩展Huckel方法。

半经验计算比第一原理计算快很多。但是如果计算的分子与参数化该方法时使用的分子结构不相近时,半经验方法可能给出完全错误的结果。

半经验方法在有机化学领域应用最为广泛,因为有机分子的大小适中并主要由少数几种原子构成。

与经验方法类似,半经验方法也可分为两大类:

限于π电子体系的半经验方法

限于价电子体系的半经验方法

目前大部分的方法属于第二类半经验方法。

分子力学方法

很多情况下,对大分子体系的处理可以完全避免使用量子化学计算。分子力学模拟使用经典力学模型(例如谐振子)描述化合物的能量。分子力学模型的所有常数均通过实验数据或第一原理计算结果得到。参数和方程的优化结果称为分子力场。

进行参数化的化合物库对分子力学方法的计算成功与否至关重要。针对某类分子优化的力场只有在应用于同类分子时才可保证得到可信的结果。