科学网

 找回密码
  注册

tag 标签: 计算方法

相关帖子

版块 作者 回复/查看 最后发表

没有相关内容

相关日志

[转载]影响因子计算方法
tongtiantian 2011-12-23 20:12
影响因子是以年为单位进行计算的。 以1992年的某一期刊影响因子为例,IF(Impact Factor)(1992年) = A / B   其中,   A = 该期刊1990年至1991年所有文章在1992年中被引用的次数;   B = 该期刊1990年至1991年所有文章数。
个人分类: 期刊出版|3245 次阅读|0 个评论
Dayhoff替换矩阵的计算方法
friendpine 2011-11-23 22:43
首先,蛋白序列数据的选择很重要,因为需要统计数据集中发生的aa替换,而这依赖于祖先状态的重建,后者在序列差异较大时不够准确,因此作者这里用到的序列之间的aa差异不超过15%; 然后,对来自同一个家族的序列建进化树,得到祖先序列,从而可以统计aa之间的替换次数。把数据集中来自不同家族统计得到的aa之间的替换次数进行累加。 然后,计算每种aa的可变性,即对于上面构建的进化树上的所有分支上的两两序列,计算aa出现的次数,以及aa突变的次数,累加起来,得到aa的可变性。 最后,计算aa之间的突变概率。Mij=lamda*mj*Aij/sum(Aij) ,Mij表示在经过一个PAM之后j突变为i的概率,lamda为常数,mj为为j的可变性。 如果需要计算经过多个PAM,比如PAM250,则对这个矩阵进行250次乘方,得到经过250个PAM之后aa之间的替换矩阵。 用上面得到的Mij除以aa出现的频率,得到了用概率表示的替换矩阵。
个人分类: 生物信息学与计算生物学|0 个评论
[转载]确定染色体同源片段的统计与计算方法及其在水稻和拟南芥基因组中
syfox 2011-11-13 18:16
作者: 王希胤 学科专业: 生物学(生物信息学) 授予学位: 博士 学位授予单位: 北京大学 北京大学 导师姓名: 罗静初 郝柏林 学位年度: 2005 确定染色体同源片段是基因组学研究的一个重要方面,有助于揭示基因组在历史上发生的多种多样的进化事件,如DNA复制、染色体重排、基因丢失等。研究发现,谷物之间、哺乳动物之间、分属不同种的酵母之间都存在大规模的染色体同源片段;物种内部也常发现由于大规模基因组复制而形成的同源片段;约80%的拟南芥基因组处于复制区,分析表明,拟南芥的进化过程中,至少发生了一次或三次多倍化事件。 水稻基因组中也发现了许多大的复制片段,但对于这些复制片段的规模、复制事件的性质和发生时间,存在很大分歧。基于粳稻基因组草图数据分析,Goff等推测四千到五千万年前发生了一次多倍化事件。而VandePeer等发现仅15%基因位于复制区,而且大部分与水稻2号染色体相关,因此认为水稻在历史上只有一、两条染色体发生了复制,从而有一个非整倍体祖先,并推断相应非整倍化事件发生在七千万年前;尽管后来他们找到了较多复制片段,但依然维持已有结论。几乎在同时而且同样基于粳稻基因组数据,Paterson等利用不同方法发现61.9%水稻基因位于复制区,远多于VandePeer等的发现;他们认为这可能源于约七千万年前一次多倍化事件。 这种争议主要在于是多倍化还是非整倍化,也就是复制发生的规模,这可能是由于采用的方法不同造成的。实际上,大规模复制之后,由于大量染色体重排、基因丢失、基因插入等,使染色体片段间同源关系变得面目全非,从现存的遗迹识别同源性并相当困难。目前,已有多种推断染色体间同源关系的方法,或基于遗传图谱、或基于序列比较、或基于基因共群性(synteny)、或基于基因共线性(colinearity),等等。基于共线性的方法有很多优点,由于考虑了基因顺序和密度,所确定的同源片段较为可靠,而且运算效率较高。VandePeer等发展了名为ADHoRe的共线性方法,并用于水稻基因组分析。然而,现有共线性方法有一些缺陷,最大问题在于参数选择基于经验,没有深入合理的理论分析。例如,相邻同源基因对之间的距离是一个重要参数,经验方法难以取定一个合适的值,而把不适当的值用于寻找同源区域,会使结果严重地偏离实际情况。 本文发展了一个新的基于共线性的确定同源片段方法,其主要特点是:合理的统计推断、较强的适应性、计算的高效性。该方法的参数选择,尤其是相邻同源基因对距离确定,依据基因组特点做了合理的理论分析,对推断的同源区显著性也做了深入的统计学检验。本文开发了一个新的动态规划算法并编写了程序 ColinearScan实现这个共线性方法。 利用ColinearScan分析370Mb水稻籼稻亚种基因组序列,发现337个复制片段涉及全部12条染色体的76%水稻基因位于这些复制区。基于上述结果,以及对共线性基因系统发育学分析,本文推断在七千万年前,水稻祖先发生了一次全基因组复制,即多倍化事件。本文支持Paterson等的结论,而与VandePeer等的结论不一致。根据分析,我们认为VandePeer等所得结论与Paterson和本文研究结果不一致的原因在于不适当的参数选择以及过于严格的线性回归分析方法。解决这个分歧的意义在于,确定了一次发生于主要的谷物,如玉米、小麦、大麦、高粱、谷子、甘蔗等,分化之前的多倍化事件,这个多倍化影响了这些人类赖以生存的主要作物的基因组结构。本文研究结果得到了Paterson和VandePeer小组的高度评价,后者在发表于 NewPhytologist的评述文章中,承认其分析存在问题,并重做了水稻基因组分析,得到了和笔者的工作相近的结果(见附录)。 基于水稻基因组复制图样和水稻与高粱的比较基因组图谱,本文重构了两个物种的染色体结构进化图谱,推断谷物的共同祖先在多倍化发生之前有6条染色体。这对研究谷物染色体进化有重要意义。 另外,本文还确定了拟南芥基因组中的复制片段,发现约82.6%的拟南芥基因组处于复制区,而且这些复制区常常是多拷贝的。按照这个发现,本文支持拟南芥基因组曾经发生三次多倍化的可能性。本文还全面分析和确定了水稻和拟南芥之间的染色体同源片段,这些具有共线性基因的同源片段覆盖水稻和拟南芥基因组的 61.25%和87.35%;然而,几乎所有这些片段长度都小3Mb,所以很难建构单、双子中植物之间可用于基因定位信息共享的比较遗传图谱。 已测序的植物基因组:Sequenced plant genomes 2010-09-01 16:27:14 |分类: 生物信息分析 |标签: 基因组 | 字号 大 中 小 订阅 一直想找到这样的一个网站,可以把目前已经测序的植物基因组信息做个收集和整理。看来,天下有心人真不少,终于还是让我找到组织了。唯一遗憾的是,这样的网站还是一如既往的由咱中国以外的科学家们在做收集和维护,算是点点遗憾。以下是网址,感兴趣的同学可以去看看! This site attempts to track all plant genomes with published sequences, and at least some of the genomes currently in the process of being sequenced. Genomes are divided into four states: Published: A complete genome sequence is available, and anyone can publish papers on it without restriction. Unpublished: The complete sequence (or a substantially complete sequence) is available, but whole genome analysis cannot be published until the group that sequenced the genome publishes their own paper describing it. These restrictions are outlines by the Fort Lauderdale Convention . Incomplete: A partial assembly is available, but sequencing and/or assembly and/or gene annotation is ongoing. Unreleased: Genome sequencing has at least begun, but no data has been made publicly available. http://synteny.cnr.berkeley.edu/wiki/index.php/Sequenced_plant_genomes
3990 次阅读|0 个评论
[转载]转载:matlab聚类
Sunteresa 2011-11-4 14:37
学习中。。。 不知道WEKA中是否有这样灵活的接口函数。。。 ----------------------------------------------- 转载一: MATLAB 提供了两种方法进行聚类分析: 1 、利用 clusterdata 函数对数据样本进行一次聚类,这个方法简洁方便,其特点是使用范围较窄,不能由用户根据自身需要来设定参数,更改距离计算方法; 2 、分步聚类:( 1 )用 pdist 函数计算变量之间的距离,找到数据集合中两辆变量之间的相似性和非相似性;( 2 )用 linkage 函数定义变量之间的连接;( 3 )用 cophenetic 函数评价聚类信息;( 4 )用 cluster 函数进行聚类。 下边详细介绍两种方法: 1 、一次聚类 Clusterdata 函数可以视为 pdist 、 linkage 与 cluster 的综合,一般比较简单。 【 clusterdata 函数: 调用格式: T=clusterdata(X,cutoff) 等价于Y=pdist(X,’euclid’); Z=linkage(Y,’single’); T=cluster(Z,cutoff) 】 2 、分步聚类 ( 1 )求出变量之间的相似性 用 pdist 函数计算出相似矩阵,有多种方法可以求距离,若此前数据还未无量纲化,则可用 zscore 函数对其标准化 【 pdist 函数: 调用格式: Y=pdist(X,’metric’) 说明: X 是 M*N 矩阵,为由 M 个样本组成,每个样本有 N 个字段的数据集 metirc 取值为:’ euclidean’ :欧氏距离(默认) ‘seuclidean’ :标准化欧氏距离; ‘mahalanobis’ :马氏距离 … 】 pdist 生成一个 M*(M-1)/2 个元素的行向量,分别表示 M 个样本两两间的距离。这样可以缩小保存空间,不过,对于读者来说却是不好操作,因此,若想简单直观的表示,可以用 squareform 函数将其转化为方阵,其中 x(i,j) 表示第 i 个样本与第 j 个样本之的距离,对角线均为 0. ( 2 )用 linkage 函数来产生聚类树 【 linkage 函数: 调用格式: Z=linkage(Y,’method’) 说明: Y 为 pdist 函数返回的 M*(M-1)/2 个元素的行向量, method 可取值: ‘single’ :最短距离法(默认); ’complete’ :最长距离法; ‘average’ :未加权平均距离法; ’weighted’: 加权平均法 ‘centroid’ : 质心距离法; ‘median’ :加权质心距离法; ‘ward’ :内平方距离法(最小方差算法) 】 返回的 Z 为一个 (M-1)*3 的矩阵,其中前两列为索引标识,表示哪两个序号的样本可以聚为同一类,第三列为这两个样本之间的距离。另外,除了 M 个样本以外,对于每次新产生的类,依次用 M+1 、 M+2 、 … 来标识。 为了表示 Z 矩阵,我们可以用更直观的聚类数来展示, 方法为: dendrogram(Z), 产生的聚类数是一个 n 型树,最下边表示样本,然后一级一级往上聚类,最终成为最顶端的一类。纵轴高度代表距离列。 另外,还可以设置聚类数最下端的样本数,默认为 30 ,可以根据修改 dendrogram(Z,n) 参数 n 来实现, 1nM 。 dendrogram(Z,0) 则表 n=M 的情况,显示所有叶节点。 ( 3 )用 cophenetic 函数评价聚类信息 【 cophenet 函数: 调用格式: c=cophenetic(Z,Y) 说明:利用 pdist 函数生成的 Y 和 linkage 函数生成的 Z 计算 cophenet 相关系数。】 cophene 检验一定算法下产生的二叉聚类树和实际情况的相符程度 , 就是检测二叉聚类树中各元素间的距离和 pdist 计算产生的实际的距离之间有多大的相关性,另外也可以用 inconsistent 表示量化某个层次的聚类上的节点间的差异性。 ( 4 )最后,用 cluster 进行聚类,返回聚类列。 转载二: Matlab 提供了两种方法进行聚类分析。 一种是利用 clusterdata 函数对样本数据进行一次聚类,其缺点为可供用户选择的面较窄,不能更改距离的计算方法; 另一种是分步聚类:( 1 )找到数据集合中变量两两之间的相似性和非相似性,用 pdist 函数计算变量之间的距离;( 2 )用 linkage 函数定义变量之间的连接;( 3 )用 cophenetic 函数评价聚类信息;( 4 )用 cluster 函数创建聚类。 1 . Matlab 中相关函数介绍 1.1 pdist 函数 调用格式: Y=pdist(X,’metric’) 说明:用 ‘metric’ 指定的方法计算 X 数据矩阵中对象之间的距离。 ’ X :一个 m × n 的矩阵,它是由 m 个对象组成的数据集,每个对象的大小为 n 。 metric’ 取值如下: ‘euclidean’ :欧氏距离(默认); ‘seuclidean’ :标准化欧氏距离; ‘mahalanobis’ :马氏距离; ‘cityblock’ :布洛克距离; ‘minkowski’ :明可夫斯基距离; ‘cosine’ : ‘correlation’ : ‘hamming’ : ‘jaccard’ : ‘chebychev’ : Chebychev 距离。 1.2 squareform 函数 调用格式: Z=squareform(Y,..) 说明: 强制将距离矩阵从上三角形式转化为方阵形式,或从方阵形式转化为上三角形式。 1.3 linkage 函数 调用格式: Z=linkage(Y,’method’) 说 明:用‘ method ’参数指定的算法计算系统聚类树。 Y : pdist 函数返回的距离向量; method :可取值如下: ‘single’ :最短距离法(默认); ‘complete’ :最长距离法; ‘ average ’:未加权平均距离法; ‘ weighted ’: 加权平均法; ‘centroid’ :质心距离法; ‘median’ :加权质心距离法; ‘ward’ :内平方距离法(最小方差算法) 返回: Z 为一个包含聚类树信息的( m-1 )× 3 的矩阵。 1.4 dendrogram 函数 调用格式: =dendrogram(Z,p , …) 说明:生成只有顶部 p 个节点的冰柱图(谱系图)。 1.5 cophenet 函数 调用格式: c=cophenetic(Z,Y) 说明:利用 pdist 函数生成的 Y 和 linkage 函数生成的 Z 计算 cophenet 相关系数。 1.6 cluster 函数 调用格式: T=cluster(Z,…) 说明:根据 linkage 函数的输出 Z 创建分类。 1.7 clusterdata 函数 调用格式: T=clusterdata(X,…) 说明:根据数据创建分类。 T=clusterdata(X,cutoff) 与下面的一组命令等价: Y=pdist(X,’euclid’); Z=linkage(Y,’single’); T=cluster(Z,cutoff); 2. Matlab 程序 2.1 一次聚类法 X= ; T=clusterdata(X,0.9) 2.2 分步聚类 Step1 寻找变量之间的相似性 用 pdist 函数计算相似矩阵,有多种方法可以计算距离,进行计算之前最好先将数据用 zscore 函数进行标准化。 X2=zscore(X); % 标准化数据 Y2=pdist(X2); % 计算距离 Step2 定义变量之间的连接 Z2=linkage(Y2); Step3 评价聚类信息 C2=cophenet(Z2,Y2); //0.94698 Step4 创建聚类,并作出谱系图 T=cluster(Z2,6); H=dendrogram(Z2);
个人分类: image process|4253 次阅读|0 个评论
[转载]多孔泡沫金属比表面积的计算方法
热度 1 hewu 2011-11-4 13:38
多孔金属(泡沫金属)是一类性能优异而应用广泛的工程材料,其很多应用(如消音降噪、热量交换、反应催化、电化学过程以及人工骨骼生物组织内生长等场合)的性能都依赖孔隙表面的结构形态和多孔体的比表面积.目前测试多孔材料比表面积的主要方法有气体吸附法(BET法)、流体透过法和压汞法等,理论计算则限于已知多孔体孔隙尺寸和孔棱尺寸(或孔壁厚度)的情况,而孔棱尺寸(或孔壁厚度)问题只有在特别简单的条件下才能解决.在测试方法中,气体吸附法可测量的比表面积量级可以很小;透过法测量流体透过多孔体的阻力来测算比表面积,流体可以是液体或气体,其中气体的测量范围较宽.透过法的测量范围大于气体吸附法, 其测量上限可以远高于气体吸附法,但测量下限亦大于气体吸附法;压汞法利用孔道的毛细作用来测定多孔体的开孔比表面积,需要假定孔隙是孔道截面均匀的理想圆柱形。在一些场合,方法、设备和材料取样等方面的限制给测量带来不便,有时则根本不可能进行.因此,根据孔率和孔径等易知易测或可测指标来计算比表面积,是一项具有重要实际意义的工作.本文首次提出一个通过孔率和孔径这两个指标来估算泡沫金属比表面积的方法. 全文下载 http://www.metalfoams.net/wp-content/uploads/2011/05/Calculation-method-for-the-specific-surface-area-of-porous-metals.pdf
3570 次阅读|1 个评论
第10 届全国工程计算方法学术会议——通知
xiaojy 2011-10-31 09:24
第10 届全国工程计算方法学术会议暨Global Chinese Workshop on Computational Methods in Engineering 将于2012 年5 月18-21 日在湖南长沙(湖南大学)召开。 会议主题主要包括(但不局限于)工程中边界元、无网格、有限元等数值方法的新发展(详细通知见附件)。 会前将评选第2 届杜庆华工程计算方法奖(章程和实施细节另外公布),会上还将分别评选35 岁以下青年研究人员和在读研究生的优秀论文。部分英文论文将经审稿后在EI收录的澳大利亚机械工程学报专刊发表(详情另行通知)。 准备参加此次会议的作者请将相关的学术论文的题目与作者联系方式尽快用电子邮件发给会议主席(姚振汉 教授,demyzh@mail.tsinghua.edu.cn )和秘书长(张见明教授, zhangjm@hnu.edu.cn )。每篇文章的两页详细摘要将印刷摘要集,请于2012 年3 月10 日之前用电子邮件同时发给姚振汉和张见明。论文全文收入论文集光盘,请于2012 年4 月10 日前用电子邮件同时发给姚振汉和张见明。
个人分类: 未分类|4699 次阅读|0 个评论
重心和场概念在社会学中的应用
yanghualei 2011-10-20 08:24
以前一直以为一个区域的经济重心,就是此区域经济发展水平最好的地方。因为不同对重心的定义,引致不同的计算方法,这两天慢慢的感觉,如果按照质心的计算方法,至少这样计算是科学的,好像不是这样的。 即经济重心倾向靠近经济发展水平比较高的地方,但并不是就在经济发展水平最高的地方,甚至此区域的经济重心就不在此区域内,这是有违反直觉的 。 为什么要寻找经济重心的,这是有一定的原因的,一般物理学家甚至是经济学家都喜欢从复杂的运动中寻求简单和熟悉的现象和法则。 重心就是一个好像所有外在对这个区域的交互力都集中在这一点,其最能反映这个区域所受的外力和这个区域的运动状态。 前天和一物理院同学交流,谈论以前做的一篇有关集体行为和个体行为之间的作用的文章,我 用引力公式描述集体行为对个体行为影响力的大小。并用引力和场理论解释集体行为的涌现,并用第一宇宙速度和第二宇宙速度解释观望行为和趋奇行为 ,其很感兴趣,其说用场的概念研究行为是很好的视角,因为场是一个好的抽象,又符合东方人的思维。
个人分类: 交叉科学|2957 次阅读|0 个评论
[转载]过渡态、反应路径的计算方法及相关问题
ywmucn 2011-9-26 10:06
转自: http://www.mdbbs.org/thread-17170-1-4.html Sobereva Department of Chemistry, University of Science and Technology Beijing, Beijing 100083, China 前言:本文主要介绍过渡态、反应路径的计算方法,并 讨论 相关问题。由于这类算法极多,可以互相组合,限于精力不可能面面俱到展开,所以只介绍常用,或者实用价值有限但有启发性的方法。文中图片来自相关 文献 ,做了一定修改。由于本文作为帖子发布,文中无法插入复杂公式,故文中尽量将公式转化为文字描述并加以解释,这样必然不如公式形式严谨,而且过于复杂的公式只能略过,但我想这样做的好处是更易把握方法的梗概,有兴趣可以进一步阅读原文了解细节。对于Gaussian中可以实现的方法,文中对其在Gaussian中的使用进行了一些讨论,希望能纠正一些网上流传的误区。虽然绝大多数人不专门 研究 计算方法,其中很多方法也不会用到,但多了解一下对开阔思路是很有好处的。 文中指的“反应”包括构象变化、异构化、单 分子 反应等任何涉及到过渡态的变化过程。“反应物”与“产物”泛指这些过程的初态和末态。“优化”若未注明,包括优化至极小点和优化至过渡态。势能面是高维的,但为了直观以及表述方便,文中一般用二维势能面 模型 来讨论,应推广至高维情况。限于纯文本格式,向量、矩阵无法加粗表示,但容易自行判断。 目录: 1.过渡态 2.过渡态搜索算法 2.1 基于初猜 结构 的算法 2.1.1 牛顿-拉弗森法(Newton-Raphson,NR)与准牛顿法(quasi-Newton,QN) 2.1.2 AH方法(augmented Hessian) 2.1.2.1 RFO法(Rational Function Optimization,有理 函数 优化) 2.1.2.2 P-RFO法(Partitioned-RFO) 2.1.2.3 QA法(Quadratic Approximation,二次逼近) 2.1.2.4 TRIM法(trust-region image minimization,置信区域镜像最小化) 2.1.2.5 在 高斯 中的常见问题 2.1.3 GDIIS法(Geometry Direct Inversion in the Iterative Subspace) 2.1.4 梯度模优化(gradient norm minimization) 2.1.5 Dimer方法 2.2 基于反应物与产物结构的算法 2.2.1 同步转变方法(synchronous transit,ST) 2.2.2 STQN方法(Combined Synchronous Transit and Quasi-Newton Methods) 2.2.3 赝坐标法(pseudo reaction coordinate) 2.2.4 DHS方法(Dewar-Healy-Stewart,亦称Saddle方法)与LTP方法(Line-Then-Plane) 2.2.5 Ridge方法 2.2.6 Step-and-Slide方法 2.2.7 Müller-Brown方法 2.2.8 CI-NEB、ANEBA方法 2.3 基于反应物结构的算法 2.3.1 最缓上升法(least steep ascent,shallowest ascent) 2.3.2 本征向量/本征值跟踪法(eigenvector/eigenvalue following,EF。也称mode walking/mode following/Walking up valleys) 2.3.3 ARTn(activation-relaxation technique nouveau) 2.3.4 梯度极值法(Gradient extremal,GE) 2.3.5 约化梯度跟踪(reduced gradient following,RGF) 2.3.6 等势面搜索法(Isopotenial Searching) 2.3.7 球形优化(Sphere optimization) 2.4 全势能面扫描 3.过渡态相关问题 3.1 无过渡态的反应途径(barrierless reaction pathways) 3.2 Hammond-Leffler假设 3.2 对称性问题 3.3 溶剂效应 3.4 计算过渡态的建议流程 4.内禀反应坐标(intrinsic reaction coordinate,IRC) 5.IRC算法 5.1 最陡下降法(Steepest descent) 5.2 IMK方法(Ishida-Morokuma-Kormornicki) 5.3 Müller-Brown方法 5.4 GS(Gonzalez-Schlegel)方法 6.chain-of-states方法 6.1 Drag method方法 6.2 PEB方法(plain elastic band) 6.3 Elber-Karplus方法 6.4 SPW方法(Self-Penalty Walk) 6.5 LUP方法(Locally Updated planes) 6.6 NEB方法(Nudged Elastic Band) 6.7 DNEB方法(Double Nudged Elastic Band) 6.8 String方法 6.9 Simplified String方法 6.10 寻找过渡态的chain-of-state方法 6.10.1 CI-NEB方法 6.10.2 ANEBA方法(adaptive nudged elastic band approach) 6.11 chain-of-states方法的一些特点 6.12 高斯中opt关键字的path=M方法 6.13 CPK方法(Conjugate Peak Refinement) 1.过渡态 过渡态结构指的是势能面上反应路径上的 能量 最高点,它通过最小能量路径(minimum energy path,MEP)连接着反应物和产物的结构(如果是多步反应的机理,则这里所指反应物或产物包括中间体)。对于多分子之间的反应,更确切来讲过渡态结构连接的是它们由无穷远接近后因为范德华力和静电力形成的复合物结构,以及反应完毕但尚未无限远离时的复合物结构。确定过渡态有助于了解反应机理,以及通过势垒高度计算反应速率。一般来讲,势垒小于21kcal/mol就可以在室温下发生。 在势能面上,过渡态结构的能量对坐标的一阶导数为0,只有在反应坐标方向上曲率(对坐标二阶导数)为负,而其它方向上皆为正,是能量面上的一阶鞍点。过渡态结构的能量二阶导数矩阵(Hessian矩阵)的本征值仅有一个负值,这个负值也就是过渡态拥有唯一虚频的来源。若将分子振动简化成谐振子模型,这个负值便是频率公式中的力常数,开根号后即得虚数。 分子构象转变、 化学 反应过程中往往都有过渡态的存在,即这个过程在势能面上的运动往往都会经历满足上述条件的一点。化学反应的过渡态更确切应当成为“反应过渡态”。需要注意的是化学反应未必都经历过渡态结构。 由于过渡态结构存在 时间 极短,所以很难通过实验方法获得,直到飞秒脉冲激光光谱的出现才使检验反应机理为可能。 计算化学 方法在目前是预测过渡态的最有力武器,尽管计算上仍有一些困难,比如其附近势能面相对于平衡结构更为平坦得多、低水平方法难以准确描述、难以预测过渡态结构、缺乏绝对可靠的方法(如优化到能量极小点可用的最陡下降法)等。 搜索过渡态的算法一般结合从头算、DFT方法,在半经验、或者小基组条件下,难以像描述平衡结构一样正确描述过渡态结构,使得计算尺度受到了限制。结合分子 力场 可以描述构象变化的过渡态,但不适用描述反应过渡态,因为大部分分子力场的势函数不允许分子拓扑结构的改变,虽然也有一些力场如ReaxFF可以支持,有的力场还有对应的过渡态 原子 类型,但目前来看适用面仍然较窄,而且不够精确,尽管更为快速。 注:严格来说,“过渡结构”是指势能面上反应路径上的能量最高点,而“过渡态”是指自由能面上反应路径上的能量最高点,由于自由能变主要贡献自势能部分,所以多数情况二者结构近似一致。但随着 温度 升高,往往熵变的贡献导致自由能面与势能面形状发生明显偏离,从而导致过渡结构与过渡态明显偏离,两个词就不能混用了。但本文不涉及相关问题,故文中过渡态、过渡结构一律指势能面上反应路径上的能量最高点。 2.过渡态搜索算法 2.1 基于初猜结构的算法 2.1.1 牛顿-拉弗森法(Newton-Raphson,NR)与准牛顿法(quasi-Newton,QN) NR法是寻找函数一阶导数为0(驻点)位置的方法。通过对能量函数的泰勒级数的二阶近似展开,然后使用稳态条件dE/dr=0,可导出步进公式:下一步的坐标向量 = 当前坐标向量 - 能量一阶导数向量 * Hessian矩阵的逆矩阵。在势能面上以NR法最终找到的 结果 是与初猜位置Hessian矩阵本征值正负号一致、离初猜结构最近的驻点,由于能量极小点、过渡态和高阶鞍点的能量一阶导数皆为0,故都可以用NR法寻找。 对于纯二次形函数NR法仅需一步即可找到正确位置,而势能面远比之复杂,所以需要反复走步直至收敛。也因为势能面这个特点,为了改进优化,实际应用中NR法一般还结合线搜索步(line search),对于优化至极小点,就是找当前点与NR法算出来的下一点的连线上的能量极小点作为实际下一步结构;若优化至过渡态,且连线方向主要指向过渡态,则找的是连线上能量极大点,若主要指向其它方向则找连线的能量极小点,若指向二者程度均等则一般不做线搜索。由于精确的线搜索很花时间,所以一般只是在连线的当前位置附近计算几个点的能量,以高阶多项式拟和后取其最小/最大点。 NR法每一步需要计算Hessian矩阵并且求其逆,所以十分昂贵。QN法与NR法的走步原理一样,但Hessian矩阵最初是用低级或经验方法猜出来的,每一步优化中通过当前及前一步的梯度和坐标对Hessian矩阵逆矩阵逐渐修正。由于只需计算一阶导数,即便Hessian矩阵不准确造成所需收敛步数增加,但一般仍比NR法 速度 快得多。QN法泛指基于此原理的一类方法,常用的是BFGS(Broyden Fletcher Goldfarb Shanno),此法对Hessian的修正保持其对称性和正定性,最适合几何优化,但显然不能用于找过渡态。还有DFP(Davidon-Fletcher-Powell),MS(Murtagh-Sargent,亦称symmetric rank 1,SR1),PSB(Powell-symmetric-Broyden)。也有混合方法,如Bofill法是PSB和MS法对Hessian修正量的权重线性组合,比二者独立使用更优,权重系数通过位移、梯度改变量和当前Hessian计算得到,它对Hessian的修正不强制正定,很适宜搜索过渡态。 将NR步进公式放到Hessian本征向量空间下其意义更为明显(此时Hessian为对角矩阵),可看出在每个方向上的位移就是这个方向势能的负梯度除以对应的本征值,比如在i方向上的位移可写为ΔX(i)=-g(i)/h(i),在受力越大、越平坦的方向位移越大。每一步实际位移就是这些方向上位移的矢量和。对于寻找过渡态,因为虚频方向对应Hessian本征值为负,使位移为受力相反方向,所以NR法在过渡态附近每一步都是使虚频方向能量升高,而在其它正交的方向朝着能量降低的方向位移,通过这个原理步进到过渡态。若有n个虚频,则NR法就在n个方向升高能量而其它方向降低能量找到n阶鞍点。 由于NR法的这个特点,为找到正确类型的驻点,初猜结构必须在目标结构的二次区域(quadratic region)内。所谓的二次区域,是指驻点附近保持Hessian矩阵本征值符号不变的区域,它的形状可以用多变量的二次函数近似描述,例如二维势能面情况下这样的区域可以用F(x,y)=A*x^2+B*y^2+C*x+D*y+E*x*y来近似描述。对于能量极小点,就是指初猜点在目标结构附近Hessian矩阵为正定矩阵的范围;对于找过渡态,就需要初猜点在它附近含有且仅含有一个负本征值的范围内。并且这个范围内不能有其它同类驻点比目标结构距离初猜结构更近。NR法方便之处是只需要提供一个初猜结构即可,但是由于过渡态二次区域很小(相对于能量极小点来讲),复杂反应过渡态又不容易估计,故对使用者的直觉和经验有一定要求,即便是老手,也往往需要反复尝试。 NR法对初猜结构比较敏感,离过渡态越近所需收敛步数越少,成功机率越高。模版法可以帮助给出合理的初猜,也就是如果已经知道其它机理相同的反应的过渡态结构,可以保持反应位点部分的结构不变而替换周围的原子,使之变成自己要研究的化合物反应的初猜结构。 2.1.2 AH方法(Augmented Hessian) AH方法并不是独立的寻找过渡态的方法,而是通过修改原始Hessian矩阵来调整NR法步进的长度和方向的一种方法。在NR法的步进公式中加入了一个移位 参数 λ,式子变为ΔX(i,λ)=-g(i)/(h(i)-λ),NR法相当于λ等于0时的特例。λ控制着每步步进距离,它与h(i)的相对大小也控制着这个坐标上的步进方向。根据设定λ方法的不同,常见的有RFO、P-RFO和QA/TRIM。这些方法每一步也使用QN方法来快速地更新Hessian。 下面提及的置信半径R(Trust radius)是指二阶泰勒级数展开这种近似的合理的区域,可以在优化过程中固定也可以动态改变,比如下一步位置的实际能量与使用二阶泰勒级数展开预测的能量符合较好则加大R,反之减小。优化的每一步移动距离不应超过R,否则可能进入二阶泰勒级数展开近似的失效区域,NR法在势能面平坦的时候容易超过这个范围,应调整λ避免。 2.1.2.1 RFO法(Rational Function Optimization,有理函数优化) 对能量函数根据有理近似展开,而不是NR法的二阶泰勒级数近似展开,可推得与AH方法形式相同的步进公式。确定其中λ的公式是λ=∑( g(i)^2/(h(i)-λ) ),g(i)和h(i)代表此方向的梯度和本征值,加和是对所有本征向量方向加和。通过迭代方法会解出N+1个λ(N代表势能面维数),将λ按大小排列,则有λ(i)≤h(i)≤λ(i+1)。故选其中最小的λ可使各个方向位移公式的(h(i)-λ)项皆为正,保证每步位移都向着极小点。选其中大于m个Hessian本征值的λ,将会在本征值最低的m个方向上沿其上的受力反方向位移提升能量,在其余N-m个方向上降低能量,由此确保优化到m阶鞍点,若m为1即用来找过渡态。所以用了这个方法寻找指定类型驻点不再像NR法对初猜位置Hessian本征值符号有要求,而是直接通过选择λ来设定向着何种鞍点位移。如果每步步长度超过了R,则乘以一个小于1的因子来减小步长。值得一提的是,λ与势能面维数N的平方根近似成正比,随着 体系 尺度的增大,RFO的λ对NR法的二次近似就会趋现“校正过度”情况,产生大小不一致问题,可使用SIRFO(Size independent RFO)方法解决,即AH走步公式中的λ改为λ/N^0.5。 2.1.2.2 P-RFO法(Partitioned-RFO) 专用于优化过渡态,效率比RFO更高。RFO对所有方向的步进都使用同一个λ,而在P-RFO中在指向过渡态的方向使用独立计算的λ(TS),λ(TS)=g(TS)^2/(h(TS)-λ(TS)),应选这个一元二次方程的最大的解,可保证在这个方向上升高能量。其余方向λ的确定和RFO的公式一样,加和就不再包含指向过渡态的方向,并且选最小的λ解以使这些方向能量降低。这里所谓指向过渡态的方向一般是指最低本征值的方向,在上述RFO方法m为1时也是如此假设(限于其形式RFO也只能用这最低模式),但有时会是其它的非最低的模式,P-RFO也可以将这样的模式作为指向过渡态的模式,见后文EF方法的讨论。 2.1.2.3 QA法(Quadratic Approximation,二次逼近) 确定λ的公式是(ΔX(i))^2=∑( -g(i)/(h(i)-λ) )^2=R^2,也就是说每一步移动的距离恰好是置信半径,这样步进速度较快。若优化到过渡态,计算λ公式的加和中指向过渡态本征向量的那一项的λ改为-λ,即ΔX(TS)=-g(TS)/(h(TS)+λ)。 2.1.2.4 TRIM法(trust-region image minimization,置信区域镜像最小化) 这个方法假设Hessian本征值最小的方向的梯度和曲率符号与原本相反,而其它方向不变。经过这样的变化后原来的过渡态位置就成为了能量极小点(过渡态的image),这样就可以通过优化到极小点而得到过渡态。将TRIM的假设g(TS)'=-g(TS),h(TS)'=-h(TS)代入AH方法的步进公式ΔX(i,λ)=-g(i)/(h(i)-λ),再使分子分母同乘以-1,可知在过渡态方向上的步进公式与其它方向区别仅在于反转了λ的符号。又由于TRIM也是通过调整λ使步进长度等于为置信半径,所以在公式的形式上与QA法找过渡态的公式完全一致,QA与TRIM可互为同义词。 通过如上调整AH方法引入的λ可使NR法的步进更有效率、更稳定,还可以通过它改变步进公式在不同方向上的分母项符号,使优化过渡态的初猜点不限于过渡态的二次区域。可直接指定沿某个振动模式升高能量来找过渡态,即便当前点这个方向的Hessian本征值可能是正值,例如从极小点开始跟踪至过渡态,见后文的EF方法。 2.1.2.5 在高斯中的常见问题 高斯中opt=ts是使用Berny算法来找过渡态,需要提供一个初猜结构。Berny默认的走步的方法是RFO/P-RFO(分别对于优化至极小值/鞍点),若加了Newton选项,则走步基于NR法。每一步对Hessian矩阵的更新方法以UpdateMethod选项指定,寻找极小点时默认用BFGS,找过渡态时默认用Bofill。Berny算法还包括一些细节步骤在内,比如投影掉被冻结的变量、更新置信半径、设定了线搜索过程中几种方案等等,详见手册opt关键字。 使用了每步修正Hessian的准牛顿法后,初猜的Hessian矩阵质量明显影响结构收敛速度,它的不准确容易导致搜索过渡态失败(在高斯中默认使用价键力场得到Hessian)。这种情况需要昂贵的calcfc关键字以当前方法水平计算最初的Hessian矩阵,若使用的方法在 程序 中支持解析二阶导数,速度会较好。或者用readfc来读取包含了Hessian矩阵信息的chk 文件 ,可以先使用低水平方法进行简正振动分析得到chk文件,再将之读入作为Hessian矩阵初猜,能够节约时间,但前提是此势能面对方法等级不敏感(一般如此)。使用了更准确的初猜后不仅可以增加找到过渡态的成功机率,还有助于在更短的优化步数内达到收敛标准。若使用calcall,则每一点都重新准确计算Hession,会更为可靠,但极为昂贵。 高斯中berny方法寻找过渡态默认每步会检查Hessian矩阵的本征值是否仅有一个为负,如果不符,就会提示“a wrong sign eigenvalue in hessian matrix”,经常一开始就报错,原因是初猜结构不符合这个条件,即便这个初猜通过berny方法最终能够正确优化到过渡态,这时应加noeigentest选项避免本征值符号的检查,不符合要求也继续优化,但因此可能收敛到其它类型驻点。有时这种情况由初猜的Hessian不准导致,可用calcfc解决。如果搜索的过渡态出现多个负本征值,可根据适当的虚频(高斯中以负数频率表示)振动方向调整结构以降低能量,直至剩下一个虚频,再重新优化。 高斯中默认的置信半径为0.3 bohr,若优化中步长(RFO/P-RFO步)超过就会 输出 “Maximum step size ( 0.300) exceeded in Quadratic search”和“Step size scaled by xxx”,即乘以xxx调小步长至置信半径内。也可以使用iop(1/8=k)将置信半径改为k*0.01 bohr(1 bohr=0.5292埃),调大后往往可以显著减少收敛步数,很适合势能面平坦的大体系。注意并不是每一步的步长都固定为k*0.01 bohr,若没超过置信半径则步长并不因此改变。寻找极小点时默认为允许动态改变置信半径,此时iop(1/8)设的就是最初的置信半径,对于寻找过渡态默认为关闭此功能(相当于用了NoTrustUpdate),可以使用trustupdate关键字来打开这个功能。 2.1.3 GDIIS法(Geometry Direct Inversion in the Iterative Subspace) GDIIS与DIIS原理一致,但用于几何优化,这个方法趋于收敛到离初始位置最近的驻点,包括过渡态。下一步坐标X(new)=X"-H'g",H'代表当前步的Hessian逆矩阵,可见公式形式与NR法是一致的,但是X"与g"不再指当前步的坐标和梯度,而是由之前走过的点的坐标X(k)和梯度g(k)插值得到的,X"=∑c(k)X(k),g"=∑c(k)g(k),代入上式即X(new)=∑c(i)(X(i)-H'g(i)),其中∑是对之前全部走过的点加和。系数c(k)通过使误差向量r的模最小化得到,r=∑c(k)e(k),并以∑c(k)=1为限制条件。e(k)常见有两种定义,一种是e(k)=-H'g(k),另一种更常用,是e(k)=g(k),可看出GDIIS利用的是已经搜索过的子空间中坐标与梯度的相关性,目的是估出梯度(即误差向量)的模尽可能小的坐标,这一点与后述的梯度模方法相似。 此方法缺点是由于势能面复杂,步进中容易被拉到已经过的势能面的其它驻点而不能到达指定类型驻点,还容易走到类似肩膀形状的拐点,梯度虽小却不为0,由于不能达到收敛标准而反复在此处震荡。另外随优化步数增加,误差向量数目逐渐加大,会逐渐出现的误差向量之间的线性相关,导致伪收敛和数值不稳定问题。在改进的方法中将GDIIS与更可靠的RFO方法结合,比较二者的步进方向和长度,并检验GDIIS中的组合系数c,根据一定规则来决定每一步对之前走过的点的保留方式,必要时全部舍去而重新开始GDIIS。Gaussian中用的这种改进的GDIIS方法解决了上述问题同时提高了效率,速度等于或优于RFO方法,尤其是以低水平对势能面平坦的大体系优化时更为突出。GDIIS计算量小,对Hessian矩阵很不敏感,可以在优化中不更新,也可以用QN法更新来改善性能。此方法自Gaussian98起就是默认的半经验优化算法,其它方法下也可以用OPT的gdiis关键词打开。 2.1.4 梯度模优化(gradient norm minimization) 势能面上的驻点,包括能量极小点、过渡态和高阶鞍点的势能梯度都为0,所以在相应于势能面的梯度模面上进行优化找到数值为0的点,经过Hessian矩阵本征值符号的检验,就能得到过渡态。这相当于把搜索过渡态问题转化为了能量极小化问题,就有了更可靠的算法可用。(注:梯度模指的是势能梯度在各个维度分量平方和的平方根,即梯度大小的绝对值)。但是寻找数值更小点的优化方法比如最陡下降法只能找到离初始位置最近的极小点,若找到的梯度模面上的极小点数值大于0则是势能面肩膀形拐点,没有什么用处,而这样的点收敛半径往往很大,例如图中在x=2至8的区域内都会收敛到函数拐点,只有提供的初猜结构在x=1和9附近很小的范围内才会收敛到过渡态,收敛半径太小,难以提供合理初猜。梯度模面上还多出一些极大点,如x=1.5处,若使用收敛更快的NR法找极小点还容易收敛到这样没有意义的点上。基于这些原因,梯度模法很少使用。 原函数与它的梯度模曲线。 2.1.5 Dimer方法 Dimer方法是一种高效的定位过渡态的方法。这个方法定义了由两个点R1和R2组成的一个Dimer,能量和所受势能力(由原始的势能面梯度造成受力,下同)分别为E1和E2、F1和F2。两个点间距为2ΔR,ΔR为定值。这两点的中间点为R,其受力F(R)=(F1+F2)/2。Dimer的总能量为E=(E1+E2)/2。这个方法的每一步包括平移Dimer和旋转Dimer两步。 旋转Dimer:保持R1、R2中点位置R不变作为轴,旋转Dimer直到总能量E最小。通过推导可知在旋转过程中,E与R点在dimer方向(R1-R2方向)上的曲率关系C是线性的,即最小化E的过程就是最小化C的过程。所以每一步的Dimer方向都是曲率最小方向,当最终R收敛到过渡态位置时,Dimer就会平行于虚频方向。 平移Dimer:Dimer根据受力F'移动R的位置,结合不同方法有具体步进方式,如quick-win、共轭梯度法。当C0(过渡态或高阶鞍点的二次区域内),F'等于将F(R)平行于Dimer方向力的分量符号反转;当C0(极小点二次区域内),F'等于F(R)平行于Dimer方向力的分量的负值,而没有垂直于Dimer方向的力,促使Dimer尽快离开这个区域。由于Dimer的方向就是曲率最小的方向,在过渡态二次区域内就是指虚频方向,在Dimer方法中F'的定义使这个方向以受力相反方向移动以升高能量,而其它方向顺着受力方向移动来最小化能量,可看出原理上与NR法相似。费时的计算Hessian矩阵最小本征值以确定提升能量方向的过程被旋转Dimer这一步代替了,仅需要计算一阶导数。Dimer法对初始位置要求很宽松,并不需要在过渡态二次区域内,若在极小点二次区域内就类似于后述的EF方法沿着最小振动模式爬坡。如果在高阶鞍点二次区域内,只在曲率最负的虚频方向沿着受力反向移动,在其它虚频方向上仍最小化能量,而不会像NR法收敛到高阶鞍点。 右侧为Dimer法在Müller-Brown模型势上面搜索两个过渡态过程中Dimer走的路径。 势能面上往往有许多鞍点,Dimer方法还可以做鞍点搜索。通过分子 动力学 方法给予Dimer一定动能,使之能够在势能面上广阔的区域内运动,根据一定标准提取 轨迹 中的一些点作为初猜,再执行标准Dimer方法就可以得到许多不同的鞍点。Dimer方法很适合双处理器并行,两个点的受力分别由两个处理器负责,速度可增加将近一倍。 2.2基于反应物与产物结构的算法 2.2.1 同步转变方法(synchronous transit,ST) 提供合理的初猜结构往往不易,ST方法可以只根据反应物和产物结构自动得到过渡态结构。“同步转变”这个名字强调的是反应路径上所有坐标一起变化,这是相对于后面提到的赝坐标法来说的(即只变化指定的坐标,尽管其它坐标优化后坐标也会变化)。 ST分为两种模型,最简单的就是LST模型(Linear synchronous transit,线性同步转变),这个方法假设反应过程中,反应物结构的每个坐标都是同步、线性地变化到产物结构。如果反应物、产物的坐标分别以向量A、B表示,则反应过程中的结构坐标可表示为(1-x)*A+x*B,x由0逐渐变到1代表反应进度。注意LST并不是指反应中原子在真实空间上以直线运动,只有笛卡尔坐标下的LST才是如此,在内坐标下的LST,原子在真实空间中一般以弧线运动。以LST的假设,反应路径在其所用坐标下的势能面图上可描述为一条直线,LST给出的过渡态就是这条直线上能量最高点(图3的点1)。LST的问题也很显著,其假设的坐标线性变化多数是错误的,绘制在势能面图上也多数不会是直线,故给出的过渡态也有较大偏差,容易带两个或多个虚频。 比LST更合理的是QST(quadratic synchronous transit,二次同步转变),它假设反应路径在势能面上是一条二次曲线。QST在LST得到的过渡态位置上,对LST直线路径的垂直方向进行线搜索找到能量极小点A(图3的点2)。QST给出的反应路径可以用经过反应物、A、产物的二次曲线来表示,如果这条路径上能量最大点的位置恰为A,则A就是QST方法给出的过渡态;如果不是,则以最大点作为过渡态。若想结果更精确,可以再对这个最大点向垂直于路径的方向优化,再次得到A并检验,反复重复这个步骤,逐步找到能量更低、更准确的过渡态。 QST方法在计算能力较低的年代曾是简单快速的获得过渡态和反应路径的方法,然而如今看来其结果是相当粗糙的,已极少单独使用,可以将其得到的过渡态作为AH法的初猜。 LST与QST方法示意图 2.2.2 STQN方法(Combined Synchronous Transit and Quasi-Newton Methods) STQN是ST与QN方法的结合(更准确地说是与EF法的结合)。但不要简单认为是按顺序独立执行这两步,即认为“先利用反应物和产物结构以ST方法得到粗糙过渡态,再以之作为初猜用QN法精确寻找过渡态”是错误的。STQN方法大意是:使结构从低能量的反应物出发,以ST路径在当前位置切线为引导,沿着LST或QST假设的反应路径行进(爬坡步),目的是使结构到达假设路径的能量最高处附近(真实过渡态二次区域附近)。当符合一定判据时就转换为QN法寻找精确过渡态位置(EF步)。下面介绍具体步骤。 先说明后面用到的切线的定义:STQN当中的LST路径与前面ST部分介绍的LST路径无异,都是直线,切线T在优化中是不变的,就是反应物R指向产物P的单位向量。STQN方法中的QST路径定义与ST方法介绍的不同,走的不是二次曲线而是圆形的一段弧,如图4所示。这个圆弧经过R、P以及优化中的当前步位置X,切线就是圆在X处的单位切线向量,圆弧和切线在每一步都是变化的。虽然QST路径比LST更为合理,但对于QSTN方法,QST路径在收敛速度和成功机率上的优势并不显著。 STQN对QST路径的定义 STQN每一步执行内容如下:(1)首先重新计算或用QN法更新Hessian。(2)按上述方法计算当前位置处的切线。(3)决定这一步是爬坡步还是EF步。如果是优化的第前两步,则一定认为是爬坡步,因为此时离过渡态区域还较远,应当先爬坡。如果是第3、4步,则估算出在切线方向的位移,超过一定标准就是爬坡步,否则说明爬得差不多了就进入EF步找过渡态。如果是第5步之后,一般已离过渡态区域较近,故一定认为是EF步。(4)如果是爬坡步,则在切线方向上移动(将切线方向作为EF方法所跟踪的振动方向来计算位移大小)。如果是EF步,首先计算Hessian各个本征向量的与切线重叠情况,如果有重叠大于0.8的本征向量,则以EF法跟踪本征值最大的本征向量来移动,相当于继续向上爬。如果没有大于0.8的,就跟踪最小本征值的本征向量移动来寻找过渡态。(5)步长长度若大于标准则调小,默认0.3 bohr。(6)根据预置受力、位移标准判断是否已收敛,收敛则结束循环。 注意,ST方法中具体包含LST和QST两种方法,STQN也用到了LST和QST两种反应路径的假设。高斯中的LST方法指的是ST中的LST方法,而QST2/3指的是利用QST路径假设的STQN方法,它们原理上截然不同,不要混淆。高斯中的QST2只需输入反应物和产物结构,通过几何方法估出STQN的初始步结构X。QST3需额外输入猜测的过渡态,它直接作为X,一般比QST2效果更好。对于经验不足的用户,用STQN方法往往比只提供过渡态初猜的方法更为适合。注意产物和反应物应当使用同样方法同样基组进行优化,如果是多分子比如A+B=C+D这样的反应,应当优化A和B/C和D的复合物作为输入的产物/产物,而不是单独优化A、B然后拼到一起,因为形成范德华复合物后孤立的分子会有一定构象改变,能量也低于它们孤立状态的加和。 2.2.3 赝坐标法(pseudo reaction coordinate) 也称为坐标驱动法(Coordinate Driving)。这个方法在高斯中就是柔性扫描(Relaxed Scan),即扫描一个变量,但每一步对其它变量自动进行优化,每一步得到的结构就是在这个变量为一定值情况下的最优结构。赝坐标法扫描的是反应物转变到产物过程中的关键坐标,比如扫描化学键断裂/生成反应中的键长。扫描的结果就是近似的IRC,可以再将能量最高点作为初猜找过渡态,或者用更小的步长再次扫描能量最高点附近找更精确的过渡态结构。这个找过渡态方法实际上用的是能量极小化优化过程,由于这样的算法比寻找过渡态的算法更为稳健,所以赝坐标法是颇可靠的,其它方法失败时可考虑这种方法。 这个方法缺点是费时间,而且不适合通向过渡态路径中反应区域涉及多个坐标变化的反应过程,因为自定义扫描的内容很难全面、准确考虑到这些坐标变量的变化,结果难以说明问题,没有考虑进去的关键变量容易产生滞后效应(hysteresis effect)。比如乙烷由交叉构象变化到另一个交叉构象,需要经历重叠构象的过渡态,会涉及到三个HCCH二面角同时由60度变化到0度,如果用赝坐标法只扫描其中一个HCCH由60度变到0度,则每一步其它两个HCCH角一定会大于这个扫描的二面角,与实际不符。这是因为这两个角越小,分子的能量越高,每一步自动优化的时候它们更倾向于保持在大角度。最终到达过渡态时,所扫描的二面角到达了0度,另外两个二面角却大于0度,说明它们的运动比实际的过程滞后了。由于滞后效应,从反应物和产物两个方向扫描同相同的坐标,得到的路径也不同。上述简单的反应此方法滞后效应尚且严重,对于复杂变化,这种效应导致的问题更难以预测。故此方法确定的IRC、过渡态不可靠,只建议对简单的反应使用这种方法,扫描变量的选择注意避免滞后效应。 在高斯中此方法可以使用opt=modredundant或Opt=Z-matrix结合分子结构部分标记的扫描变量来实现。例如使用opt=modredundant并在分子结构末尾写上A 3 2 1 S 10 1.000000来指定3 2 1原子组成的角度进行柔性扫描,共10步,每步1.0度。如果不熟悉,也可以很方便地在GaussView里的冗余坐标编辑器里面添加要柔性扫描的变量。 如果只执行常规的某个变量的扫描,比如高斯中的scan来找能量最高点作为初猜结构,对于简单体系可行,但对于复杂体系,这样忽略了此变量的变化导致分子其它部分结构的驰豫,如此得到的能量最高点作为过渡态初猜很不可靠,因为势能中掺入了不合理的结构造成的能量升高,使势能曲线形状改变。 2.2.4 DHS方法(Dewar-Healy-Stewart,亦称Saddle方法)与LTP方法(Line-Then-Plane) DHS方法中第一步将反应和产物分别作为A点和B点,确定哪个点能量低,比如A比B低,就把A点的结构向B点稍微做调整(~5%)得到A',然后限制变量空间中A'与B的距离不变(即在超球面上)对A'进行优化得到A''。将A''与B当作下一步的起始点A与B,重复上述方法。这样反复进行迭代,若以序号n代表第n次得到的A''或B'',会依次得到例如A''(1)、A''(2)、B''(1)、A''(3)......直到A与B十分接近时才停止迭代,此位置就是过渡态。将得到的全部A''(n)按序号n依次连接,B''(n)也按序号依次连接,再将序号最大的A''(n)与B''(n)连接,得到的就是近似的IRC。LTP与DHS方法基本一致,不同的是每步是在垂直于A'与B连线的超平面上优化。DHS方法虽然可以很快地走到过渡态附近的位置,但是越往后每步的AB距离缩近也越少,故并不能有效率地贴近过渡态。然而每步的在连线上调整的距离不可过大,否则可能造成一侧的点跨过过渡态势垒跑到另一侧得到错误结果。 DHS方法示意图 2.2.5 Ridge方法 第一步时将反应物、产物作为A点和B点,在其LST的路径上找到能量最大点C,然后在AC与BC直线上相距C为s的位置上分别设一点A'和B',将A'与B'分别沿着此处势能面负梯度优化p距离,将得到的A''与B''作为下一步的A和B。反复进行这个步骤,收敛后C的位置就是过渡态位置。s和p是计算过程中动态调节的参数,对结果影响较大,它们应当随C逐渐接近过渡态而减小,可设若当前步的C能量高于上一步的C,则减小p至原先一半;若s与p的比值大于某个数值,s也减半。Ridge方法的缺点是接近过渡态时效率较低,可以当C进入过渡态二次区域后改用QN法来加快收敛。也可以结合DIIS法,速度比原先有一半以上的提升,效率有时还高于基于二阶导数的方法,而且在某些势能面非常平坦的体系比二阶导数方法更可靠。 Ridge方法示意图 2.2.6 Step-and-Slide方法 使产物和反应物的结构同时顺着LST描述的路径相对移动(step步),直到它们的能量都等于某个预先设定的能量,然后让这两个结构在它们当前所在的势能等值面上滑动(slide步),使二者结构在坐标空间中的距离最小。重复上述step和slide步骤,最终当两个结构碰上,这个位置就是过渡态。 Step and Slide方法示意图 2.2.7 Müller-Brown方法 见下文IRC算法相应部分 2.2.8 CI-NEB、ANEBA方法 见下文“寻找过渡态的chain-of-state方法”相应部分 2.3 基于反应物结构的算法 2.3.1 最缓上升法(least steep ascent,shallowest ascent) 由反应物结构到达过渡态结构的过程是沿着势能面最容易行进的路径进行的(不考虑动力学问题),这个途径一般比其它方向要缓和,所以由反应物结构开始,沿着势能面最缓的方向逐渐往上爬,往往可以沿着MEP到达过渡态。但要注意这条路径时常与从过渡态沿最陡下降路径所走出的MEP并不一致,因此原理上此法不能保证一定能到达过渡态。图8描述的是LEPS势结合谐振势的势能面,最缓上升法所走的黑色粗曲线严重不符合实际MEP(黑点所示路径),而且曲线是中断的。此法也可能走到与此平衡结构相连的其它过渡态,而非预期的过渡态。还容易因为步长问题导致走到中途时跑到另外一条错误路径上,虽然设小步长能得到解决,但是需要花费更长时间。因为种种问题,这个方法使用较少。 势能面上最缓上升法所走的路径(黑色粗曲线) 2.3.2 本征向量/本征值跟踪法(eigenvector/eigenvalue following,EF。也称mode walking/mode following/Walking up valleys) 由于平衡结构越过势垒发生反应的能量主要来自分子某振动模式提供的动能,考虑这一点,由平衡结构沿着此振动矢量方向步进,能够找到过渡态,经历的路径就是反应路径。这种方法需要首先对平衡结构进行振动分析,由用户最初指定一个可能指向过渡态的振动模式。因为平衡态通向过渡态路径势能面平缓,曲率(可视为振子力常数)一般小于其它方向,故一般跟踪频率最低的振动模式(高斯中默认)。每走一步后重新计算Hessian矩阵的本征值和本征向量,如果跟踪的是本征值最低的模式,仍取本征值最小的本征向量继续跟踪;如果跟踪的是其它振动模式,就取与上一步所跟踪的向量重叠最大的向量继续跟踪。重复执行,直到符合收敛标准为止。 如果一个结构涉及到多个过渡态,则跟踪不同的本征向量有可能得到不同的过渡态,即便所跟踪的不是最低模式,当接近过渡态后也会成为最低的模式。此方法也可以直接由过渡态初猜结构开始跟踪,或者说EF方法是一种不需要初猜在过渡态二次区域内的寻找过渡态的方法。由稳定结构通过EF方法跟踪至过渡态相对与直接给出初猜显然更为费时,但对于不能预测过渡态结构的情况下往往是有用的。LMOD法搜索构象也是基于这一原理,不断地根据低频振动方向越过构象转变的过渡态到达新的构象。 最初的EF方法只是简单地沿所跟踪的振动模式移动来升高能量。高斯中opt=(EF,TS)方法还使结构同时在其余方向上沿能量更低的方向移动,其实它用的就已介绍的P-RFO法,所跟踪的模式用独立计算的λ的最大解,其它的模式使用相同的另外计算的λ的最小解。由于Berny方法寻找过渡态已经包含了P-RFO步,所以EF方法实际上也已经包含在内了,除非要用到跟踪特定模式等功能时才有使用的必要。 2.3.3 ARTn(activation-relaxation technique nouveau) 此方法主要用于研究无序材料的在能量面上由极小点穿过过渡态到达其它极小点的过程,解决由于势垒高而难以用MD和MC方法研究的问题。方法分两步,(1)将初始结构由极小点位置激活并收敛到过渡态(activation步),(2)由过渡态通过常规的能量极小化算法寻找极小点(relaxation步)。(1)中的每一步中在任意方向上移动结构,然后在垂直于走过的路径方向的超平面上做能量极小化,反复执行,直到Hessian矩阵出现一个负本征值为止。之后进入收敛至鞍点的步骤,在最小本征值的方向上沿受力反方向移动,其余方向根据受力移动,最终将找到一阶鞍点。由于大体系Hessian矩阵本征值求解困难,此方法中使用Lanczos算法快速求解最低本征值和本征向量。ART法可以获得与初始极小点相连的许多过渡态。 2.3.4 梯度极值法(Gradient extremal,GE) 梯度极值路径连接的是每一个等值线(高维情况为超曲面)上的梯度的模|g|为极大或极小值的点(相对于同一等值线上的其它点的梯度模来说)。因为势能面的每一点的梯度垂直于此点等值线的切线,故梯度模极值点的位置相当于垂直于等值线方向上等值线间隔比处在相同等值线上相邻的点更远或更近。|g|的极值与g^2一致,设势能函数为f,限制所在等值线能量为k,通过拉格朗日乘子法求g^2的极值▽ =0,可知梯度极值点的梯度方向等于此点Hessian矩阵某一本征向量。由于势能面上每个驻点必有一条或多条梯度极值路径通过而互相构成网络(但任意驻点间不一定有梯度极值路径直接相连),所以 系统 地跟踪梯度极值路径是一种获得势能面上全部驻点的方法,目前已有几种跟踪算法,然而即便对于简单体系,梯度极值路径数目也极多,尤其是包含对称性情况下。由极小点跟踪梯度极值路径也能够用于寻找过渡态,但极小点未必与过渡态通过梯度极值路径直连,且此方法并不能控制要寻找哪类驻点,故为了寻找过渡态可能需要从多个其它驻点跟踪多个梯度极值路径,计算量很大,所以单纯为了寻找过渡态而使用这种方法不切实际。 梯度极值路径示意图 2.3.5 约化梯度跟踪(reduced gradient following,RGF) 这个方法同梯度极值法一样可以得到包括过渡态、极小点在内的各种驻点。设势能面为N维,此方法将跟踪N条路径,其中第i条(i=1,2,3...N)路径只有在第i维上梯度不为0,而其它N-1个维度上皆为0,故称为约化梯度。这样的路径交汇的位置,就是所有维度上梯度皆为0的位置,即驻点。例如简单的二维情况E(x,y)=x^3+y^3-6xy,跟踪的RGF方程就是Ex(x,y)=3x^2-6y=0和Ey(x,y)=3y^2-6x=0,前者仅y方向梯度不为0,后者仅x方向梯度不为0,相交得到的驻点为一个一阶鞍点和一个极小点。也可以使用原始坐标组合的正交坐标系,例如跟踪仅x+y和仅x-y方向上梯度不为0的两条路径。 x^3+y^3-6xy面上约化梯度路径示意图 跟踪约化梯度的步进算法是第m点的坐标x(m+1)=x(m)+StL*x'(m)/|x'(m)|。StL是步长,x'(m)/|x'(m)|代表路径切线方向单位向量。x'可以通过H'x'=0方程以QR分解法获得,其中H'与Hessian矩阵唯一不同的是,若当前跟踪的是仅第k维梯度不为0的约化梯度路径,则H'没有Hessian矩阵的第k行。一般起始步由某驻点开始,此步准确计算Hessian,步进过程中Hessian可用前述的DFP方法修正。每步检验所跟踪方向上的朝向下一个驻点的牛顿步步长,若小于标准则停止,并且再精确计算一次Hessian以确认此驻点是什么类型。每次走步的结果如果在数值上与“仅某维度上梯度为0”条件符合较好,可以动态增加步长,类似AH法的置信半径概念,如果相差较大,则调用校正步(后期方法将校正步合并入步进步,改善了效率和稳定性)。 这个方法计算量也很大,而且也无法指定要搜索的驻点的类型,所以不适合独立用作寻找过渡态。 2.3.6 等势面搜索法(Isopotenial Searching) 如果将反应物位置附近的势能面比做一个湖,这个方法可以看作逐渐往湖里面灌水,由于过渡态能量比周围地方更低,所以随着水位(势能)逐渐升高,水最先流出来的地方就是过渡态。继续灌水,随着水位继续升高,还可以找到其它能量更高的过渡态。 具体实现的方法是:首先最小化反应物的能量E0,在反应物位置附近 设置 一些测试点,可以随机也可以根据经验设定,作为“水位”来检测是否已到达过渡态能量。然后设定目标能量E(target),一般高于E0几百KJ/mol。计算那些测试点的能量和势能梯度,检查其能量与E(target)的差的绝对值,若大于10KJ/mol,即没达到目标水位,就让它们沿着梯度方向行进以提升能量,之后再次检查是否符合条件,直到小于10KJ/mol,即已到达目标水位,就对这些点进行人工的检查,包括结构、成键分析等,考察在E(target)时是否已经达到或超过了过渡态的能量。如果找到了过渡态,就调整这些点的位置继续找别的过渡态;如果未找到,就提高E(target)并且调测试点整位置以增大找到过渡态的概率,然后再沿着梯度方向提升测试点的能量并进行接下来的检测,反复如此。 上述提到的“调整点的位置”有很多算法,但主要都是使那些测试点在垂直于梯度,即在等值面上移动。因为测试点无法密集覆盖整个等势面,受计算能力制约其数目有限的,很难有哪个点随着E(target)的提升而移动后恰好落在过渡态的位置。直到E(target)提升到有测试点可判断为过渡态时,其能量一般已高出实际过渡态很多。所以使用此方法得到的过渡态能量与初始点位置和调整点位置的算法都有很大关系,一般都显著偏高,甚至不能找到过渡态,可尝试以不同初始位置和调整算法重新执行以改善结果。等势面搜索法适合在只有反应物结构而难以预测过渡态和产物结构的情况下寻找过渡态,例如预测质谱中分子的可能裂解的方式,有时还可能找到全新未曾考虑到的反应机理。但是此方法的结果很粗糙,而且计算量极大,尤其是大分子的高维势能面,有限的测试点很容易漏掉许多重要过渡态。 2.3.7 球形优化(Sphere optimization) 在几何参数的变量空间上,以反应物或产物为中心,在不断增加半径的超球面上做能量最小化。将相邻球面上得到的能量极小点相连接,就得到一条由反应物或产物为起点的低能量的路径,可做为IRC(未必正确,考虑图8的势能面),并由此找到过渡态。如果每个球面上可以找到多个极小点,则连接后有可能得到多条反应路径。此法若以坐标驱动法为类比,此方法就是对几何参数空间中反应物或产物结构代表的点的距离进行柔性扫描。 球形优化示意图 2.4 全势能面扫描 当一切方法都不能找到过渡态,全势能面扫描是最终途径。由于扫描得到的势能面格点是离散的,可通过插值提高格点密度以增加精度。得到势能面后,就可以通过一些算法找到过渡态,例如用这些点拟合出解析表达式,然后用标准微分方法找过渡态。但全势能面扫描极为昂贵,内坐标下需要计算X^(3N-6)次(X代表每个变量扫描步数),只限于反应中仅涉及几个自由度的势能面扫描,往往不得不考虑更低级的方法如半经验或者分子力学,变量稍多的体系则完全不能实现。全势能面扫描的结果还提供了过渡态位置以外结构的信息,例如可以用于研究反应路径、用于构象搜索等。 3.过渡态相关问题 3.1 无过渡态的反应途径(barrierless reaction pathways) 并非所有反应途径都需要越过势垒,这类反应在很低的温度下就能发生,盲目找它们的过渡态是徒劳的。常见的包括自由基结合,比如甲基自由基结合为乙烷;自由基向烯烃加成,比如甲基自由基向乙烯加成成为丙基自由基;气相离子向中性分子加成,比如叔碳阳离子向丙烯加成。等等。 3.2 Hammond-Leffler假设 过渡态在结构上一般会偏向反应物或者产物结构一边。Hammond-Leffler假设对预测过渡态结构往哪个方向偏是很有用的,意思是反应过程中,如果两个结构的能量差异不大,则它们的构型差异也不大。由此可知对于放热反应,因为过渡态能量与反应物差异小,与产物差异大,故过渡态结构更偏向反应物,相反,吸热反应的过渡态结构更偏向产物。所以初猜过渡态结构应考虑这一问题。 3.2 对称性问题 如果已经明确地知道过渡态是什么对称性,而且对称性高于平衡态对称性,且可以确信在这个高对称性下过渡态是能量最低点,则可以强行限制到这个对称性之后进行几何优化,几何优化算法比寻找过渡态算法方法更可靠。比如F+CH3F--FCH3+F这个SN2反应,过渡态就是伞形翻转的一刻,恰为高对称性的D3h点群,而反应路径上的其它结构对称性都比它低,所以在D3h点群条件下优化,得到的能量最低点就是过渡态。 如果过渡态对称性不确定,则找过渡态计算的时候不宜设任何对称性,否则若默认保持了平衡态下的对称性,得到的此对称下的过渡态并不是真正的过渡态,容易得到二阶或高阶鞍点。 3.3 溶剂效应 计算凝聚态条件下过渡态的性质,必须考虑溶剂效应,它明显改变了势能面。一般对过渡态的结构影响较小,但对能量影响很大。有时溶剂效应也会改变反应途径,或产生气相条件下没有的势垒。溶剂条件下,上述寻找过渡态的方法依然适用。应注意涉及到与溶剂产生氢键等强 相互作用 的情况,隐式溶剂模型是不适合的,需要用显式溶剂考察它对过渡态的影响,即在输入文件中明确表达出溶剂分子。 3.4 计算过渡态的建议流程 直接用高水平方法计算过渡态往往比较花时间,可以使用逐渐提高方法等级的方法加速这一过程,一般建议是: 1 执行低水平的计算找过渡态,如半经验。 2 将第1步得到的过渡态作为初猜,用高级别的方法找过渡态。 3 在相同水平下对上一步找到的过渡态做振动分析,检验是否仅有一个虚频,以及观看其振动模式的动画来考察振动方向是否连接反应物与产物结构。有必要时可以做IRC进一步检验。 4 为获得更精确的过渡态能量,可使用更高等级方法比如含电子相关的方法计算能量。 4.内禀反应坐标(intrinsic reaction coordinate,IRC) MEP指的是势能面上,由一个点到达另一个点的能量最低的路径,满足最小作用原理。若质量权重坐标下的MEP连接的是反应物、过渡结构和产物,则称为IRC。所谓质权坐标在笛卡儿坐标下即r(i,x)=sqrt(m(i))*R(i,x),m(i)为i原子质量,R(i,x)为i原子原始x方向坐标,同样有r(i,y)、r(i,z)。IRC描述了原子核运动速度为无限小时,质权坐标下由过渡态沿着势能负梯度方向行进的路径(最陡下降路径),其中每一点的负梯度方向就是此处核的运动方向,在垂直于路径方向上是能量极小点。注意质量权重和非权重坐标下的路径是不一样的。 IRC可看作0K时的实际在化学反应中原子核所走的路径,温度较低时IRC也是一个很好的近似。但是当温度较高,即核动能较大时,实际反应路径将明显偏离IRC,而趋于沿最短路径变化,即便经历的是势能面上能量较高的的路径,这时就需要以动力学计算的平均轨迹来表征反应路径。 5.IRC算法 5.1 最陡下降法(Steepest descent) 最简单的获得IRC的方法就是固定步长的最陡下降法,由过渡态位置开始,每步沿着当前梯度方向行进一定距离直到反应物/产物位置,也称Euler法。由于最陡下降法及下文的IMK、GS等方法第一步需要梯度,而过渡态位置梯度为0,所以第一步移动的方向沿着虚频方向。最陡下降方法与IRC的本质相符,但是此法实际得到的路径是一条在真实IRC附近反复震荡的曲折路径,而非应有的平滑路径,对IRC描述不够精确。虽然可以通过更小的步长得以一定程度的解决,但是太花时间,对于复杂的反应机理,需要更多的点。也可以通过RK4(四阶Runga-Kutta)来走步,比上面的方法更稳定、准确,但每步要需要算四个梯度,比较费时。 5.2 IMK方法(Ishida-Morokuma-Kormornicki) 它是最陡下降法的改进,解决其震荡问题。首先计算起始点X(k)的梯度g(k),获得辅助点X'(k+1)=X(k)-g(k)*s,其中s为可调参数。然后计算此点梯度g'(k+1),在g(k)与-g'(k+1)方向的平分线上(红线所示)进行线搜索,所得能量最小点即为X(k+1),之后再将X(k+1)作为上述步骤的X(k)重复进行。整个过程类似先做最陡下降法,然后做校正。此方法仍然需要相对较小的步长,获得较精确IRC所需计算的点数较多。 IMK方法示意图 Schmidt,Gordon,Dupuis改进了IMK的三个细节,使之更有效率、更稳定。(1)将X'(k+1)的确定方式改为了X(k)-g(k)/|g(k)|*s,即每一步在负梯度方向上行进固定的s距离,与梯度大小不再有关。(2)线搜索步只需在平分线上额外计算一个点的能量即可,这个点和X'(k+1)点的能量以及g'(k+1)在此平分线上的投影三个条件作联立方程即可解出曲线方程,减少了计算量。IMK原始方法则需要在平分线上额外计算两个点的能量与X'(k+1)的能量一起拟和曲线方程。(3)第一步在过渡态位置的移动距离Δq如此确定:ΔE=k*(Δq^2)/2,k为虚频对应的力常数,ΔE为降低能量的期望值(一般为0.0005 hartree),这样可避免在虚频很大的鞍点处第一步位移使能量降低过多。 5.3 Müller-Brown方法 这是通过球形限制性优化找IRC的方法。首先将过渡态和能量极小点位置定义为P1和P2,由P1开始步进,当前步结构以Q(n)表示。每一步,在相距Q(n)为r距离的超球面上用simplex法优化获得能量极小点Q'(图中绿点),优化的起始点是Q(n-1)Q(n)与Q(n)P2方向的平分线b上距Q(n)为r距离的位置S(红点)。若Q(n)Q'与Q(n)P2的夹角较小,则Q'可当作是下一步位置Q(n+1)。如此反复,直到符合停止标准,比如下一步能量比当前更高(已走过头了)、与P2距离已很近(如小于1.2r)、或者与P2方向偏离太大(P1与P2点通过此法无法找到IRC)。最终所得到全部结构点依次相连即为近似的IRC,减小步长r值可使结果更贴近实际IRC。基于此方法也可以用于寻找过渡态,先将反应物和产物作为P1和P2,将二者距离的约2/3作为r,由其中一点在P1-P2连线上相距其r位置为初始位置进行球形优化得到O点,在O与P1、O与P2上也如此获得P1'与P2',根据P1、P1'、O、P2'、P2的能量及之间距离信息以一定规则确定其中哪两个点作为下一步的P1和P2,确定新的P1和P2后重复上述步骤,直至P1与P2十分接近,即是过渡态。此方法计算IRC可以步长可设得稍大,第一步不需要费时的Hessian矩阵确定移动方向,缺点是获得的路径曲率容易有问题,对于曲率较大的反应路径需要减小步长。 Müller-Brown方法示意图 5.4 GS(Gonzalez-Schlegel)方法 这是目前很常用,也是Gaussian使用的方法,见图14。首先计算起始点X(k)的梯度,沿其负方向行进s/2距离得到X'(k+1)点作为辅助点。在距X'(k+1)点距离为s/2的超球面上做限制性能量最小化,找到下一个点X(k+1)。因为这个点的负梯度(黑色箭头)在弧方向上分量为0,故垂直于弧,即其梯度方向在X'(k+1)到X(k+1)的直线上。这必然可以得到一段用于描述IRC的圆弧(虚线),它通过X(k)与X(K+1)点,且在此二点处圆弧的切线等于它们的梯度方向,这与IRC的特点一致,这段圆弧可以较好地(实线)。之后再将X(k+1)作为上述步骤的X(k)重复进行。 GS方法对IRC描述得比较精确,在研究反应过程等问题中,由于对中间体结构精度有要求,GS是很好的选择,而且用大步长可以得到与小步长相近的结果,优于IMK、Müller-Brown等方法。若只想得到与过渡态相连的反应物和产物结构,或者粗略验证预期的反应路径,对IRC精度要求不高,使用最陡下降法往往效率更高,尽管GS可以用更大步长,但每步更花时间。 GS方法示意图 除上述外,IRC也可以通过已提及的EF、最缓上升法、球形优化等方法得到,它们的好处是不需要事先知道过渡态的结构。赝坐标法除了简单的反应以外,只能得到近似的IRC,由于结构的较小偏差会带来能量的较大变化,容易引入滞后效应,所以这样得到的势能曲线难以说明问题。 6. chain-of-states方法 这类方法主要好处是只需要提供反应物和产物结构就能得到准确的反应路径和过渡态。首先在二者结构之间以类似LST的方式线性、均匀地插入一批新的结构(使用内坐标更为适宜),一般为5~40个,每个结构就是势能面上的一个点(称为image),并将相邻的点以某种势函数相连,这样它们在势能面上就如同组成了一条链子。对这些点在某些限制条件下优化后,在势能面上的分布描述的就是MEP,能量最高的结构就是近似的过渡态位置。 6.1 Drag method方法 这个方法最简单,并不是严格的chain-of-states方法,因为每个结构点是独立的。插入的结构所代表的点均匀分布在图8所示的短虚线上,也可以在过渡态附近位置增加点的密度。每个点都在垂直于短虚线的超平面上优化,在图中就是指平行于长虚线方向优化。这种方法一般是奏效的,但也很容易失效,图8就是一例,优化后点的分布近似于从产物和反应物用最缓上升法得到的路径(黑色粗曲线),不仅反应路径错误,而且两段不连接,与黑色小点所示的真实MEP相距甚远(黑色点是用下文的NEB方法得到的)。目前基本不使用此方法。 6.2 PEB方法(plain elastic band) 这是下述Chain-of-state方法的基本形式。也是在反应物到产物之间插入一系列结构,共插入P-1个,反应物编号为0,产编号物为P。不同的是优化不是对每个点孤立地优化,而是优化一个函数,每一步所有点一起运动。下文用∑ X(i)符号代表由X(1)开始加和直到X(P)。PEB函数是这样的:S(R(1),R(2)...R(P-1))=∑ V(R(i)) + ∑ ( k/2*(R(i)-R(i-1))^2 )。其中R(i)代表第i个点的势能面上的坐标,V(R(i))是R(i)点的能量,k代表力常数。优化过程中反应物R(0)和产物R(P)结构保持不变,优化此函数相当于对一个N*(P-2)个原子的整体进行优化,N为体系原子数。 优化过程中,式中的第一项目的是让每个点尽量向着能量极小的位置移动。第二项相当于将相邻点之间用自然长度为0、力常数为k的弹簧势连了起来,目的是保持优化中相邻点之间距离均衡,避免过大。当只有第一项的时候,函数优化后结构点都会跑到作为能量极小点的反应物和产物位置上去而无法描述MEP,这时必然会有一对儿相邻结构点距离很大。当第二项出现后,由于此种情况下弹簧势能很高,在优化中不可能出现,从而避免了这个问题。drag method法在图8中失败的例子中,也有一对儿相邻结构点距离太远,所以也不会在PEB方法中出现。简单来说,PEB方法就是保持相邻结构点的间距尽量小的情况下,优化每个结构点位置。可以近似比喻成在势能面的模型上,将一串以弹簧相连的珠子,一边挂在反应物位置,另一边挂在产物位置,拉直之后松手,这串珠子受重力作用在模型上滚动,停下来后其形状可当作MEP,最高的位置近似为过渡态。 但是PEB方法的结果并不能很好描述MEP。图15描述的是常见的A、B、C三原子反应的LEPS势能面,B可与A或C成键,黑色弧线为NEB方法得到的较真实的MEP。左图中,在过渡态附近PEB的结构点没有贴近MEP,得到的过渡态能量过高,称为corner-cutting问题。这是因为每点间的弹簧势使这串珠子僵硬、不易弯曲,由图15右图可见,R(i)朝R(i-1)与R(i+1)方向都会受到弹簧拉力,其合力牵引R(i),使R(i-1)、R(i)、R(i+1)的弧度有减小趋势。如果将弹簧力常数减小以减弱其效果,就会出现图15中间的情况,虽然结构点贴近了MEP,但相邻点间距没有得到保持,过渡态附近解析度很低,错过了真实过渡态,若以能量最高点作为过渡态则能量偏低,这称为sliding-down问题。可见弹簧力常数k的设定对PEB结果有很大影响,为权衡这两个问题只能取折中的k,但结果仍不准确。 LEPS势能面上不同k值的PEB结果 6.3 Elber-Karplus方法 与PEB函数定义相似。第一项定义为1/L*∑ ( V(R(i))*d(i,i-1) ),其中L为链子由0点到P-1点的总长,d(i,i+1)为R(i)与R(i+1)的距离,此项可视为所有插入点总能量除以点数,即插入点的平均能量。第二项为γ*∑ (d(i,i-1)-d)^2,其中d代表相邻点的平均距离,是所有d(i,j)的RMS。此项相当于将弹簧自然长度设为了当前各个弹簧长度的平均值,由γ参数控制d(i,j)在平均值上下允许的波动的范围。此方法最初被用于研究 蛋白质 体系的构象变化。 6.4 SPW方法(Self-Penalty Walk) 在Elber-Karplus方法的基础上增加了第三项互斥项,∑ ∑ U(ij),其中U(ij)=ρ*exp(-d(i,j)/(λ*d)),d定义同上。此项相当于全部点之间的“非键作用能U(ij)”之和,不再仅仅是相邻点之间才有限制势。任何点之间靠近都会造成能量升高,可以避免Elber-Karplus方法中出现的在能量极小点处结构点聚集、路径自身交错的问题,能够使路径充分地展开,确保过渡态区域有充足的采样点。式中ρ和λ都是可调参数来设定权重。此外相对与Elber-Karplus方法还考虑了笛卡儿坐标下投影掉整体运动的问题。 6.5 LUP方法(Locally Updated planes) 特点是优化过程中,只允许每个结构点R(i)在垂直于R(i-1)R(i+1)向量的超平面上运动。由于每步优化后R(i-1)与R(i+1)连线方向也会变化,故每隔一定步数重新计算这些向量,重新确定每个点允许移动的超平面。但是LUP缺点是结构点之间没有以上述弹簧势函数相连来保持间隔,容易造成结构点在路径上分布不均匀,甚至不连续,还可能逐渐收敛至两端的极小点。 6.6 NEB方法(Nudged Elastic Band) NEB方法集合了LUP与PEB方法的优点,其函数形式基于PEB。从PEB方法的讨论可以看出,弹簧势是必须的,它平行于路径切线(R(i)-R(i-1)与R(i+1)-R(i)矢量和的方向)的分量保证结构点均匀分布在MEP上来描述它;但其垂直于路径的分量造成的弊端也很明显,它改变了这个方向的实际的势能面,优化后得到的MEP'就与真实的MEP发生了偏差,造成corner-cutting问题。解决这个问题很简单,在NEB中称为nudge过程,即每个点在平行于路径切线上的受力只等于弹簧力在这个方向分量,每个点在垂直于路径切线方向的受力只等于势能力在此方向上分量。这样弹簧力垂直于路径的分量就被投影掉了,而有用的平行于路径的分量完全保留;势能力在路径方向上的分量也不会再对结构点分布的均匀性产生影响,被保留的它在垂直于路径上的分量将会引导结构点地正确移动。这样优化收敛后结构点就能正确描述真实的MEP,矛盾得到解决。弹簧力常数的设定也比较随意,不会再对结果产生明显影响。但是当平行于路径方向能量变化较快,垂直方向回复力较小的情况,NEB得到的路径容易出现曲折,收敛也较慢,解决这一问题可以引入开关函数,即某点与两个相邻点之间形成的夹角越小,此点就引入更多的弹簧势垂直于路径的分量,使路径不易弯曲而变得光滑,但也会带来一定corner-cutting问题。也可以通过将路径切线定义为每个点指向能量更高的相邻点的方向来解决。 6.7 DNEB方法(Double Nudged Elastic Band) 弹簧势垂直于路径的分量坏处是造成corner-cutting问题,好处是避免路径卷曲。更具体来说,前者是由于它平行于势能梯度方向的那个分量造成的,若只将这个分量投影掉,就可避免corner-cutting问题,而其余分量的力F(DNEB)仍可以避免路径卷曲,这便是DNEB的主要思想。故DNEB与NEB的不同点就是DNEB保留了弹簧势垂直于路径的分量其中的垂直于势能梯度的分量。 DNEB的这个设定却导致结构点不能精确收敛到MEP上。正确的MEP上的点在垂直于路径方向上受势能力一定为0,但是当用了DNEB方法后,若其中某一点处路径是弯曲的,即弹簧力在垂直于路径方向上有分量F',而且此点势能梯度方向不垂直于此点处路径的切线,即F'不会被完全投影掉,F'力的分量F(DNEB)将继续带着这个点移动,也就是说结构点就不在正确的MEP上了。只有当结构点所处路径恰为直线,即F'为0则不会有此问题。为了解决此问题有人将开关函数加入到DNEB,称为swDNEB,当结果越接近收敛,即垂直于路径的势能力越小的时候,F(DNEB)也越小,以免它使结构点偏离正确MEP。一些研究表明DNEB和swDNEB相比NEB在收敛性(结构点受力最大值随步数降低速度)方面并没有明显提升,DNEB难以收敛到较高精度以内,容易一直震荡。 6.8 String方法 与NEB对力的投影定义一致,但点之间没有弹簧势连接,保持点的间距的方法是每步优化后使这些点在路径上平均分布。 6.9 Simplified String方法 String中计算每个点的切线并投影掉势能力平行于路径的分量的过程也去掉了,所有点之间用三次样条插值来表述路径,每一个点根据实际势能力运动后,在路径上重新均匀分布。优化方法最好结合RK4方法。NEB在点数较小的情况下比Simplified String方法能在更短时间内收敛到更高精度,但点数较多情况下则Simplified String更占优势。 6.10 寻找过渡态的chain-of-state方法 除非势能面对称且结构点数目为奇数,否则不会有结构点恰好落在过渡态。以能量最高的点作为过渡态只是近似的,为了更好地描述过渡态,可以增加结构点数,或者增加局部弹簧力常数,使过渡态附近点更密。根据已得到的点的能量,通过插值方法估算能量最高点是另一个办法。近似的过渡态也可以作为QN法的初猜寻找准确的过渡态。 6.10.1 CI-NEB方法 NEB与String等方法都可以结合Climbing Image方法,它专门考虑到了定位过渡态问题。CI-NEB与NEB的关键区别是能量最高的点受力的定义,在CI-NEB中这个点不会受到相邻点的弹簧力,避免位置被拉离过渡态,而且将此点平行于路径方向的势能力分量的符号反转,促使此点沿着路径往能量升高的方向上爬到过渡态。这个方法只需要很少的点,比如包含初、末态总共5个甚至3个点就能准确定位过渡态,是最有效率的寻找过渡态的方法之一。如果还需要精确描述MEP,可以在此过渡态上使用Stepwise descent方法、最陡下降法、RK4等方法沿势能面下坡走出MEP,整个过程比直接使用很多点的NEB方法能在更短时间内得到更准确的MEP。 6.10.2 ANEBA方法(adaptive nudged elastic band approach) 这个方法也是基于NEB,专用来快速寻找过渡态。一般想得到高精度的过渡态区域,NEB的链子上必须包含很多点,耗费计算时间。而ANEBA方法中链子两端的位置不是固定的,而是不断地将它们移动到离过渡态更近的位置,仅用很少几个点的链子就可以达到同样的精度。具体来说,设链子两端的点分别叫A点和B点(对于第一步就是反应物和产物位置),先照常做NEB,收敛至一定精度后(不需要精度太高),改变A和B的位置为链子中能量最高点相邻的两个点,然后再优化并收敛至一定精度,再如此改变A和B的位置,反复经历这一步骤,最终链子上能量最高点就是精确的过渡态。ANEBA相当于不断增加原先NEB链子的过渡态附近的点数,但实际上点数没有变。有研究表明ANEBA比CI-NEB效率更高,如果结合ANEBA与CI(称CI-ANEBA),即先用ANEBA方法经上述步骤移动几次A、B点,使之聚焦到过渡态附近,再用CI-NEB方法,效率可以进一步提高。 ANEBA方法示意图 6.11 chain-of-states方法的一些特点 NEB方法的设定只是决定了每一步结构点实际感受到的势能面是怎么构成的,并没有指定优化方法。NEB可以结合一些常见的优化方法,比如最陡下降法、共轭梯度法、quick-min、FIRE、L-BFGS法等(没有线搜索步的全局L-BFGS法效率一般最高),但只能像前述寻找IRC方法一样得到一条路径。实际上很多情况反应的路径不止一条,尤其是势能面复杂的大分子构象转变过程。当NEB结合构象搜索方法,比如分子动力学、蒙特卡罗等方法时,就可以用于寻找多条反应路径。例如有几条反应路径,彼此间都有一定高度的势垒分隔,如果初始给出的路径在第i条附近,优化后只能收敛到第i条路径,若对每个点使用分子动力学方法,设定一定温度,则这些点有机会凭借动能越过势垒到达另外一条路径k附近,随后逐渐降温减小动能,相当于对它们进行最陡下降法优化,就找到了第k条路径,若如此反复多次,有可能找到更多路径。 这类chain-of-states方法的优点还在于易于实现,算法简单,只有能量和其一阶导数是必须要算的,随着体系尺度增大计算量的增加远比基于Hessian矩阵的方法要小。对于大体系储存Hessian并求逆亦是困难的,在某些情况下Hessian矩阵受计算能力制约只能在低水平方法下得到或者无法获得,chain-of-states方法避免了这个问题,很适合用于分子力学研究 生物 大分子的结构变化路径以及平面波基组下的DFT方法研究固体表面化学反应。此方法也容易并行化,例如可以每个节点负责优化其中一个或几个点,只有计算弹簧力时才需要从另外节点传入相邻结构点坐标,数据通信量小,并行效率高。 6.12 高斯中opt关键字的path=M方法 与chain-of-states方法有一定类似之处,可以在一次计算中获得优化后的过渡态、产物、反应物以及用于描述IRC的中间点结构,总共M个点。此方法须结合QST2或QST3关键字。结合QST2时,除反应物和产物以外剩下的M-2个点在二者冗余内坐标下线性插值产生,结合QST3则是剩下的M-3个点在反应物与过渡态、过渡态与产物之间插值产生。之后迭代的每一步主要分为以下几个步骤:(1)初始输入的反应物、产物通过RFO法向最优构型优化。(2)能量最高的点q(k)(此点在第一步确定)通过EF法向过渡态优化,并设一段圆弧通过q(k-1)、q(k)、q(k+1),此圆弧在q(i)处的切线作为EF方法选择所跟踪的本征向量的引导,类似于STQN步。(3)其余的点执行微迭代步骤(迭代内的迭代),其中包含类似于GS法的球面优化步骤以及调整间距步骤。可参考图14,优化其中任意点q(i)前,首先获得经过q(i-1)、q(i)并与q(i-1)的梯度相切的圆弧或曲线,将其在q(i)处的切线定义为T(i),然后定义一个在q(i)处法线与T(i)平行、经过q(i-1)与q(i)的球面,使q(i)限制在此球面上优化。然后在这些点依次相连的路径上调整这些点的间距至平均,之后重复微迭代直至每一步力和位移都已收敛,或者有任何点位移超过了置信半径。(4)检查力和位移是否都已收敛至标准。这个方法比单独优化反应物、产物、过渡态并计算IRC省时间,而且对于难找的过渡态比STQN法更容易成功。 6.13 CPK方法(Conjugate Peak Refinement) 在某种意义上称为动态的chain-of-states方法。每条链子只含一个可动点,链子数由最初的一条开始不断增加,对MEP的描述也越来越精确。CPK中的第一步类似LST,在连接反应物和产物的直线中找到能量最高点(称为Peak),然后沿着共轭方向优化得到中间点,对中间点与反应物、中间点与产物分别再做上述步骤,先找到最大点再共轭优化,如此反复直到收敛。最后将反应物、产物以及执行CPK过程中所有优化后的点相连,就得到了近似的反应路径。CPK方法所得的反应路径可以经过很多过渡态,很适合寻找一些涉及到复杂结构重排、包含甚至上百个过渡态的构象变化路径,如 蛋白 质局部折叠/去折叠过程。CPK方法缺点是实现起来相对复杂,定位过渡态较为费时。 CPK方法示意图
个人分类: 原理|5544 次阅读|0 个评论
[转载]Phonon计算方法的选用
ywmucn 2011-9-17 23:56
转自: http://i.eol.cn/blog_read.php?topicid=693401 有三个方法: Linear Response Theory Frozen Phonon method Finite Displacement method Linear response 方法(或者称为 density perturbation functional theory , DFPT ),直接计算出原子的移动而导致 的势场变化,再进一步构造出动力学矩阵。这种方法在计算谱时, Born effective charge (对极性的材料)和声子谱都能计算出。 现在很流行, CASTEP ,Quantum-Expresso,Abinit等等都在用,后面两个原理差不多; Linear Response 优点: 晶体晶胞没有大小限制,即使用包含一个原子的Primitive cell,计算得到的Dynamical Matrix也是很准确的,主要原理:Hellmann-Feymann theorem and Perturbation theory, 原子施加很小的位移,计算波函数, 电子 密度对位移的响应函数,主要方法见Gonze1997年的两个PRB文章。计算速度一般,特别是采用Normal Conserving PPs的时候,单原子晶胞RAM占用量在3-4G之间,CASTEP里面只支持NCPP的Linear response 计算,USPPs不支持。 另外一个是Finite displacement (直接的方法): 构造超原胞,把原子移动一下,计算原胞中所有原子所受的力(这个根据体系的周期性,要多移动几个原子),然后根据这个力构造力常数矩阵。 而且一般情况下对 LO-TO 的 split 不能计算出(只有在计算了 Born effective charge 之后, 进一步考虑了 non-analyticity term ,才能计算出)。phonon, phonony等就是结合vasp或者其他计算软件如wien2k等计算声子谱的。 Finite displacement 优点: RAM占用量和计算量在Cell一样的情况下,可节约2倍的RAM和CPU时间,但这个方法最大的缺点是需要生成一个Supercell 来获得比较可靠的力常数,虽然鉴于力常数是短程 作用 ,在最邻近原子以外衰减很快,但所需要的Supercell大小也很大,一般截止半径大小是4A以上,对于金属这个半径可能会小一下,因为金属的电子Coulomb屏蔽很显著,但对于其他的晶体结构,以及晶体结构较复杂的体系,这种方法自动生成的Cell一般都包含100原子以上,基本上没有人能采用单机计算Phonon, 如BCC, Ba元素,Primitive cell只包含一个原子, %BLOCK LATTICE_CART -2.445170154155672 2.445170154155674 2.445170154155673 2.445170154155672 -2.445170154155673 2.445170154155673 2.445170154155672 2.445170154155672 -2.445170154155672 %ENDBLOCK LATTICE_CART %BLOCK POSITIONS_FRAC Ba 0.0000000000000000 0.0000000000000000 0.0000000000000000 在采用有限位移方法计算 声子 时晶胞是: %BLOCK PHONON_SUPERCELL_MATRIX 2 0 0 0 2 0 0 0 2 即2*2*2的supercell,里面包含8个Ba原子,采用AMD Dual Core,2G RAM,计算需要2h左右即可完成。 另外一个最大的优点是可以用Ultra soft Pseudo potentials, 这个可以极大的节约时间,减小kinetic energy curoff数值。 Finite Displacement方法只计算Brillouin Zone G点的Normal Modes,其他k点的Dynamical Matrix利用Fourier Transofrmation得到,C(k)=Sum C(R)*Exp(-ikR),只要Cell足够大,可以获得和Linear Response 一样可靠的Dynamical Matrix。 Linear Response计算有带隙的晶体最好,也是最省事的方法,但计算金属,采用Finite element方法最好,Linear response对金属体系基本上失效的。 可能原因: Perturbation theory本身对于金属不成立(金属能隙太小); Fermi 面Smearing方法本身对计算力常数不利;(目前有几个常用的Smeaing方法,Gaussan函数,或者有限 温度 下的Fermi Dirac函数) 后者基本上可以排除,采用Linear response,同事采用NCPP+fix occupation的方法计算得到的Phonon和NCPP+ Smearing方法是一样子的,因此可以推断是Linear Response theory对metal不适用,CASTEP小组在其网页上也指出Lnear Response theory对Magnetic和Metal不适用。因此CASTEP不支持金属体系NCPP+Linear Response计算,也是有原因的。 采用Quantum-Expresso计算PHONON,可以完全得到与CASTEP一致的结论,即Linear Response不适用于金属体系 。 下面给出Na的例子,有实验数据,势函数计算 结果 ,NCPP+ Linear response,USPP+Finite element 结果 ,可以看到Linear response精度连势函数都不如,数值完全是错误的 声子计算的几种方法: 转自: http://emuch.net/html/200802/723527.html Practical schemes for phonon calculations (见castep说明) A good review of the existing schemes can be found in Baroni et al. (2001). The theoretical study of phonon properties has to rely on one of the three available methods for determining the force constants matrix: analytical calculations, supercell calculations or linear response calculations. The analytical approach is only viable when the energy model is sufficiently simple to allow a direct evaluation of the second derivatives of the energy with respect to atomic displacements (e.g., empirical pair potential models). Therefore, it is unsuitable for first principles calculations. Further alternatives such as extracting vibrational properties from molecular dynamics runs (Arias et al. 1992) are less transparent and noticeably more expensive. The supercell method involves perturbing the positions of the atoms slightly and calculating the reaction forces (Ackland et al. 1997). It is necessary to use supercells of the original cell when interatomic interaction in the system is long ranged. The main advantage of this method (and of the closely related frozen phonon technique) is that there is no need for a new formalism; any total energy scheme like CASTEP can be used to evaluate the forces at a number of carefully selected distorted configurations. The original frozen phonon scheme requires a displacement with the given wave vector and has been successfully used since the early 1980s (Yin and Cohen 1982, Ho et al. 1984). The force constants matrix evaluation in this formalism has been used to calculate interplanar force constants (Wei and Chou 1994) and thus phonon dispersion along high symmetry directions. More recent applications are based on the full reconstruction of the force constants matrix (Ackland et al. 1997, Parlinski et al. 1997, and references in Baroni et al. 2001). Linear response calculations seek to evaluate the dynamical matrix directly for a set of q vectors. The starting point of the linear response approach is evaluation of the second-order change in the total energy induced by atomic displacements. The main advantage of the scheme is that there is no need to artificially increase the cell size in order to accommodate small values of the q vectors, as in the frozen phonon method, or to overcome the long range interaction problem (force constants matrix from supercell calculations). A more detailed description of the linear response method can be found in Baroni et al. 2001. The CASTEP implementation is described in the Linear Response topic. 第一性原理计算声子方法及常见程序: 一,直接法: 直接法,或称frozen-phonon方法,是通过在优化后的平衡结构中引入原子位移,计算作用在原子上的Hellmann-Feynman力,进而由动力学矩阵算出声子色散曲线。用该方法计算声子色散曲线最早开始于80年代初。由于计算简便,不需要特别编写的计算程序,很多小组都采用直接法计算材料性质。直接法的缺陷在于它要求声子波矢与原胞边界(super size)正交,或者原胞足够大使得Hellmann-Feynman力在原胞外可以忽略不计。这使得对于复杂系统,如对称性高的晶体、合金、超晶格等材料需要采用超原胞。超原胞的采用使计算量急剧增加,极大的限制了该方法的使用。这种方法不能很好的预言LO-TO splitting,只有在计算了Born effective charge和dielectric constant之后,进一步考虑了 non-analyticity term,才能计算出;但Direct Method本身并不能给出Born effective charge和dielectric constant.所以这也是它的一个缺陷.目前,vasp+phonon用的就是这种方法. vasp+phonon(或者PHON或者fropho) VASP能计算声子谱的都是采用一种直接的方法:构造超原胞,把原子移动一下,计算原胞中所有原子所受的力(这个根据体系的周期性,要多移动几个原子),然后根据这个力构造力常数矩阵。 1,PHONON Software by Krzysztof PARLINSKI Phonon is a software (see list of Publications) for calculating phonon dispersion curves, and phonon density spectra of crystals, crystals with defects, surfaces, adsorbed atoms on surfaces, etc. from either a set of force constants, or from a set of Hellmann-Feynman forces calculated within an ab initio program (not included). One can use VASP, Wien2k, MedeA of Materials Design , Siesta, or other ab initio code which is able to optimize a supercell and calculate the Hellmann-Feynman forces. Phonon builds a crystal structure, using one of the 230 crystallographic space groups, finds the force constant from the Hellmann-Feynman forces, builds the dynamical matrix, diagonalizes it, and calculates the phonon dispersion relations, and their intensities. Phonon finds the polarization vectors, and the irreducible representations (Gamma point) of phonon modes, and calculates the total and partial phonon density of states. It plots the internal energy, free energy, entropy, heat capacity and tensor of mean square displacements (Debey-Waller factor). Phonon finds the dynamical structure factor for the coherent inelastic neutron scattering and the incoherent doubly differential scattering cross section for a single crystal and polycrystal. For polar cystals the LO/TO mode splitting can be included. Homepage: http://wolf.ifj.edu.pl/phonon/index.html 2,PHON A program to calculate phonons using the small displacement method This program calculates force constant matrices and phonon frequencies in crystals. From the frequencies it also calculates various thermodynamic quantities, like Helmholtz free energy, entropy, specific heat and internal energy of the harmonic crystal. The procedure similar to the one described in Ref. , i.e. is based on the small displacement method. It needs a code capable to calculate forces on the atoms of the crystal. Homepage: http://chianti.geol.ucl.ac.uk/~dario/ E-mail: d.alfe@ucl.ac.uk Telephone: +44 (0)20 7679 2361 Fax: +44 (0)20 7679 5166 3,fropho is the open source implementation of the frozen phonon method. Function: Phonon band structure Phonon DOS (Vibrational spectra) Thermal properties Mulliken notation assignment of vibration mode fropho is the frozen phonon analyzer mainly for first principles (ab initio) calculation. Periodic boundary condition is assumed. fropho gives good combinations with VASP code or another codes which can derive Hellmann-Feynman forces. Homepage: http://fropho.sourceforge.net/ Download: http://sourceforge.net ... oup_id=161614 Contact: atz.togo@gmail.com Authour: Atsushi Togo 二,DFPT方法: 1987年,Baroni、Giannozzi和Testa提出了一种新的晶格动力学性质计算方法--微扰密度泛函方法(Density Function Perturbation Theory)。DFPT通过计算系统能量对外场微扰的响应来求出晶格动力学性质。该方法最大的优势在于它不限定微扰的波矢与原胞边界(super size)正交,不需要超原胞也可以对任意波矢求解。因此可以应用到复杂材料性质的计算上。此外,能量对外场微扰的响应不仅可以推导出声子的晶体性质,还能求出弹性系数、声子展宽、拉曼散射截面等性质,这种方法本身就能算出Born effective charge dielectric constant,可以很好的预言LO-TO splitting甚至Kohn anomalies。这些优势使 得DFPT一经提出就被广泛应用到了半导体、金属和合金、超导体等材料的计算上。 比较常用的程序是pwscf和abinit,castep等采用的是一种linear response theory 的方法(或者称为 density perturbation functional theory,DFPT),直接计算出原子的移动而导致 的势场变化,再进一步构造出动力学矩阵。
个人分类: VASP|5161 次阅读|1 个评论
期刊影响因子的计算
harmonica028 2011-7-18 12:01
用户咨询:期刊《 INTERNATIONAL JOURNAL OF SUSTAINABLE DEVELOPMENT AND WORLD ECOLOGY 》2010年的文章数为68篇,为什么计算影响因子的时候只算了64篇? 用户说还挺急的,等着回复, 手忙脚乱地现查了一通,完全是临时抱佛脚 Web of Knowledge网站上有关于影响因子计算的详细介绍 其实影响因子(Impact Factor)的计算并不涉及当年的文章数,其计算方法为前两年文章在当年的引用次数除以前两年的文章数;涉及到当年文章数的是即年指标(Immediacy Index),计算方法为当年文章在当年被引用的次数除以当年的文章数。用户问题中提到的“68”和“64”,就出现在这个地方。 经检索,2010年该刊文章数确实为68篇。 查68篇文献的类型,发现其中62篇为article,2篇为review,3篇为editorial material,1篇为correction。JCR中“64”对应的是citable items,那么推测editorial material和correction应该就是uncitable的啦
个人分类: 工作笔记|9519 次阅读|0 个评论
[转载]过渡态、反应路径的计算方法及相关问题
cathysmurf 2011-6-20 15:02
过渡态、反应路径的计算方法及相关问题 http://www.mdbbs.org/viewthread.php?tid=17170 PS:本文是我写过的最耗时(24天)、字数最多(两万五千余字)、最辛苦的帖子。 图片较多,不知什么时候图片会都变成红叉,重新贴太麻烦,所以图片全都打包,若看不见图片请 下载 图片包: http://www.brsbox.com/filebox/down/fc/5678ba823274826535f67b0b98ec6fc0 过渡态、反应路径的计算方法及相关问题 Sobereva Department of Chemistry, University of Science and Technology Beijing, Beijing 100083, China 前言:本文主要介绍过渡态、反应路径的计算方法,并 讨论 相关问题。由于这类算法极多,可以互相组合,限于精力不可能面面俱到展开,所以只介绍常用,或者实用价值有限但有启发性的方法。文中图片来自相关 文献 ,做了一定修改。由于本文作为帖子发布,文中无法插入复杂公式,故文中尽量将公式转化为文字描述并加以解释,这样必然不如公式形式严谨,而且过于复杂的公式只能略过,但我想这样做的好处是更易把握方法的梗概,有兴趣可以进一步阅读原文了解细节。对于Gaussian中可以实现的方法,文中对其在Gaussian中的使用进行了一些讨论,希望能纠正一些网上流传的误区。虽然绝大多数人不专门 研究 计算方法,其中很多方法也不会用到,但多了解一下对开阔思路是很有好处的。 文中指的“反应”包括构象变化、异构化、单 分子 反应等任何涉及到过渡态的变化过程。“反应物”与“产物”泛指这些过程的初态和末态。“优化”若未注明,包括优化至极小点和优化至过渡态。势能面是高维的,但为了直观以及表述方便,文中一般用二维势能面 模型 来讨论,应推广至高维情况。限于纯文本格式,向量、矩阵无法加粗表示,但容易自行判断。 目录: 1.过渡态 2.过渡态搜索算法 2.1 基于初猜 结构 的算法 2.1.1 牛顿-拉弗森法(Newton-Raphson,NR)与准牛顿法(quasi-Newton,QN) 2.1.2 AH方法(augmented Hessian) 2.1.2.1 RFO法(Rational Function Optimization,有理 函数 优化) 2.1.2.2 P-RFO法(Partitioned-RFO) 2.1.2.3 QA法(Quadratic Approximation,二次逼近) 2.1.2.4 TRIM法(trust-region image minimization,置信区域镜像最小化) 2.1.2.5 在 高斯 中的常见问题 2.1.3 GDIIS法(Geometry Direct Inversion in the Iterative Subspace) 2.1.4 梯度模优化(gradient norm minimization) 2.1.5 Dimer方法 2.2 基于反应物与产物结构的算法 2.2.1 同步转变方法(synchronous transit,ST) 2.2.2 STQN方法(Combined Synchronous Transit and Quasi-Newton Methods) 2.2.3 赝坐标法(pseudo reaction coordinate) 2.2.4 DHS方法(Dewar-Healy-Stewart,亦称Saddle方法)与LTP方法(Line-Then-Plane) 2.2.5 Ridge方法 2.2.6 Step-and-Slide方法 2.2.7 Müller-Brown方法 2.2.8 CI-NEB、ANEBA方法 2.3 基于反应物结构的算法 2.3.1 最缓上升法(least steep ascent,shallowest ascent) 2.3.2 本征向量/本征值跟踪法(eigenvector/eigenvalue following,EF。也称mode walking/mode following/Walking up valleys) 2.3.3 ARTn(activation-relaxation technique nouveau) 2.3.4 梯度极值法(Gradient extremal,GE) 2.3.5 约化梯度跟踪(reduced gradient following,RGF) 2.3.6 等势面搜索法(Isopotenial Searching) 2.3.7 球形优化(Sphere optimization) 2.4 全势能面扫描 3.过渡态相关问题 3.1 无过渡态的反应途径(barrierless reaction pathways) 3.2 Hammond-Leffler假设 3.2 对称性问题 3.3 溶剂效应 3.4 计算过渡态的建议流程 4.内禀反应坐标(intrinsic reaction coordinate,IRC) 5.IRC算法 5.1 最陡下降法(Steepest descent) 5.2 IMK方法(Ishida-Morokuma-Kormornicki) 5.3 Müller-Brown方法 5.4 GS(Gonzalez-Schlegel)方法 6.chain-of-states方法 6.1 Drag method方法 6.2 PEB方法(plain elastic band) 6.3 Elber-Karplus方法 6.4 SPW方法(Self-Penalty Walk) 6.5 LUP方法(Locally Updated planes) 6.6 NEB方法(Nudged Elastic Band) 6.7 DNEB方法(Double Nudged Elastic Band) 6.8 String方法 6.9 Simplified String方法 6.10 寻找过渡态的chain-of-state方法 6.10.1 CI-NEB方法 6.10.2 ANEBA方法(adaptive nudged elastic band approach) 6.11 chain-of-states方法的一些特点 6.12 高斯中opt关键字的path=M方法 6.13 CPK方法(Conjugate Peak Refinement) http://www.mdbbs.org/viewthread.php?tid=17170
3625 次阅读|0 个评论
议震级-频度经验公式中b值的计算方法
热度 1 qsqhopeiggcas 2011-6-5 04:52
1954 年 , 古登堡 和里克特,首先提出使用震级-频度的经验公式来描述世界各地区地震活动性的差异,这个公式的常用形式(简称 G-R 关系)为: lg N ( M )=ɑ- bM , 式中 N ( M ) 是以震级 M 为中心的小区间 ( M ± △M ) 在一定时期内发生地震的次数; ɑ 和 b 是常数, ɑ 表征在统计时间、区域内的地震活动水平 , b 值表示该地大小地震数的比例关系,大地震数目相对多时, b 值则小, b 值大小和该地区的介质强度以及应力大小有关。古登堡等对全球地震统计得到:在 环太平洋 岛弧地带 , ɑ 和 b 值均高;大陆内部, ɑ 、 b 值较低。 震级与频度关系 lg N = a - bM ,是地震学者研究地震活动性时引用最多的一个经验关系式,而且在地震预报和地震危险性分析中也得到了广泛的应用。在计算 b 值时,根据一定时空范围内的地震目录数据,采用最小二乘法或其它数学统计方法确定。 仔细推敲,以前常用的 b 值计算方法存在如下问题: 1 、 b 值的计算与统计的空间范围有关,选择的空间范围不同,得到的 b 值肯定不同。正确的方法应选择特定孕震区域范围内的地震事件,由于过去无法划分这样的孕震区域,故 b 值计算结果有很大的人为性。 2 、 b 值的计算与统计的时间起点有关,正确的方法应统计在一个特定的孕震区域内、一个孕震周期内的地震事件。由于过去无法确定其时间起点,故 b 值计算结果有很大的人为性。 鉴于 b 值计算结果的不确定性,在用 b 值进行强震预测时应小心从事。
个人分类: 科研随想|10825 次阅读|4 个评论
[转载]GROMACS特性与机群架构
yuanhui80 2011-6-4 12:44
在生物制药与纳米材料研究领域中,分子动力学模拟计算方法有着广泛的应用,其是在原子、分子水平上求解多体问题的重要计算机模拟方法,可以预测纳米尺度上的动力学特性。通过求解所有粒子的运动方程,分子动力学模拟法可以用于模拟与原子运动路径相关的基本过程。在模拟计算应用早期,由于受计算机技术的制约,这些模拟的模型尺寸和时间均受到了限制,模拟研究的范围也有很大的局限。上世纪80年代后,随着计算机技术的飞速发展,这些限制逐渐减少,激发了分子动力学研究的高潮,被广泛的应用于新型材料研制、化学工艺模拟、大分子生物制药等领域,成为微观模拟的一个主流技术。 而在这些应用软件中,GROMACS进行了大量的算法的优化,使其计算功能更强大。例如:在计算矩阵的逆时,算法的内循环会根据你自身系统的特点自动选择由C语言或Fortran来编译。GROMACS中对Altivec loops的计算,无论是在Linux还是Mac OS X.系统上,它都要比其它软件快3-10倍 ,而且GROMACS提高计算速度并不以牺牲计算精度为代价。 GROMACS软件的计算优势使其对运行平台有着独特的需求。首先,GROMACS是计算密集型的程序,浮点运算量很大。在通信网络不是瓶颈的情况下,CPU的利用率比较高,通常可以达到98%以上。但GROMACS程序对内存的要求很小,模拟一个原子数目为12000的系统,需要的内存大概为10MB。其次,GROMACS软件有两种应用方式,即传统MD方式和REMD方式。传统MD方式中,进程之间的通信比较频繁。使用高端的通信网络(Myrinet,Infiniband等)可以提高程序的并行加速比,提高并行计算的效率。REMD方式中,进程之间的通信量很小,使用千兆以太网就完全可以满足通信的要求,不必要使用高端的通信网络。并且,GROMACS软件运行时的输入文件和输出文件都不是很大,对I/O没有特别的要求。 根据GROMACS软件的应用特点,定制化的基于GROMACS软件的高性能集群方案。系统整体包括用于运算的计算节点、负责系统管理和外部接入的管理节点,和连接磁盘阵列提供网络共享文件系统的存储节点等模块。系统中的计算网络将所有节点通过千兆以太网或高端网络进行连接,管理网络配合机群中间件对机群实现统一的管理,用户同时可通过SKVM网络对系统实现远程控制管理。整套系统的节点数量可根据用户具体需求而定,具有较大弹性,面对软件的运行要求,系统节点是X86体系,可支持各种Linux操作系统,采用目前高性能计算机的主流架构,具有良好的普适性。 制定机群方案前对GROMACS软件的运行进行了大量的测试工作,结果显示,GROMACS软件的性能基本上和CPU主频成线性关系。对于用户来说,要使软件合理运行,需要找到一个性价比平衡点。在系统对GROMACS软件进行编译时,只需要指定使用MPI,就可以使用并行的GROMACS程序。但在相同系统环境下,编译器对软件性能也有直接的影响,通过测试,GCC编译器在此类应用中略胜一筹。 通常情况下,一个中等规模的GROMACS应用机群系统采用曙光TC4000A机柜,含有内部网络布线系统、散热系统、供电系统。计算节点采用曙光A610r-F服务器,配备2×Opteron2214双核CPU,4GB DDR2内存,73GB 热插拔SCSI硬盘,集成2个10/100/1000M以太网接口。该款产品做为计算节点可轻松应对软件对内存及I/O负荷的需求,同时该款双路双核产品表现出的优越计算性能可满足软件频繁、复杂的浮点运算需求。 整套系统中的所有运算节点和管理节点都挂接在管理网络中,通过光纤交换机与高端的磁盘阵列柜相连。在系统工作时,所有节点及I/O设备由管理网络进行统一调配,协调运行,极大的提高了运行效率。同时,系统中的所有运算节点通过计算网络相连,计算任务通过计算网络在各节点间进行分配。整套系统中的管理网络和计算网络均为千兆以太网,可轻松满足软件运行的工作带宽,保证网络工作的稳定性和安全性。
3081 次阅读|0 个评论
[转载]如何由某年现价GDP求不变价GDP
热度 1 wss333 2011-5-23 18:14
———————————————————————————— (转载 http://luoqing518.blog.163.com/blog/static/12729827200882795115381/ ) GDP可以分为现价GDP与不变价GDP,真实GDP等于现价GDP除以GDP平减指数,然而在统计年鉴中,并没有直接给出GDP平减指数以及计算方法,下面我们对GDP平减指数的计算方法作以简要介绍: GDP平减指数等于现价GDP除以不变价GDP,若1978年的指数为100,1979年的GDP指数为107.6,是指与1978年相比,按可比价计算,GDP增加了7.6%,1978年的GDP为3624.1,则按不变价计算,1979年的GDP等于3624.1乘以107.6等于3899.53,则1979年的平减指数为现价(1979)4038.2/3899.53=103.56,据此计算,则GDP平减指数及真实GDP如下表: 年份 现价GDP 指数(%) 不变价GDP 平减指数(%) 真实GDP 1978 3624.10 100.00 3624.10 100.00 3624.10 1979 4038.20 107.60 3899.53 103.56 3899.53 1980 4517.80 116.00 4203.96 107.47 4203.96 1981 4862.40 122.10 4425.03 109.88 4425.03 1982 5294.70 133.10 4823.68 109.76 4823.68 1983 5934.50 147.60 5349.17 110.94 5349.17 1984 7171.00 170.00 6160.97 116.39 6160.97 1985 8964.40 192.90 6990.89 128.23 6990.89 1986 10202.20 210.00 7610.61 134.05 7610.61 1987 11962.50 234.30 8491.27 140.88 8491.27 1988 14928.30 260.70 9448.03 158.00 9448.03 1989 16909.20 271.30 9832.18 171.98 9832.18   在一些计算中,一些文章喜换算换成1990年为100的不变价计算真实GDP,此方法其实是假定1990年的指数为100进行计算,例如,1990年的现价GDP=18547.9,1990年的指数为281.7,1996年的指数为544.1,则以1990=100,1996年的价格指数为544.1/281.7*100%=193.1,则1996年不变价的GDP为1854.79*193.1%=35815.99,则1996年平减指数为67884.6/35815.99*100%=185.9,如此计算,可以得到1990=100的GDP平减指数,其计算结果如下表: 年份 现价GDP 1978=100 1990=100 不变价GDP(1990=100) 平减指数 真实GDP 1978 3624.10 100.0 35.5 6584.2740555.04 6584.27 1979 4038.20 107.6 38.2 7084.67887857.00 7084.68 1980 4517.80 116.0 41.2 7637.757898 59.15 7637.76 1981 4862.40 122.1 43.3 8039.398616 60.48 8039.40 1982 5294.70 133.1 47.2 8763.668761 60.42 8763.67 1983 5934.50 147.6 52.4 9718.388498 61.06 9718.39 1984 7171.00 170.0 60.3 11193.26589 64.07 11193.27 1985 8964.40 192.9 68.5 12701.06464 70.58 12701.06 1986 10202.20 210.0 74.5 13826.97551 73.78 13826.98 1987 11962.50 234.3 83.2 15426.9541 77.54 15426.95 1988 14928.30 260.7 92.5 17165.20245 86.97 17165.20 1989 16909.20 271.3 96.3 17863.1355 94.66 17863.14 1990 18547.90 281.7 100.0 18547.9 100.00 18547.90 1991 21617.80 307.6 109.2 20253.22698 106.74 20253.23 1992 26638.10 351.4 124.7 23137.13901 115.13 23137.14 1993 34634.40 398.8 141.6 26258.08491 131.90 26258.08 1994 46759.40 449.3 159.5 29583.14331 158.06 29583.14 1995 58478.10 496.5 176.3 32690.92066 178.88 32690.92 1996 67884.60 544.1 193.1 35825.03511 189.49 35825.04 1997 74462.60 592.2 210.2 38992.07093 190.97 38992.07 1998 78345.20 638.5 226.7 42040.69193 186.36 42040.69 1999 82067.46 684.1 242.8 45042.77333 182.20 45042.77 2000 89468.10 738.8 262.3 48644.61668 183.92 48644.62 2001 97314.80 794.2 281.9 52292.30451 186.10 52292.30 2002 105172.34 860.1 305.3 56631.34111 185.71 56631.34   实际GDP,或者统计局以往公布的实际GDP,或者叫GDP1978不变价,1990不变价,都是有一个比较年份的,有了名义GDP和不变价格计算的GDP指数,你可以计算出以任何一年为标准的不变价格GDP,比如说现在IMF等都已经使用2000或者2005年不变价,目的在于和现在距离比较近,比较起来和现在的当年价不至于有太大的差异~~   至于应用方面,名义GDP基本上都是I(2)的,实际GDP几乎都是I(1)的,所以在时序分析的时候用GDP增长率就平稳了,简单而巧妙的处理~~ —————————————————————————————————— 最后一句没看明白I(2)I(1)是什么意思
13535 次阅读|1 个评论
[转载]MATLAB程序精确法求解反应谱
ChenboBlog 2011-5-22 11:33
引用网址 http://hi.baidu.com/linshibin/blog/item/7ef00789d134dad8fd1f1026.html 1. 反应谱的概念 反应谱是在1932年由M.A.Biot引入的,它是用来描述地面运动及其对结构的效应的一种实用工具。现在,反应谱作为地震工程的核心概念,提供了一种方便的手段概括所有可能的线性单自由度体系对地面运动的某个特定分量的峰值反应。它还提供了一种实用的方法,将结构动力学的知识应用于结构的设计以及建筑规范中侧向力条文的制定。 某个反应量的峰值作为体系的固有振动周期Tn,(或者循环频率fn)那样的相关参数的函数图形,称为该反应量的反应谱。每一个这样的图形针对的是有一个具有固定阻尼比的单自由度体系,多个具有不同阻尼比的这类图形联合起来就能覆盖实际结构中遇到的阻尼值范围。 2. 反应谱的计算 2.1反应谱数值计算方法 计算反应谱的方法有很多,又卷积计算法,傅立叶变换法,线性加速度法,中点加速度法,精确法等。 2.2精确法 本文中采用精确法做计算,该方法是N.C.Nigam和P.C.Jennings于1969年提出的,此法的出发点是把地面运动的加速度记录相邻点间的值用分段线性差值表示,从而获得地面运动的连续表达式。基于方程本身基础上进行,得到的结果全部采用精确的分析方法,没有任何的舍入误差,也不会产生任何的截断误差,所谓精确法就是指在这个意义上式精确的而然。正因为这种方法不会引起数值计算的误差,所以它有较高的精度,只要进行较少的运算就可以达到采用其他方法需要较多次运算才能达到的精度。 “由于在sohu博客上的文章发表后,陆续有问参考文献的邮件,因此将参考文献pdf版放上来供大家学习、参考,请勿用于商业目的。下载链接见 地震动的谱分析入门 http://hi.baidu.com/linshibin/blog/item/3b03ce3482f6aed6a3cc2b15.html 强震观测与分析原理 http://hi.baidu.com/linshibin/blog/item/4a02ad3acd7c692fb8998f01.html ” ResponSespectrumProgram(精确法求解) %%%%%%%%%%%%%%%%%%%%% 反应谱 精确法 程序 Begin With matlab6.5%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear % ***********读入地震记录*********** fid = fopen('CHI010.txt'); = fscanf(fid,'%g'); %count 读入的记录的量 Accelerate=9.8*Accelerate'; %单位统一为 m和s time=0:0.005:(count-1)*0.005; %单位 s % ***********精确法计算各反应*********** %初始化各储存向量 Displace=zeros(1,count); %相对位移 Velocity=zeros(1,count); %相对速度 AbsAcce=zeros(1,count); %绝对加速度 % ***********A,B矩阵*********** DampA= ; %三个阻尼比 TA=0.0:0.05:6; %TA=0.000001:0.02:6; %结构周期 Dt=0.005; %地震记录的步长 %记录计算得到的反应,MDis为某阻尼时最大相对位移,MVel为某阻尼 %时最大相对速度,MAcc某阻尼时最大绝对加速度,用于画图 MDis=zeros(3,length(TA)); MVel=zeros(3,length(TA)); MAcc=zeros(3,length(TA)); j=1; %在下一个循环中控制不同的阻尼比 for Damp= t=1; %在下一个循环中控制不同的结构自振周期 for T=0.0:0.05:6 Frcy=2*pi/T ; %结构自振频率 DamFrcy=Frcy*sqrt(1-Damp*Damp); %计算公式化简 e_t=exp(-Damp*Frcy*Dt); s=sin(DamFrcy*Dt); c=cos(DamFrcy*Dt); A=zeros(2,2); A(1,1)=e_t*(s*Damp/sqrt(1-Damp*Damp)+c); A(1,2)=e_t*s/DamFrcy; A(2,1)=-Frcy*e_t*s/sqrt(1-Damp*Damp); A(2,2)=e_t*(-s*Damp/sqrt(1-Damp*Damp)+c); d_f=(2*Damp^2-1)/(Frcy^2*Dt); %计算公式化简 d_3t=Damp/(Frcy^3*Dt); B=zeros(2,2); B(1,1)=e_t*((d_f+Damp/Frcy)*s/DamFrcy+(2*d_3t+1/Frcy^2)*c)-2*d_3t; B(1,2)=-e_t*(d_f*s/DamFrcy+2*d_3t*c)-1/Frcy^2+2*d_3t; B(2,1)=e_t*((d_f+Damp/Frcy)*(c-Damp/sqrt(1-Damp^2)*s)-(2*d_3t+1/Frcy^2)*(DamFrcy*s+Damp*Frcy*c))+1/(Frcy^2*Dt); B(2,2)=e_t*(1/(Frcy^2*Dt)*c+s*Damp/(Frcy*DamFrcy*Dt))-1/(Frcy^2*Dt); for i=1:(count-1) %根据地震记录,计算不同的反应 Displace(i+1)=A(1,1)*Displace(i)+A(1,2)*Velocity(i)+B(1,1)*Accelerate(i)+B(1,2)*Accelerate(i+1); Velocity(i+1)=A(2,1)*Displace(i)+A(2,2)*Velocity(i)+B(2,1)*Accelerate(i)+B(2,2)*Accelerate(i+1); AbsAcce(i+1)=-2*Damp*Frcy*Velocity(i+1)-Frcy^2*Displace(i+1); end MDis(j,t)=max(abs(Displace)); MVel(j,t)=max(abs(Velocity)); if T==0.0 MAcc(j,t)=max(abs(Accelerate)); else MAcc(j,t)=max(abs(AbsAcce)); end Displace=zeros(1,count);%初始化各储存向量,避免下次不同周期计算时引用到前一个周期的结果 Velocity=zeros(1,count); AbsAcce=zeros(1,count); t=t+1; end j=j+1; end % ***********PLOT*********** close all figure %绘制地震记录图 plot(time(:),Accelerate(:)) title('PEER STRONG MOTION DATABASE RECORD--CHI010') xlabel('time(s)') ylabel('acceleration(g)') grid figure %绘制位移反应谱 plot(TA,MDis(1,:),'-.b',TA,MDis(2,:),'-r',TA,MDis(3,:),':k') title('Displacement') xlabel('Tn(s)') ylabel('Displacement(m)') legend('ζ=0','ζ=0.05','ζ=0.1') grid figure %绘制速度反应谱 plot(TA,MVel(1,:),'-.b',TA,MVel(2,:),'-r',TA,MVel(3,:),':k') title('Velocity') xlabel('Tn(s)') ylabel('velocity(m/s)') legend('ζ=0','ζ=0.05','ζ=0.1') grid figure %绘制绝对加速度反应谱 plot(TA,MAcc(1,:),'-.b',TA,MAcc(2,:),'-r',TA,MAcc(3,:),':k') title('Absolute Acceleration') xlabel('Tn(s)') ylabel('absolute acceleration(m/s^2)') legend('ζ=0','ζ=0.05','ζ=0.1') grid figure %绘制标准加速度反应谱 M=max(abs(Accelerate)); %地震记录最大值 plot(TA,MAcc(1,:)/M,'-.b',TA,MAcc(2,:)/M,'-r',TA,MAcc(3,:)/M,':k') title('Normalized Absolute Acceleration') xlabel('Tn(s)') ylabel('Normalized absolute acceleration') legend('ζ=0','ζ=0.05','ζ=0.1') grid %%%%%%%%%%%%%%%%%%%%% End With matlab6.5%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
5284 次阅读|0 个评论
[转载]情侣的生日关系,太准了!
热度 1 zjzhang 2011-5-19 23:17
[转载]情侣的生日关系,太准了!
计算方法:例如: 女是11月"9"日生,男是10月"24"日生,则我们的差距是24-9=15个站。 或者 女生是20日生日,男生是1号生日,则我们差距是20-1=19个站。结果见图片哦。
个人分类: 文学|2106 次阅读|1 个评论
数值计算方法程序库
thomaschoo2011 2011-5-10 00:31
发信人: cangqiong (落叶乔木), 信区: NumComp 标 题: 数值计算方法程序库 发信站: BBS 水木清华站 (Tue Jan 8 12:58:31 2002) 摘录自彭桓武、徐锡申《数理物理基础》P391,不知道有人发过没有。 13.6 数值计算方法程序库 关于数值计算方法,包括本书(第4,13章以及其他处)讨论过的, 以及大量未提及的,目前大都有现成的标准的数值计算方法程序库可以 调用,甚至可以从互联网上下载,没有必要自己编程序。 文献《计算物理》(R.H. Landau, M.J.Paez,Computational Physics, Problem Solving with Computer, Wiley and Sons,New York,1997;$$15.8 15.9,15.12-15.14)有专门的一章介绍如何应用科学程序库和万维网来 获取所需的程序。 一些可资用的标准科学和数学库包括: LAPACK:线性代数程序包 SLATEC:综合数学和统计程序包 NETLIB:免费数学程序库的万维网衍生库 IMSL:国际数学与统计程序库 ESSL:工程与科学子程序库(IBM) DXML:高级数学程序库(DEC) NAG:数值算法组(UK Labs) BLAS:基本线性代数子程序(积木) 其内容涵盖有: 线性代数演算 矩阵运算 线性方程组的解 本征系统分析 插值、拟和 微分方程 根、零点和极值 随机数演算 统计函数 数值求积 该书并介绍了获取适用子程序的信息($$15.8,15.9),最后三节 ($$15.12-15.14)还列出了LAPACK,Netlib 和SLATEC的简短目录。 希望对大家有用 发信人: hansom (胖胖熊), 信区: NumComp 标 题: ..一些独立的程序库.. (转载) 发信站: BBS 水木清华站 (Wed Oct 18 21:56:56 2000) 【 以下文字转载自 New_board 讨论区 】 【 原文由 L41 所发表 】 一些独立的程序库 ----转自 http://www.math.psu.edu/dna/num_methods.html ADIFOR automatic differentiation of Fortran codes ALFPACK Legendre functions of first kind ARPACK large scale eigenvalue problems Aztec an iterative sparse linear solver package BLAS basic linear algebra subprograms CERNLIB CERN Program Library CMLIB NIST core math library DAEPAK differential algebraic equations DASPK* solution of systems of alg./diff. eqns (BDF/Krylov method, CM/F90/MPI) EDA exploratory data analysis EISPACK eigenvalues and eigenvectors FISHPAK FFT, separable elliptic pdes FLIB CHARPAK character/string manipulation GEOMPAK geometrical transformations RANPAK random number generation TIMPAK system date manipulation GSLIB GSLIB: Geostatistical Software Library and User's Guide" by C.V. Deutsch and A.G. Journel Oxford Univ. Press, New York, 1992 Harwell-Boeing sparse matrices (also Matrix Market) HPFlibrary HPF library in F90 HSL Harwell Subroutine Library INTLIB interval arithmetic IMSL Visual Numerics, Inc. ITPACK sparse matrices, iterative methods LAIPE parallel direct solvers (linear equations) LANCELOT large-scale optimization problems LAPACK linear algebra on shared memory machines LINALG some nonstandard solvers for linear algebra LINPACK linear algebra MPFUN a portable multiprecision package MINPACK nonlinear problems MINPACK-2 nonlinear problems MINUIT nonlinear problems Mtask parallel programming language (Windows NT/95) MUDPACK multigrid, linear elliptic PDEs NCARM NCAR's local math libraries Numerical Methods FORTRAN Programs, software supplement for Numerical Methods for Mathematics, Science Eng. by John Mathews Numerical Recipes also ftp and gopher (So is it buggy or not?) ODEPACK LSODE ODEs stiff/nonstiff, explicit/implicit methods ODE software of J. Cash PIM Parallel Iterative Solvers RANLIB random number generation (C, FORTRAN) ScaLAPACK MIMD version of LAPACK SCILIB a portable FORTRAN emulation of CRAY SCILIB SLATEC common mathematical library SLEIGN2 Sturm-Liouville problems SPARSKIT sparse matrices SPBLAS NIST Sparse BLAS SPHEREPACK spherical harmonics SPECFUN special functions STARPAC statistical data analysis TENSOR nonlinear problems (tensor methods) TLCPACK regridding (1-4D orthogonal grids) Templates iterative solution of linear systems (html book) TOMS algorithms from Comm. of the ACM UMFPACK sparse linear problems with iterative refinement
2885 次阅读|0 个评论
如何计算战略坐标
zilu85 2010-4-16 11:04
:我们以一篇公开发表的论文中的矩阵作为例子,说明战略坐标的计算方法。数据来自于邱均平 等 关于共被引分析方法的再认识和再思考 情报学报 2008 27(1):69 74 数字是二者同被引次数,仅作为说明计算方法用,结果不具有实际意义。 此处对角线的数据是邱老师原文中按照共现最大次数+1计算的。 王崇德 邱均平 罗式胜 蒋国华 赵红洲 梁立明 张琪玉 赖茂生 陈光祚 曾民族 侯汉清 焦玉英 王崇德 230.00 229.00 72.00 20.00 7.00 6.00 7.00 6.00 5.00 3.00 3.00 l 邱均平 229.00 230.00 l12 l7 9.00 24.00 l 6.00 lO 7.00 l 2.00 罗式胜 72.00 l12 l13 l5 2.00 lO 2.00 9.00 2.00 2.00 l O 蒋国华 20.00 l7 l5 3l 26.00 30.00 O l O O O O 赵红洲 7.00 9.00 2.00 26.00 27.00 3.00 l O l O O O 梁立明 6.00 24.00 lO 30.00 3.00 3l O O O O O O 张琪玉 7.00 l 2.00 O l O l48 30.00 40.00 9.00 l47 l9 赖茂生 6.00 6.00 9.00 l O O 30.00 32.00 3l l7 l7 9.00 陈光祚 5.00 lO 2.00 O l O 40.00 3l 4l 27.00 l4 l7 曾民族 3.00 7.00 2.00 O O O 9.00 l7 27.00 28.00 3.00 5.00 侯汉清 3.00 l l O O O l47 l7 l4 3.00 148.00 7.00 焦玉英 l 2.00 O O O O l9 9.00 l7 5.00 7.00 20.00 在下面的矩阵中做了修改,对角线上的数据用共现总次数代替了。 王崇德 邱均平 罗式胜 蒋国华 赵红洲 梁立明 张琪玉 赖茂生 陈光祚 曾民族 侯汉清 焦玉英 王崇德 359.00 229.00 72.00 20.00 7.00 6.00 7.00 6.00 5.00 3.00 3.00 1.00 邱均平 229.00 418.00 112.00 17.00 9.00 24.00 1.00 6.00 10.00 7.00 1.00 2.00 罗式胜 72.00 112.00 227.00 15.00 2.00 10.00 2.00 9.00 2.00 2.00 1.00 0.00 蒋国华 20.00 17.00 15.00 108.00 26.00 30.00 0.00 1.00 0.00 0.00 0.00 0.00 赵红洲 7.00 9.00 2.00 26.00 49.00 3.00 1.00 0.00 1.00 0.00 0.00 0.00 梁立明 6.00 24.00 10.00 30.00 3.00 73.00 0.00 0.00 0.00 0.00 0.00 0.00 张琪玉 7.00 1.00 2.00 0.00 1.00 0.00 256.00 30.00 40.00 9.00 147.00 19.00 赖茂生 6.00 6.00 9.00 0.00 0.00 0.00 30.00 126.00 31.00 17.00 17.00 9.00 陈光祚 5.00 10.00 2.00 0.00 1.00 0.00 40.00 31.00 147.00 27.00 14.00 17.00 曾民族 3.00 7.00 2.00 0.00 0.00 0.00 9.00 17.00 27.00 73.00 3.00 5.00 侯汉清 3.00 1.00 1.00 0.00 0.00 0.00 147.00 17.00 14.00 3.00 193.00 7.00 焦玉英 1.00 2.00 0.00 0.00 0.00 0.00 19.00 9.00 17.00 5.00 7.00 60.00 总计 359.00 418.00 227.00 108.00 49.00 73.00 256.00 126.00 147.00 73.00 193.00 60.00 聚类分析 SPSS classify Hierarchical cluster method: count chi-square furthest plot: dendrogram 结果如下: 根据聚类分析结果 标志每个对象的组别,见下图的最右边一列。 王崇德 邱均平 罗式胜 蒋国华 赵红洲 梁立明 张琪玉 赖茂生 陈光祚 曾民族 侯汉清 焦玉英 聚类分组 1 王崇德 359.00 229.00 72.00 20.00 7.00 6.00 7.00 6.00 5.00 3.00 3.00 1.00 D 2 邱均平 229.00 418.00 112.00 17.00 9.00 24.00 1.00 6.00 10.00 7.00 1.00 2.00 D 3 罗式胜 72.00 112.00 227.00 15.00 2.00 10.00 2.00 9.00 2.00 2.00 1.00 0.00 D 4 蒋国华 20.00 17.00 15.00 108.00 26.00 30.00 0.00 1.00 0.00 0.00 0.00 0.00 C 5 赵红洲 7.00 9.00 2.00 26.00 49.00 3.00 1.00 0.00 1.00 0.00 0.00 0.00 C 6 梁立明 6.00 24.00 10.00 30.00 3.00 73.00 0.00 0.00 0.00 0.00 0.00 0.00 C 7 张琪玉 7.00 1.00 2.00 0.00 1.00 0.00 256.00 30.00 40.00 9.00 147.00 19.00 A 8 赖茂生 6.00 6.00 9.00 0.00 0.00 0.00 30.00 126.00 31.00 17.00 17.00 9.00 B 9 陈光祚 5.00 10.00 2.00 0.00 1.00 0.00 40.00 31.00 147.00 27.00 14.00 17.00 B 10 曾民族 3.00 7.00 2.00 0.00 0.00 0.00 9.00 17.00 27.00 73.00 3.00 5.00 B 11 侯汉清 3.00 1.00 1.00 0.00 0.00 0.00 147.00 17.00 14.00 3.00 193.00 7.00 A 12 焦玉英 1.00 2.00 0.00 0.00 0.00 0.00 19.00 9.00 17.00 5.00 7.00 60.00 B 在excel中,按照聚类分组排序各行,如下图: 王崇德 邱均平 罗式胜 蒋国华 赵红洲 梁立明 张琪玉 赖茂生 陈光祚 曾民族 侯汉清 焦玉英 聚类分组 7 张琪玉 7.00 1.00 2.00 0.00 1.00 0.00 256.00 30.00 40.00 9.00 147.00 19.00 A 11 侯汉清 3.00 1.00 1.00 0.00 0.00 0.00 147.00 17.00 14.00 3.00 193.00 7.00 A 8 赖茂生 6.00 6.00 9.00 0.00 0.00 0.00 30.00 126.00 31.00 17.00 17.00 9.00 B 9 陈光祚 5.00 10.00 2.00 0.00 1.00 0.00 40.00 31.00 147.00 27.00 14.00 17.00 B 10 曾民族 3.00 7.00 2.00 0.00 0.00 0.00 9.00 17.00 27.00 73.00 3.00 5.00 B 12 焦玉英 1.00 2.00 0.00 0.00 0.00 0.00 19.00 9.00 17.00 5.00 7.00 60.00 B 4 蒋国华 20.00 17.00 15.00 108.00 26.00 30.00 0.00 1.00 0.00 0.00 0.00 0.00 C 5 赵红洲 7.00 9.00 2.00 26.00 49.00 3.00 1.00 0.00 1.00 0.00 0.00 0.00 C 6 梁立明 6.00 24.00 10.00 30.00 3.00 73.00 0.00 0.00 0.00 0.00 0.00 0.00 C 1 王崇德 359.00 229.00 72.00 20.00 7.00 6.00 7.00 6.00 5.00 3.00 3.00 1.00 D 2 邱均平 229.00 418.00 112.00 17.00 9.00 24.00 1.00 6.00 10.00 7.00 1.00 2.00 D 3 罗式胜 72.00 112.00 227.00 15.00 2.00 10.00 2.00 9.00 2.00 2.00 1.00 0.00 D 如果计算B组的密度,则只保留同组的(赖茂生,陈光祚,曾民族),删除其他各列: 赖茂生 陈光祚 曾民族 焦玉英 合计: 8 赖茂生 0.00 31.00 17.00 9.00 57.00 9 陈光祚 31.00 0.00 27.00 17.00 75.00 10 曾民族 17.00 27.00 0.00 5.00 49.00 12 焦玉英 9.00 17.00 5.00 0.00 31.00 把对角线的数字替换为0,求每一行的和(上图中的最右一列)。然后求这些和的均值,此处为53. 王崇德 邱均平 罗式胜 蒋国华 赵红洲 梁立明 张琪玉 侯汉清 合计 8 赖茂生 6.00 6.00 9.00 0.00 0.00 0.00 30.00 17.00 68.00 9 陈光祚 5.00 10.00 2.00 0.00 1.00 0.00 40.00 14.00 72.00 10 曾民族 3.00 7.00 2.00 0.00 0.00 0.00 9.00 3.00 24.00 12 焦玉英 1.00 2.00 0.00 0.00 0.00 0.00 19.00 7.00 29.00 均值 48.25 如果求B组的向心度,则删除同组的列,然后求每一行的和,这些和的均值就是B组的向心度,此处是48.25。 如此,求出每一组的向心度和密度,求各组的向心度和密度的均值,以此作为坐标的原点 A B C D 均值M(坐标的原点) 密度 53 向心度 48.25 具体坐标值: A的坐标 B的坐标 C的坐标 D的坐标 密度 A-密度均值 B-密度均值 向心度 A-向心度均值 B-向心度均值 最后的结果是这样的: 战略坐标用于共词分析,这里的数据则是同被引的数据,所以其对战略坐标的解释还需要慎重。下面的解释权当做戏说: 密度最高的是王崇德和邱均平,文献计量学,内部联系密切;但是向心度低,与其他研究题目不密切,或者不是中心性的课题, 向心度最高的是张琪玉和侯汉清,检索语言,很多学科都和他们有联系,但是从密度上看,研究课题的内部不是很密切,但是也高于其余两组。 蒋国华等人的研究题目内部联系也不是很密切,同时与其他研究题目关系也不密切;赖茂生等人的研究课题更接近中心一点,即与其他研究关系比较密切,同时,自身的密度也稍微高于蒋国华等人的研究领域。 切记,对应的是这些研究者的研究主题,而不是研究者本人。
个人分类: 生物医学文本挖掘|13620 次阅读|1 个评论
World Scientific出版的《国际计算方法杂志》被SCI收录
wanyuehua 2010-2-19 10:13
2004 年创刊的International Journal of Computational Methods《国际计算方法杂志》ISSN: 0219-8762,季刊,新加坡世界科学出版社(WORLD SCIENTIFIC PUBL CO PTE LTD, 5 TOH TUCK LINK, SINGAPORE, SINGAPORE, 596224)出版,2009年入选 Web of Science的Science Citation Index Expanded,目前在SCI数据库可以检索到该期刊2008年的第5卷1-4期到第6卷1-4期共66篇论文。 该刊是 EI 收录期刊, EI 从 2006 年开始收录, EI 共收录了该刊 2006-2009 年 122 篇论文。 66篇包括学术论文64篇、评论2篇。 66篇文章的主要国家分布:印度18篇,中国12篇,英国7篇,新加坡6篇,伊朗5篇,美国4篇,日本、马来西亚、巴基斯坦、泰国各3篇等。 中国学者2008-2009年在该期刊发表论文的主要单位有华中科技大学(HUAZHONG UNIV SCI TECHNOL )2篇、江苏大学(JIANGSU UNIV)2篇、香港城市大学(City Univ Hong Kong)1篇、天津大学(Tianjin Univ)1篇、华东交通大学(E China Jiaotong Univ)1篇、哈尔滨工业大学(Harbin Inst Technol)1篇、清华大学(Tsinghua Univ)1篇、西北工业大学(NW Polytech Univ)1篇、上海交通大学( Shanghai Jiao Tong Univ ) 1 篇。 66篇文章共被引用42次,其中2008年被引用2次,2009年被引用39次,2010年被引用1次,平均引用0.64次, H指数为2(有2篇文章每篇最少被引用2次)。 International Journal of Computational Methods《国际计算方法杂志》投稿指南: The journal is devoted to all aspects of modern computational methods including mathematical formulations and theoretical investigations; interpolations and approximation techniques; error analysis techniques and algorithms; fast algorithms and real-time computation; multi-scale bridging algorithms; adaptive analysis techniques and algorithms; implementation, coding and parallelization issues; novel and practical applications. The articles can involve theory, algorithm, programming, coding, numerical simulation and/or novel application of computational techniques to problems in engineering, science, and other disciplines related to computations. Examples of fields covered by the journal are: Computational mechanics for solids and structures, Computational fluid dynamics, Computational heat transfer, Computational inverse problem, Computational mathematics, Computational meso/micro/nano mechanics, Computational biology, Computational penetration mechanics, Meshfree methods, Particle methods, Molecular and Quantum methods, Advanced Finite element methods, Advanced Finite difference methods, Advanced Finite volume methods, High-performance computing techniques. 网址: http://www.worldscinet.com/ijcm/ijcm.shtml 编委会: http://www.worldscinet.com/ijcm/mkt/editorial.shtml 作者指南: http://www.worldscinet.com/ijcm/mkt/guidelines.shtml 在线投稿: http://www.worldscinet.com/ijcm/editorial/submitpaper.shtml
个人分类: SCI投稿|12746 次阅读|0 个评论
未来十年内的计算机是个啥样子?说说我的希望
yangxintie 2009-8-23 19:16
将来的计算机是啥样子? 不要说得太远,就说未来十年内我所希望的样子吧, 我心目中概括起来就是四个字:快、小、智、能。有些现在已经实现,有些正在实现 一 先说快,运算速度将由于提前进位的串行运算新算法而千百倍的提高   根据美国专家表示,新一代的超级电脑很可能在明年问世,其每秒浮点运算次数可高达1000兆次,千兆级电脑的运算能力相当于逾一万台桌上型电脑的总和,在普通个人电脑上得穷毕生时间才能完成的运算,在现今的超级电脑上大概得花5小时完成,若使用千兆级电脑则仅需2小时.但是所有现代计算机都是靠增加并行运算器的数量增加速度的,但是遇到很多问题并不能像切成豆腐块一样同时来烹炒,就需要很长的时间来进行串行运算。串行运算最麻烦的是进位,简单的诺依曼计算机靠移位全加来求和做乘法,需要的时间最长。进位和位数N的关系成ln(N)倍增长,70年代中国一个叫史丰收的孩子解决了此问题,就是把进位提前用判断的办法得出来,然后用十字交乘法把高位的乘法结果先输出出来。以乘法为基础,除法,开方,根式,以及对数,三角函数的结果都可以连续从高位到低位输出,这样就可以把计算机的计算器设计成串行的,同时有许多段落在计算机运算的加工链上进行处理,计算机实际和流水线一样了,先算数字的头部,后处理身子部分,最后处理尾巴。一节一节算出来。过去计算机教材一言九鼎,说串行计算方式落后缓慢,是没有考虑到新算法情况下的糊涂话,面对新算法,就对应有新的计算器设计,我们已经在一些计算器设计里面看到了通过判断提前进位的影子,但是计算器的设计理论不彻底颠覆,新理论下既有串行又有并行的新式计算器还将是遥遥无期,我们希望这个过程快一些,这就需要中国科学家加倍的努力。 我们并不指望每一家都能有一台像深蓝一样的计算机,但是比现有计算机数值计算速度及处理图像速度提高100倍并不是难事情了,这就是NVIDIA公司办得好事情,现在计算机计算器的瓶颈使得很多计算者眼光落在了显卡上面,因为显卡上面有几百个流处理器GPU可以代替计算器来CPU来使用,所以NVIDIA公司就给他配上了一个叫做裤褡(cuda)的软件,使得数值计算已经成百倍提高,尽管现在在一个城市里面还仅仅很少几个人能用这种技术来加速数值计算,但是手中银子不多又想多出成果的研究人员还是对他十分关心,可以说将来计算机一定会有新的在新串行算法基础上的计算器问世,比裤褡程序为基础的纯并行运算又会有百倍提高,深蓝一样的超级能力计算机走进普通研究所和实验室不是幻想。 二 再 说小,这首先归功于材料的改进而形成的高集成度。      纳米材料的使用使得科学家可以制造出世界上最小的计算机逻辑电路,也就是一个由单分子碳组成的双晶体管元件。这一成果将使未来的电脑芯片变得更小、传输速度更快、耗电量更少。   构计算机逻辑电路的双晶体管是碳纳米管,他比头发还细10万倍,根据摩尔定律,每18个月,集成电路中可容纳的晶体管数目会呈几何级增长,从而使计算机芯片的性能翻倍提高。在未来的10-15年间,由于硅的物理特性,目前普遍使用的硅晶体管制造技术将发展到极限,难以继续,到那时碳纳米管的时代将到来,它将使处理器的体积更小、能集成更多的晶体管,进一步提高计算机的性能。现有计算机将会追求更微型的晶体管,开发出功能强大的微晶片。这项突破可使未来的超级电脑只有指甲般大小。米粒大或者指甲盖大的计算机如同耳环和戒指一样戴在手上并不是不可能的。 然而,计算机并不仅仅是CPU和存储介质。但是鼠标和键盘由于人体工学的原因必须有一定的大小,现阶段至少需要一个触摸屏来代替,都是外围微设备的烦心事。所以就是手机大小的掌上宝,也不能做的太小,至少得留出手指头或者触笔分辨的大小来。 其次,我们可以注意到现在已经孕育着一场变革,新的计算机可以既没有屏幕,也没有触摸原件,信号输入可以借助光学图像进行。说到这里就要谈到计算机图像技术的开发,他已经使得战斗机上面有了电脑眼睛作为信息源的目标方位距离判断系统,其实这种技术转变一下,由两个摄像头和一台数字计算机组成的视频识别输入系统,利用分别放置在水平和垂直位置的两个摄像头来采集人手移动的图像序列,通过数字计算机的图像处理系统识别,最终得出人手所键入的信息。由此可以实现无键盘、无鼠标的输入操作,拥有较高的输入识别率,并且由于只需要两个普通摄像头,设备简单,成本低廉,便于维护更新。(详见专利CN1664755)所以利用摄像头(电脑眼)一秒钟25帧的判断速度,计算机也很容易判断手指敲在什么地方,手指头是什么姿势,或者给你更进一步判断你的口型表示说了些什么,你的眼睛表示了些什么,这些都可以作为信号进行输入以后,所以键盘和鼠标根本都是不需要的了,或者可以变成虚拟的,你随便在桌子上敲或者摸,只要通过约定的信号通知计算机这是敲键盘还是拖鼠标,计算机都会经过分析把你的要求办到。再加上输出部分不一定用屏幕,可以使用投影或者人机结合的神经输入系统,最差的也可以通过特殊眼镜输出高分辨率立体图像,所以计算机确实可以变成非常小。 三 未来的计算机最吸引人的一点应当是人工智能。   第五代计算机并不是一个新名词,泛指具有人工智能的新一代计算机,它具有推理、联想、判断、决策、学习等功能。计算机的发展将在什么时候进入第五代?是一个很难回答的问题,程序和系统都进化的很快,但是难就难在推理和思考这些人类基本的功能进展并不十分满意,到现在一些带有初级智能的软件,解一个几百个未知数交联的非线性都很困难。甚至一个常微分方程的特征值问题,也是并不那么容易解决的,何况现在的实际科学技术问题,动不动就要上偏微分方程组,人类的知识发展并不像原来所想像的那么快。尽管如此,我还是相信未来的计算机可以帮助人类分析问题,总结规律,学习规律和发展规律。 过去听说微软的盖茨有个愿望,把所有的人类知识课程都使用计算机软件进行归纳和演示,让人类学习再不困难,可是久等不至,也许知识爆炸的今天,编讲义比不上知识更新的速度。但是我还是希望有些人来铺垫这方面的工作,让知识获取不再困难。 假如我是高中学生,我希望计算机能够让我不那么累,计算机现在虽然能把高等数学里面吉米多维其习题集一提不落的做下来,但是他甚至不能为我讲一讲他高中题是怎么做的,尤其是现在注重启发式和分析问题解决问题能力,计算机就不能代替我或者帮助我进行此类锻炼,把我从题海战术的苦海中解救出来?或者更理想一些,如果计算机能够把这些习题变成类似魔兽或者仙剑传奇一类的游戏,让我寓教于乐该多好! 四,再说能,计算机应当成为一个家庭的信息中心,娱乐中心,健康中心,以及饮食烹调卫生等家务管理中心以及安全的防护中心。 这点可能大家比我知道的还多: 计算机的发展应当是和电视,高清的界限越来越模糊; 计算机和手机电话的界限也越来越模糊; 人人手里的手机大小的东西,应当既是通讯设备,也是照相,看电视,联网,定位,翻译,以及计算机终端。其实现在已经有了,但是后面需要更便捷,更便宜。 现在计算机上面连带的那么多讨厌的连接线也由于无线连接,蓝牙技术而变得非常简介,但是发挥的作用越来愈大,无线连接使得计算机和微波炉,电饭煲,电冰箱,洗衣机,空调,电暖,光线以及噪声消除,甚至安全防护的红外监控,摄像头监控都联系成了一个整体。 举个例子说: 如果你家有老人或者病人,在睡眠中计算机就可以通过无线网络把你的脉像,心电,脑电传输到监控中心,早上一起床,你家老人会得到寿星网络主持人的亲切问候和关心的健康建议。 如果您是年轻人,计算机帮助你干脆在家里上班,并且替你打理好公司的业务,把你的工作和其他部门有效连接,计算机在帮助你研讨艰深的问题的同时,又会在一定的时间内阻断你的工作,半逼迫的建议你打一场虚拟的乒乓球或者篮球,其实你根本用不着走出房门,液晶屏上面足够逼真的出现了你参加的篮球队或者羽毛球场地,你只要想象着挥拍子或者投篮并且出一身臭汗就行了。打乒乓球的东东我已经试过了,尽管还不够完美,还要通过一条传感器线联到主机上,但是我相信不远的将来几年,两个电脑眼就会代替这条讨厌的传感器引线,而我手里不仅可以拿乒乓球,也可以拿琵琶或者冬不拉了。 总而言之,这就是下面几十年内我所希望的计算机,他将走进千万家,给我们带来生活上的便利的同时,也会促进科学技术更快发展。
个人分类: 交叉科学|2537 次阅读|7 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-12 14:37

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部