写计算化学文章时引用理论方法、基组、程序时应注意的问题
写计算化学文章时引用理论方法、基组、程序时应注意的问题
Issues that should be paid attention to when citing theoretical methods, basis sets, and programs when writing computational chemistry articles
Issues that should be paid attention to when citing theoretical methods, basis sets, and programs when writing computational chemistry articles
文/Sobereva @北京科音
First release: 2017-Apr-15 Last update: 2018-Apr-15
写文章时恰当引用是非常重要的,这不仅是学术严谨性、对读者负责的体现,也是对原作者的尊重。如今,文章被他引的数目是衡量一个科研人员功绩最重要的指标之一,重要性远远大于文章篇数和IF加和(Google学术搜索、ResearchGate等站点的科研人员个人档案也都着重体现被引次数而不体现IF),因此只有当某个人的成果以正确的方式被引用,此引用才容易被有效地记入他的总被引次数里,使其获得应得的学术荣誉。因此,如果写文章时在引用上不重视正确性,甚至乱引用,无异于侵害了原作者的权益。
笔者在看量子化学文献、审相关稿子时经常看到对理论方法、基组、程序不恰当引用的情况,本文对相关问题说一说,希望引起初学者的重视,切勿在引用上随便应付事。
1 引用理论方法时应注意的问题
几乎所有量子化学教科书里都介绍过的理论方法和概念不需要引用,历史都已经非常悠久了,只要是稍有相关常识的人都是懂得的,比如Hartree-Fock、MP2、DFT这些。如果碰到一些审稿人、编辑特别矫情非让你引,那么这些东西随便引用一本介绍了它们的经典的量化专著就行了,比如Levine的Quantum Chemistry或Szabo的Modern Quantum Chemisty(注:这本对DFT只字未提),或者引相关的高质量的综述也行,而没必要去引古老的原文。如果说什么方法、概念都得引用最早原文的话,那用微积分的时候还得引几百年前的书,明显不可能。至于像CCSD(T)这种被使用极为普遍(所有主流量化程序都支持)、历史很长(约30年)、主要作者(Pople)已故,但是其深度属于高级一点的方法,也值得引一下,引原文或者介绍它的专著、综述皆可。如果文章投的不是专业的刊物(如JCTC、PCCP、JCC、JPC等),考虑到一些读者对理论计算可能是外行,即便是HF、MP2、DFT这些也可以主动引一下。当文中使用了不是初学者都一定知道的理论方法,或者哪怕此理论方法已经众所周知,但其提出者还在世,都应当引用原文。因此,像Becke88这样的1988年就提出的众所周知的泛函,也要引原文,要不然其提出者Becke就吃亏了。
该引用的时候一定要引原文。绝对不能说比如张三写了篇应用性文章用到了BLYP泛函,或者李四写了本量化书或者写了篇DFT综述介绍了BLYP,于是自己用BLYP的时候引张三或李四的文章就完事了。这种情况,除非张三的文章研究的问题和自己当前的文章有直接关系,从而能表明BLYP对于当前研究适合,否则不应该引张三的文章,否则只会无意义地增加引用列表的长度。而李四的文章没太大引用必要,引的话至少也应当是在引用Becke88和LYP原文的前提下同时引用。
原文一定要找对。不能看别人使用某个方法时引用了某篇,自己用这个方法的时候也直接引用这篇。应当把那篇文章下下来或者至少仔细阅读摘要,看看到底是不是那个方法的原文,否则会造成以讹传讹。错误引用原文的情况很多见,B3LYP就是典型,其真正原文是JPC, 98, 11623 (1994),它是在这篇文章里才提出来的,然而很多人用B3LYP时却引用的1993年的B3PW91的原文(虽说B3LYP的灵感直接来自于B3PW91,但也不能这么引)。大家都知道B3LYP是杂化泛函,交换部分是Becke88,相关部分是LYP,引用B3LYP的时候虽然把Becke88和LYP的原文一并引用也不算错,但为了引用列表简洁,我个人不建议引用(要不然归根溯源所有相关的内容都得引用,那用个B2PLYP双杂化泛函岂不还得也把MP2,Becke88、LYP以及其中牵扯的Slater交换、VWN相关泛函全给引用上?)。
理论方法的原文,可以在你所用的程序的手册里找,一般都会给恰当的引用;也可以去看一些经典量化专著,里面也引了原文。
2 引用基组时应注意的问题
用的基组不管新旧,不管知名度高低,一定要引用,因此哪怕是最常用的6-31G*也必须引用。一方面是很多量化书往往在基组部分的介绍上不系统或者根本都没怎么介绍,另一方面基组的灵活性很高,而且往往有歧义。比如DZP就很有歧义,很多不同的人搞的基组,由于都是2-zeta加极化这个档次,而且基组提出当初作者又没给出明确的命名,导致多种基组在文献里都被称作DZP,到底文中的DZP是哪些人定义的那个,如果不看被引用的文章读者根本不知道(PS:叫做DZP的都是很老的、早被淘汰的一批基组,但近十几年Jorge等人又搞出一批叫做DZP的基组,用于标量相对论计算)。同一种基组,用于不同元素的定义往往是在不同文章里提出的,因此应当根据所用元素引用相对应的原文。比如,def2系列对H~Rn的定义和镧系的定义就是在不同文中提出的,如果没引对读者就找不到相应基组定义了。有的情况更复杂,还有些历史因素,比如6-311G*,虽然它属于Pople系列基组,但是Pople只参与了搞其前两周期的定义,之后的元素都是别人搞的,相应文中对6-311G甚至都只字未提,但往往也被冠上了6-311G系列的名字,这就带来一定含糊性。比如BSE网站上6-311G*对3d元素没有定义,而Gaussian程序里有定义,那是因为Gaussian程序里把JCP,91,1062里定义的Sc~Cu冠上了6-311G系列的名字。如果你算Fe用了6-311G*,你引用的却是这套基组对前两周期定义的原文,那读者如果不是Gaussian用户的话,怎么可能知道你算Fe用的基组到底是哪来的?
许多基组有一些变体,如果用的是变体,原始形式的原文可引可不引,但变体的原文则必须要引,毕竟从变体的原文里的引用中读者肯定也能找到原始形式的原文。比如给6-31G加弥散的方式是在JCP, 80, 3265中提出的,对前两周期元素加(d)或(d,p)极化是在TCA, 28, 213中提出的,如果你用了6-31+G*算了碳,则这两篇文献必须要引,而不能光引6-31G对C~F定义的原文JCP, 56, 2257。
获取基组正确原文的一般方法是去BSE上找到相应的基组,在给出的数据页里面会说明对不同元素的原文是什么。但是BSE上的数据并不全,比如目前撰文时,BSE上还没有def2对镧系的定义,但明明2012年就发表了(JCTC, 8, 4062)。对于所用的基组系列,如果有更专门的网站或数据来源,得到的基组定义和原文会更全面,比如def2系列基组在Turbomole基组库里最完整、Pople系列在Gaussian程序中的定义被认为是最标准的(应当引用的文献在手册的基组部分里有)、Stuttgart系列赝势和配套基组在Stuttgart作者的主页上是最全最新的。当然,也可以看看其它引用了相应基组的文章引的是哪篇,但如前所述一定要下下来那篇文献,最起码仔细看看摘要,确认是不是真正的原文。
3 引用程序时应注意的问题
文章中用的所有学术类程序必须引(但Origin、Photoshop之类非学术程序不需要引用)。绝对不能不引用或者自作主张瞎引用,比如就写个作者、网址了事。一定要从那个程序的主页、手册、程序输出信息中仔细找找有没有官方声明的标准引用方式,有的话一定要按那个方式引(绝大多数情况都会有)。如果没告诉你应该怎么引,应当包含这些内容(没有的部分就不写):作者、单位、程序名、版本号、网址、网址访问日期。投稿时候就这么写就完了,某些期刊编辑,特别是许多天朝的期刊编辑事儿特多,可能校样的时候非让你改引用格式,到时候再说。程序作者普遍很反感的事就是自己的程序被别人使用了,却没有按照声明的方式被恰当引用。拿Multiwfn为例,引用的方式在主页的Download栏目、手册第一章、程序启动一开始显示的信息中、入门贴《Multiwfn入门tips》(http://sobereva.com/167)里都写明了,提到至少要引用其2012年的原文J. Comput. Chem., 33, 580,可总有很多人不好好引用。根据我在收集引用Multiwfn的文章时的统计,有>1/5的文章都有以下情况,特别是中国研究者的文章这个问题尤为严重(不恰当引用比例甚至达到1/3):
(1)用了Multiwfn程序(一看作的图就知道),但文中对Multiwfn只字未提、原文也没引
(2)说明了用了Multiwfn程序,但没有任何引用
(3)说明了用了Multiwfn程序,但只引了网址或者作者+单位,原文没引
(3)说明了用了Multiwfn程序,引了Multiwfn原文,但是作者名字、卷号或页码写错了
(4)说明了用了Multiwfn程序,但没引Multiwfn原文而是只引了其作者的其它文章。还有的甚至只引了其他人使用了Multiwfn的文章或者引用的是跟Multiwfn完全没联系的文章。最坏的情况是,写着是用的Multiwfn做的计算,不仅没引Multiwfn原文,反倒引用的是别人程序的原文!
有很多程序在license(使用许可)当中已经严正声明,使用其程序的用户必须在文章中按照作者要求的标准方式引用程序。如果求引用,若作者看见,而且作者脾气不好的话,即便你的文章已经发表了,作者也可能向出版社告状把你的稿子撤掉!所以,绝对不要把对程序引用不当回事!!!
最后顺带提一下,对于学术程序、理论方法、基组的引用,如果没有极为特殊的情况(比如多几个词就会导致文章长度超过期刊对Communication、letter的要求),否则一律应当在正文里引用,别放到补充材料(SI)里头去,因为这都是对读者很重要的信息。而且放到SI里,Web of Science在统计引用次数的时候不会算进去,因此作者不会因此而受益(不过,Google学术倒可能也把SI里的引用算进去)。之前有人问我能不能把Multiwfn的引用放到SI里头去,我就纳闷,连Nature、Science版面这么金贵的文章都在正文里直接引用过Multiwfn,非要把引用放到SI里是何故?