高斯计算中优化不收敛对策

合集下载

优化算法的稳定性和收敛性的方法

优化算法的稳定性和收敛性的方法

优化算法的稳定性和收敛性的方法在计算机科学和工程领域,优化算法是一种重要的工具,用于解决各种问题的最优化。

然而,优化算法在实际应用中可能面临一些挑战,如稳定性和收敛性问题。

本文将介绍一些优化算法的稳定性和收敛性的方法,以帮助提高算法的性能和效果。

为了提高优化算法的稳定性,我们可以采取以下几种策略。

一是使用合适的初始值。

算法的初始值对于优化过程的稳定性至关重要,因此我们需要选择一个合适的初始值来启动算法。

通常,合理的初始值应该接近问题的最优解,以避免算法陷入局部最优解。

我们可以采用合适的步长或学习率。

步长或学习率决定了每次迭代中参数更新的大小,过大的步长可能导致算法不稳定,无法收敛,而过小的步长则可能导致算法收敛速度过慢。

因此,我们需要根据具体问题和算法的性质选择一个合适的步长或学习率。

我们还可以引入正则化项。

正则化项可以在目标函数中加入一些惩罚项,以避免过拟合和提高算法的稳定性。

正则化项可以有效减少参数的波动,从而提高算法的收敛性和稳定性。

为了改善优化算法的收敛性,我们可以尝试以下几种方法。

可以采用自适应的学习率。

自适应学习率可以根据优化过程中的参数更新情况来动态调整学习率,以提高算法的收敛速度和效果。

常用的自适应学习率算法包括Adagrad、RMSprop和Adam等。

我们可以使用优化算法的改进版本。

例如,传统的梯度下降算法可能在处理一些非凸优化问题时收敛速度较慢,因此可以尝试使用改进的梯度下降算法,如随机梯度下降(SGD)、批量梯度下降(BGD)和迷你批量梯度下降(MBGD)。

这些改进的算法可以更有效地更新参数并加快收敛速度。

合适地设置迭代次数也是提高算法收敛性的一个关键因素。

迭代次数的选择通常是一个平衡问题,过多的迭代次数可能导致算法过拟合,而迭代次数太少可能无法达到优化的要求。

因此,我们需要根据问题的复杂度和算法的效果选择一个合适的迭代次数。

除了以上方法,还有一些其他策略可以用于优化算法的稳定性和收敛性。

如何应对深度学习技术中的模型不收敛问题

如何应对深度学习技术中的模型不收敛问题

如何应对深度学习技术中的模型不收敛问题深度学习技术的快速发展为许多领域带来了革命性的进步,但与此同时,深度学习模型不收敛的问题也成为了许多研究者和开发者所面临的挑战。

在深度学习中,模型不收敛通常表示模型的训练过程过早停止或在训练过程中无法达到预期的性能。

本文将介绍一些常见的原因和解决方案,帮助读者有效地应对深度学习技术中的模型不收敛问题。

首先,模型不收敛的原因可以归结为两类:设计问题和训练问题。

在模型设计方面,一些常见的问题包括:模型的复杂度过高导致过拟合,模型的复杂度过低导致欠拟合,以及输入数据的特征选择不当。

针对这些问题,我们可以采取以下解决方案:1. 调整模型复杂度:通过增加或减少模型的层数、节点数或使用正则化技术,如L1或L2正则化,来调整模型的复杂度。

这可以帮助降低过拟合或欠拟合的风险。

2. 数据预处理:对输入数据进行适当的处理,如标准化、归一化或特征选择,以提供更好的输入数据质量。

这有助于减少数据中的噪声和冗余信息,提高模型的准确性。

在训练过程中,模型不收敛的原因可能包括:学习率设置不当,训练数据的分布问题,以及训练数据集的大小不足。

以下是一些解决方案:1. 调整学习率:学习率是训练过程中的重要参数,过大或过小都可能导致模型不收敛。

可以尝试使用自适应学习率算法,如Adam或RMSprop,或使用学习率衰减策略,如逐渐减小学习率。

2. 数据增强:如果训练数据集较小或样本不均衡,可以使用数据增强技术来扩充训练数据。

例如,在图像分类任务中,可以使用旋转、缩放或镜像等方法生成更多的训练样本,以增加模型的泛化能力。

3. 改进网络结构:尝试更深或更宽的网络结构,增加网络的容量以提高模型的表达能力。

此外,使用批正则化、残差连接等技术也可以帮助模型更快地收敛。

4. 梯度消失或爆炸问题:在较深的神经网络中,梯度消失或爆炸是一个常见的问题。

可以尝试使用恰当的激活函数,如ReLU或LeakyReLU,或使用梯度裁剪等技术来缓解这些问题。

高斯计算常见错误及解决方案

高斯计算常见错误及解决方案

GAUSSION计算常见错误及解决方案1. 自旋多重度错误2. 变量赋值为整数3. 变量没有赋值4. 键角小于等于0度,大于等于180度5. 分子描述后面没有空行6. 二面角判断错误,造成两个原子距离过近7. 分子描述一行内两次参考同一原子,或参考原子共线运行出错1. 自洽场不收敛 SCFa. 修改坐标,使之合理b. 改变初始猜 Guessc. 增加叠代次数SCFCYC=Nd. iop(5/13=1)2. 分子对称性改变a. 修改坐标,强制高对称性或放松对称性b. 给出精确的、对称性确定的角度和二面角c. 放松对称性判据 Symm=loosed. 不做对称性检查iop(2/16=1)3. 无法写大的Scratch文件RWFa. 劈裂RWF文件%rwf=loc1,size1,loc2,size2,……..,locN,-1b. 改变计算方法MP2=Direct可以少占硬盘空间c. 限制最大硬盘maxdisk=N GB4. FOPT出错原因是变量数与分子自由度数不相等。

可用POPT 或直接用OPT5. 优化过渡态只能做一个STEP 原因是负本征数目不对添加iop(1/11)=16. 组态相互作用计算中相关能叠代次数不够,增加叠代次数QCISD(Maxcyc=N)Default.Rou设置•在Scratch文件夹中的Default.Rou文件中设置G03程序运行的省缺参数:• -M- 200MW•-P- 4•-#- MaxDisk=10GB•-#- SCF=Conventional or Direct•-#- MP2=NoDirect or Direct•-#- OPTCYC=200•-#- SCFCYC=200•-#- IOPs 设置如iop(2/16=1)Default.Rou设置中的冲突•Default route: MaxDisk=2GB SCF=Direct MP2=Direct OPTCYC=200 SCFcyc=100 iop(2/16=1) iop(5/13=1)• ------------------• # ccsd/6-31G** opt• ------------------• L903/L905 and L906 can only do MP2.问题在于,MP2=Direct!去掉这个设置,CCSD的作业就能进行了。

高斯错误修正

高斯错误修正

收敛失败是很正常的事也是很头痛的事,在Gaussian98高级注释一文中提到以下几种做法:我经常用的是3/5/8/12,而且如果你是计算过渡金属,降低收敛标准你就得小心。

1. 在Guess关键字中使用Core,Huckel或Mix选项,试验不同的初始猜测。

2. 对开壳层体系,尝试收敛到同一分子的闭壳层离子,接下来用作开壳层计算的初始猜测。

添加电子可以给出更合理的虚轨道,但是作为普遍的经验规则,阳离子比阴离子更容易收敛。

选项Guess=Read定义初始猜测从Gaussian 计算生成的checkpoint文件中读取。

3. 另一个初始猜测方法是首先用小基组进行计算,由前一个波函得到用于大基组计算的初始猜测(Guess=Read自动进行)。

4. 尝试能级移动(SCF=Vshift)。

5. 如果接近SCF但未达到,收敛标准就会放松或者忽略收敛标准。

这通常用于不是在初始猜测而是在平衡结构收敛的几何优化。

SCF=Sleazy 放松收敛标准,Conver选项给出更多的控制。

6. 一些程序通过减小积分精度加速SCF。

对于使用弥散函数,长程作用或者低能量激发态的体系,必须使用高积分精度:SCF=NoVarAcc。

7. 尝试改变结构。

首先略微减小键长,接下来略微增加键长,接下来再对结构作一点改变。

8. 考虑使用不同的基组。

9. 考虑使用不同理论级别的计算。

这并不总是实用的,但除此之外,增加迭代数量总是使得计算时间和使用更高理论级别差不多。

10. 关闭DIIS外推(SCF=NoDIIS)。

同时进行更多的迭代( SCF=(MaxCycle=N) )。

11. 更多的SCF迭代( SCF(MaxCycle=N),其中N是迭代数)。

这很少有帮助,但值得一试。

12. 使用强制的收敛方法。

SCF=QC通常最佳,但在极少数情况下SCF=DM 更快。

不要忘记给计算额外增加一千个左右的迭代。

应当测试这个方法获得的波函,保证它最小,并且正好不是稳定点(使用Stable关键字)。

高斯中的优化

高斯中的优化

优化第一步:确定分子构型,可以根据对分子的了解通过GVIEW和CHEM3D等软件来构建,但更多是通过实验数据来构建(如根据晶体软件获得高斯直角坐标输入文件,软件可在大话西游上下载,用GVIEW可生成Z-矩阵高斯输入文件),需要注意的是分子的原子的序号是由输入原子的顺序或构建原子的顺序决定来实现的,所以为实现对称性输入,一定要保证第一个输入的原子是对称中心,这样可以提高运算速度。

我算的分子比较大,一直未曾尝试过,希望作过这方面工作的朋友能补全它。

以下是从本论坛,大话西游及宏剑公司上下载的帖子。

将键长相近的,如B12 1.08589B13 1.08581B14 1.08544键角相近的,如A6 119.66589A7 120.46585A8 119.36016二面角相近的如D10 -179.82816D11 -179.71092都改为一致,听说这样可以减少变量,提高计算效率,是吗?在第一步和在以后取某些键长键角相等,感觉是一样的。

只是在第一步就设为相等,除非有实验上的证据,不然就是纯粹的凭经验了。

在前面计算的基础上,如果你比较信赖前面的计算,那么设为相等,倒还有些依据。

但是,设为相等,总是冒些风险的。

对于没有对称性的体系,应该是没有绝对的相等的。

或许可以这么试试:先PM3,再B3LYP/6-31G.(其中的某些键长键角设为相等),再B3LYP/6-31G(放开人为设定的那些键长键角相等的约束)。

比如键长,键角,还有是否成键的问题,Gview看起来就是不精确,不过基本上没问题,要是限制它们也许就有很大的问题,能量上一般会有差异,有时还比较大如果要减少优化参数,不是仅仅将相似的参数改为一致,而是要根据对称性,采用相同的参数。

例如对苯分子分子指定部分如下:CC 1 B1C 2 B2 1 A1C 3 B3 2 A2 1 D1C 4 B4 3 A3 2 D2C 1 B5 2 A4 3 D3H 1 B6 2 A5 3 D4H 2 B7 1 A6 6 D5H 3 B8 2 A7 1 D6H 4 B9 3 A8 2 D7H 5 B10 4 A9 3 D8H 6 B11 1 A10 2 D9B1 1.395160B2 1.394712B3 1.395427B4 1.394825B5 1.394829B6 1.099610B7 1.099655B8 1.099680B9 1.099680B10 1.099761 B11 1.099604 A1 120.008632 A2 119.994165 A3 119.993992 A4 119.998457 A5 119.997223 A6 119.980770 A7 120.012795 A8 119.981142 A9 120.011343 A10 120.007997 D1 -0.056843 D2 0.034114 D3 0.032348 D4 -179.972926 D5 179.953248 D6 179.961852 D7 -179.996436 D8 -179.999514 D9 179.989175参数很多,但是通过对称性原则,并且采用亚原子可以将参数减少为:XX 1 B0C 1 B1 2 A1C 1 B1 2 A1 3 D1C 1 B1 2 A1 4 D1C 1 B1 2 A1 5 D1C 1 B1 2 A1 6 D1C 1 B1 2 A1 7 D1H 1 B2 2 A1 8 D1H 1 B2 2 A1 3 D1H 1 B2 2 A1 4 D1H 1 B2 2 A1 5 D1H 1 B2 2 A1 6 D1H 1 B2 2 A1 7 D1B0 1.0B1 1.2B2 2.2A1 90.0D1 60.0对于这两个工作,所用的时间为57s和36s,对称性为C01和D6H,明显后者要远远优于前者。

总结:高斯量化计算总结

总结:高斯量化计算总结

总结:高斯量化计算总结(必看)★★丫85丫(金币+2,VIP+0):谢谢关于自旋多重度定义: 多重度=2S+1, S=n*1/2,n为单电子数。

所以,关键是单电子的数目是多少。

当有偶数个电子时,例如O2,共有16个电子,那么单电子数目可能是0,即8个alpha 和8个beta电子配对,对应单重态,但是也可能是有9个α电子和7个β电子,那么能成对的是7对,还剩2个α没有配对,于是n=2,对应的是多重度3。

同理还可以有多重度5,7,9, ...一般而言,是多重度低的能量低,最稳定,所以,一般来说,偶数电子的体系多重度就是1。

但是也有例外,例如O2就是一个大家都知道的例子,它的基态是三重态,其单重态反而是激发态。

所以对于未知的体系,还是算几个保险一点,看哪个能量更低。

所以,总结一下,就是电子数目是偶数,未成对电子数目n=0,2,4,6,...自旋多重度是1,3,5,7,...电子数目是奇数,未成对电子数目n=1,3,5,7,...自旋多重度是2,4,6,8,...多数情况是多重度低的能量低,有时(特别是有“磁”性的时候,例如顺磁的O2,以及Fe啊什么的),可能会高多重度的能量低,所以需要都算算,看哪个能量更低。

关于赝势:简单来说,赝势就是不计算内层电子,而是把内层电子的贡献用一个势来描述,放在哈密顿里面。

适用于重元素。

赝势基组,实际上包括赝势和基组两个部分,内层电子采用赝势,即effective core potential (ECP),外层价电子采用一般的基组。

比如:LanL2DZ: D95V on first row, Los Alamos ECP plus DZ on Na-Bi.就是对第一行原子是D95V (这个是非赝势基组),对Na-Bi是使用一个叫做Los Alamos的有效核势加上一个DZ基组。

所以Lanl2dz就是对前面的原子全电子基组,对后面的原子是赝势基组。

(再次说明,量化里面,C,O那一行,算周期表的第一行)使用赝势的3个原因:1。

如何解决高斯化学计算中优化收敛的问题

如何解决高斯化学计算中优化收敛的问题

化学计算中帮助几何优化收敛的常用方法<来自小木虫>文/Sobereva First release: 2012-Oct-13几何优化,也就是寻找势能面极小点结构的过程。

量子化学计算中几何优化不收敛是个老生常谈的问题,在各种论坛里、群里都已经反复讨论过很多遍了,但是还是时常看到有人问,而且现有的讨论也都不怎么全面,所以觉得有必要撰文谈一下。

所谓几何优化不收敛,也就是始终,或者很难达到收敛要求。

通常会伴随着震荡行为,即受力、几何结构变化随优化步数呈现周期性趋势。

解决这种问题必须在结合经验和理论知识的前提下,通过考察实际收敛的趋势,尝试各种可能奏效处理办法。

本文列举一些常用的解决不收敛,也包括加速收敛的办法。

其中很多方法可以相互结合使用以达到更好的效果。

这里假定用户是用Gaussian,很多方法在其它程序中也可以类似地使用。

先说一下收敛标准。

Gaussian中判断几何优化收敛有四个标准,在默认收敛设定下,这四个标准是:最大受力<0.00045;方均根受力<0.00030;最大位移<0.00180;方均根位移<0.00120当这四个标准都满足了,达成四个YES,就宣告收敛。

另外,优化过程中只要受力小于预定的收敛限100倍,哪怕位移还没低于收敛限,则也算作已收敛。

这主要考虑到势能面非常非常缓的大的柔性分子,相对于这样尺度的分子,几何结构收敛到那么精确意义不大,放宽位移收敛限避免了收敛太慢。

有时候优化出错,不是因为几何收敛问题,而是因为每一步优化中连能量计算都没能完成。

优化也可能朝着明显错误的方向进行而导致难以收敛,这极有可能是理论方法、基组、电子态及其它诸多选项的设定不合理。

这些方面和优化不收敛问题本身没关系,所以不会在本文提到。

1 尝试不同的优化方法优化几何结构的方法有很多,以前我在《过渡态、反应路径的计算方法及相关问题》()当中详细介绍过的很多搜索过渡态的方法其实和搜索势能面极小点(即几何优化)的方法本质是一致的。

收敛问题的调整

收敛问题的调整

收敛问题的调整如果SCF计算收敛失败,你首先会采取哪些技巧呢?这里是我们强烈推荐的首选方法。

1. 在Guess关键字中使用Core,Huckel或Mix选项,试验不同的初始猜测。

2. 对开壳层体系,尝试收敛到同一分子的闭壳层离子,接下来用作开壳层计算的初始猜测。

添加电子可以给出更合理的虚轨道,但是作为普遍的经验规则,阳离子比阴离子更容易收敛。

选项Guess=Read定义初始猜测从Gaussian计算生成的checkpoint文件中读取。

3. 另一个初始猜测方法是首先用小基组进行计算,由前一个波函得到用于大基组计算的初始猜测(Guess=Read自动进行)。

4. 尝试能级移动(SCF=Vshift)。

5. 如果接近SCF但未达到,收敛标准就会放松或者忽略收敛标准。

这通常用于不是在初始猜测而是在平衡结构收敛的几何优化。

SCF=Sleazy 放松收敛标准,Conver选项给出更多的控制。

6. 一些程序通过减小积分精度加速SCF。

对于使用弥散函数,长程作用或者低能量激发态的体系,必须使用高积分精度:SCF=NoVarAcc。

7. 尝试改变结构。

首先略微减小键长,接下来略微增加键长,接下来再对结构作一点改变。

8. 考虑使用不同的基组。

9. 考虑使用不同理论级别的计算。

这并不总是实用的,但除此之外,增加迭代数量总是使得计算时间和使用更高理论级别差不多。

10. 关闭DIIS外推(SCF=NoDIIS)。

同时进行更多的迭代( SCF=(MaxCycle=N) )。

11. 更多的SCF迭代( SCF(MaxCycle=N),其中N是迭代数)。

这很少有帮助,但值得一试。

12. 使用强制的收敛方法。

SCF=QC通常最佳,但在极少数情况下SCF=DM更快。

不要忘记给计算额外增加一千个左右的迭代。

应当测试这个方法获得的波函,保证它最小,并且正好不是稳定点(使用Stable关键字)。

13. 试着改用DIIS之外其它方法(SCF=SD或SCF=SSD)。

Gaussian菜鸟常见问题分析

Gaussian菜鸟常见问题分析

Gaussian菜鸟常见问题分析1.检查是否有初始文件错误在命令行中加入%kJob L301 or%kJob L302如果通过则一般初始文件ok。

常见初级错误:a.自旋多重度错误b.变量赋值为整数c.变量没有赋值或多重赋值d.键角小于等于0度,大于等于180度e.分子描述后面没有空行f.二面角判断错误,造成两个原子距离过近g.分子描述一行内两次参考同一原子,或参考原子共线2.SCF(自洽场)不收敛则一般是L502错误省却情况做64个cycle迭代(G03缺省128 cycles)a.修改坐标,使之合理b.改变初始猜Guess=Huckel或其他的,看Guess关键词。

c.增加叠代次数SCFCYC=N(对小分子作计算时最好不要增加,很可能结构不合理)d.iop(5/13=1)这样忽略不收敛,继续往下做。

3.分子对称性改变a.修改坐标,强制高对称性或放松对称性b.给出精确的、对称性确定的角度和二面角。

如CH4的角度给到109.47122 c.放松对称性判据Symm=loose d.不做对称性检查iop(2/16=1)(最好加这个选项)iop(2/16=2)则保持新的对称性来计算4.Opt时收敛的问题a.修改坐标,使之合理b.增加叠代次数optcyc=N 5.优化过渡态,若势能面太平缓,则不好找到。

iop(1/8=10)默认30(下一个结构和该结构的差别0.3),可改成10。

如果每一步都要用到小的步长,应该加opt(notrustupdate)6.在CI(组态)方法中如QCISD(T),CCSD(T),CID方法中,省却最大循环50,若出错(L913错误) 解决方法:#P QCISD(maxcyc=N)注:N≤512 7.优化过渡态opt=TS(给出过渡态)opt=qst2(给出反应物和产物)opt=qst3(给出反应物和产物和过渡态)a.用G03时的出错opt=ts必须加FC(force constant)写法:opt=(TS,calcFc)or opt=(TS,calchffc)计算HF力常数,对QCISD,CCSD等方法用;or opt=(TS,modRedundant)(最好写这个)b.如果计算采用QCISD计算(不好计算FC)则写为QCISD opt=(TS,calcHFFC)(用HF计算FC)8.无法写大的Scratch文件RWF a.劈裂RWF文件%rwf=loc1,size1,loc2,size2,….,locN,-1 b.改变计算方法MP2=Direct可以少占硬盘空间c.限制最大硬盘maxdisk=N GB,*MB,有些系统写2GB会出错,可以写2000MB 9.FOPT出错原因是变量数与分子自由度数不相等。

高斯对不收敛问题的对策

高斯对不收敛问题的对策
如果以上过程不能收敛,则gaussian给出convergence failure的警告。
如果SCF计算收敛失败,你首先会采取哪些技巧呢?这里是我们强烈推荐的首选方法。
1 考虑使用更小的基组
由于一定的基组对应于一定精度和速度,所以更换基组并不在所有的情况下都适用。方法是首先用小基组进行计算,由前一个波函得到用于大基组计算的初始猜测(Guess=Read自动进行)。
3 放宽收敛标准
如果接近SCF但未达到,收敛标准就会放松或者忽略收敛标准。这通常用于不是在初始猜测而是在平衡结构收敛的几何优化。SCF=Sleazy放松收敛标准,Conver选项给出更多的控制。
4 尝试改变初始构型
首先略微减小键长,接下来略微增加键长,接下来再对结构作一点改变。
5 尝试能级移动Level shifting (SCF=Vshift)
scf=(noincfock,conver=11,maxcyc=1025) iop(5/22=20)
用以上的命令行将强制Gaussian采用EDIIS的算法。此算法计算量更大,但是更加稳定。在命令行里也增加了最大循环数,以增加收敛的到基态的可能性。
2. 检查是否有初始文件错误
常见初级错误:
8 一些程序通过减小积分精度加速SCF。对于使用弥散函数,长程作用或者低能量激发态的体系,必须使用高积分精度:SCF=NoVarAcc。
9 改变模型或方法
可以考虑改变模型方法。比较常见的方法有HF,GVB,MCSCF,CASSCF,MPn等。改变模型方法通常也会收敛性质。通常,精度更高的方法更难收敛。精度比较低的方法产生的计算结果可以作为高精度计算的初始猜测。考虑使用不同理论级别的计算。这并不总是实用的,但除此之外,增加迭代数量总是使得计算时间和使用更高理论级别差不多。

Gaussian程序分子几何结构优化中的收敛与对称性问题

Gaussian程序分子几何结构优化中的收敛与对称性问题

不同方法的比较
Reaction
CH4 F CH3 HF CH 3O CH 2OH SiH2 H2 SiH4 C2H5F C2H4 HF
Diels-Alder reaction Claisen reaction Ene reaction
Z-matrix internals
regular CalcFC QST3
6
4
6
12
9
9
11
7
11
16
12
15
56
11
23
38
8
15
fail
15
28
Redundant internals
CalcFC QST2
QST3
5
8
5
8
8
9
7
8
8
13
17
11
8
13
14
7
15
15
13
18
18
优化过渡态时可能遇到的问题及解决
问题
引起原因
解决方案
优化过程中Hessian (a)优化得到二级鞍点结构 矩阵负本征值过多 (b)Hessian矩阵有数值错误
IRC算例
%chk=freqhessian.chk #p UHF/6-31G(d) IRC=(maxpoints=10,rcfc,forward)
H3CO --> H2COH IRC
02 6 0.03104 0.63055 0. 8 0.03104 -0.73696 0. 1 -0.99138 -0.13555 0. 1 0.27839 1.12398 0.92614 1 0.27839 1.12398 -0.92614

如何解决高斯化学计算中优化收敛的问题

如何解决高斯化学计算中优化收敛的问题

化学计算中帮助几何优化收敛的常用方法<来自小木虫>文/Sobereva First release: 2012-Oct-13几何优化,也就是寻找势能面极小点结构的过程。

量子化学计算中几何优化不收敛是个老生常谈的问题,在各种论坛里、群里都已经反复讨论过很多遍了,但是还是时常看到有人问,而且现有的讨论也都不怎么全面,所以觉得有必要撰文谈一下。

所谓几何优化不收敛,也就是始终,或者很难达到收敛要求。

通常会伴随着震荡行为,即受力、几何结构变化随优化步数呈现周期性趋势。

解决这种问题必须在结合经验和理论知识的前提下,通过考察实际收敛的趋势,尝试各种可能奏效处理办法。

本文列举一些常用的解决不收敛,也包括加速收敛的办法。

其中很多方法可以相互结合使用以达到更好的效果。

这里假定用户是用Gaussian,很多方法在其它程序中也可以类似地使用。

先说一下收敛标准。

Gaussian中判断几何优化收敛有四个标准,在默认收敛设定下,这四个标准是:最大受力<0.00045;方均根受力<0.00030;最大位移<0.00180;方均根位移<0.00120当这四个标准都满足了,达成四个YES,就宣告收敛。

另外,优化过程中只要受力小于预定的收敛限100倍,哪怕位移还没低于收敛限,则也算作已收敛。

这主要考虑到势能面非常非常缓的大的柔性分子,相对于这样尺度的分子,几何结构收敛到那么精确意义不大,放宽位移收敛限避免了收敛太慢。

有时候优化出错,不是因为几何收敛问题,而是因为每一步优化中连能量计算都没能完成。

优化也可能朝着明显错误的方向进行而导致难以收敛,这极有可能是理论方法、基组、电子态及其它诸多选项的设定不合理。

这些方面和优化不收敛问题本身没关系,所以不会在本文提到。

1 尝试不同的优化方法优化几何结构的方法有很多,以前我在《过渡态、反应路径的计算方法及相关问题》()当中详细介绍过的很多搜索过渡态的方法其实和搜索势能面极小点(即几何优化)的方法本质是一致的。

高斯计算中优化不收敛对策

高斯计算中优化不收敛对策

【分享】高斯对不收敛问题的对策首先,我们必须理解收敛是什么意思。

在自洽场(SCF)计算中,自洽循环中,首先产生一个轨道占据的初始猜测,1)然后根据此轨道占据构造电荷密度和哈密顿量。

2)对角化哈密顿量,得到新的轨道能级和占据。

3)产生新的电荷分布和哈密顿量,重复步骤2)经过一定次数的循环后,某次循环前和循环后的电荷密度差别小于一定的标准,我们称之为收敛。

如果以上过程不能收敛,则gaussian给出convergence failure的警告。

如果SCF计算收敛失败,你首先会采取哪些技巧呢?这里是我们强烈推荐的首选方法。

1 考虑使用更小的基组由于一定的基组对应于一定精度和速度,所以更换基组并不在所有的情况下都适用。

方法是首先用小基组进行计算,由前一个波函得到用于大基组计算的初始猜测(Guess=Read自动进行)。

2 增加最大循环步数Gaussian默认的最大循环步数为64 (SCF=DM或SCF=QC方法则为512),如果循环次数超过这个数目则会汇报convergence failure。

在一定的情况下,不收敛的原因仅仅是因为最大循环步数不够。

可以通过设置maxcyc来增大最大循环步数。

更多的SCF迭代(SCF(MaxCycle=N),其中N是迭代数)。

这很少有帮助,但值得一试。

3 放宽收敛标准如果接近SCF但未达到,收敛标准就会放松或者忽略收敛标准。

这通常用于不是在初始猜测而是在平衡结构收敛的几何优化。

SCF=Sleazy放松收敛标准,Conver选项给出更多的控制。

4 尝试改变初始构型首先略微减小键长,接下来略微增加键长,接下来再对结构作一点改变。

5 尝试能级移动Level shifting (SCF=Vshift)如果不收敛的原因是波函数的震荡行为,通常是因为在相近的能量上的泰的混合。

对于这种情况,我们可以采用level shifting的方法。

Level shifting的含义是人工的升高非占据轨道的能级,以防止和最高占据轨道之间的混合,以达到收敛的目的。

(精编资料推荐)scf不收敛和几何构型优化不收敛问题的解决 来自小木虫总结

(精编资料推荐)scf不收敛和几何构型优化不收敛问题的解决 来自小木虫总结

首先要分清scf不收敛和几何构型优化不收敛:scf不收敛指的是自洽场叠代不收敛(什么?没听说过什么叫自洽场?那还是回去学习些量化基础知识再开展计算吧),可以认为是对指定结构的波函数不断优化的过程,是为了找到这个某个指定结构下能量最低的波函数,而几何构型优化是对结构的优化的过程,是为了找到某个指定的组分下能量极小结构(注意,不一定是能量最小结构)。

在量子化学计算的几何构型优化中,每一步的几何构型优化都包含的很多次的scf计算。

1、scf不收敛的解决方案。

(1) 可以加大scf的循环次数,默认的循环次数是128次,通过scf=(maxcycle=n)来设置最大循环次数n。

建议不要超过512,更多的循换没有必要。

(2) 如果加大循环次数不管用,在分子有对称性的情况下,使用scf=dsymm关键词来强制密度对称,有时可以收敛。

另外,此关键词很多时候对"scf is confused”这种错误很管用。

(3) 使用scf=symm关键词,使用的前提同上,有时可以收敛。

(4) 如果(2)(3)两步都不行,可以将对称的分子中的某几个原子的位置微调,使分子丧失对称性。

这等效于nosymm关键词,但个人经验,这种方式比nosymm好用的多。

(5) 如果还不行,只能拿出杀手锏了,就是使用qc,但不建议直接使用,而是使用xqc关键词,比如scf=(maxcycle=80,xqc),意思是如果scf正常计算(dc)在80个循环之内不收敛才进行昂贵的qc计算,因为scf不收敛多数在几个优化的过程中出现,无法判断哪一步优化的时候会出现scf不收敛,所以用xqc比纯粹使用qc要省时的多。

(6) 中级用户可以在输入文件的井号“#”开头那一行井号后面加上字母"p"来输出更多的信息,其中就有自洽场叠代的信息,分析原因可能会对采用什么方法提供指导。

(7) 前面有虫子提到一个有用的方案但没说清楚,我这里补充一下:如果用用小基组计算,scf可以收敛,那么保存好检查点文件,换成大基组的时候从检查点文件中读取初始猜测(使用guess=read关键词),有时可以算过去。

高斯使用中的问题汇总

高斯使用中的问题汇总

⾼斯使⽤中的问题汇总如何从下⾯的Gaussian输出⽂件中找出轨道系数及轨道能!!(新⼿多谢),请帮忙标出来求助]如何从下⾯的Gaussian输出⽂件中找出轨道系数及轨道能!!(新⼿多谢),请帮忙标出来The electronic state is 1-A1.Alpha occ. eigenvalues -- -20.58265 -11.33946 -1.39265 -0.87259 -0.69715 Alpha occ. eigenvalues -- -0.63950 -0.52294 -0.44073Alpha virt. eigenvalues -- 0.13573 0.24842 0.33338 0.37329 0.73660 Alpha virt. eigenvalues -- 0.80783 0.84685 0.94689 1.10445 1.10700 Alpha virt. eigenvalues -- 1.13937 1.27145 1.33529 1.62050 1.78192 Alpha virt. eigenvalues -- 1.79416 1.99239 2.18347 2.23684 2.45514 Alpha virt. eigenvalues -- 2.64513 2.87165 2.97616 3.27576 4.09792 Alpha virt. eigenvalues -- 4.47637Molecular Orbital Coefficients1 2 3 4 5(A1)--O (A1)--O (A1)--O (A1)--O (B2)--O EIGENVALUES -- -20.58265 -11.33946 -1.39265 -0.87259 -0.697151 1 C 1S 0.00000 0.99566 -0.11060 -0.16262 0.000002 2S 0.00047 0.02675 0.20981 0.33995 0.000003 2PX 0.00000 0.00000 0.00000 0.00000 0.000004 2PY 0.00000 0.00000 0.00000 0.00000 0.420175 2PZ -0.00007 0.00066 0.17259 -0.18451 0.000006 3S -0.00024 -0.00743 0.08051 0.31309 0.000007 3PX 0.00000 0.00000 0.00000 0.00000 0.000008 3PY 0.00000 0.00000 0.00000 0.00000 0.157609 3PZ -0.00048 0.00135 -0.01160 -0.07970 0.0000010 4XX -0.00002 -0.00272 -0.01628 -0.01333 0.0000011 4YY -0.00006 -0.00202 -0.01365 0.03019 0.0000012 4ZZ -0.00074 -0.00123 0.03302 -0.00166 0.0000013 4XY 0.00000 0.00000 0.00000 0.00000 0.0000014 4XZ 0.00000 0.00000 0.00000 0.00000 0.0000015 4YZ 0.00000 0.00000 0.00000 0.00000 -0.0139416 2 O 1S 0.99472 -0.00038 -0.19672 0.08889 0.0000017 2S 0.02094 0.00025 0.44184 -0.20351 0.0000018 2PX 0.00000 0.00000 0.00000 0.00000 0.0000019 2PY 0.00000 0.00000 0.00000 0.00000 0.3212220 2PZ -0.00153 -0.00029 -0.13537 -0.14216 0.0000021 3S 0.00436 -0.00058 0.37895 -0.27048 0.0000022 3PX 0.00000 0.00000 0.00000 0.00000 0.0000023 3PY 0.00000 0.00000 0.00000 0.00000 0.1797624 3PZ 0.00006 0.00108 -0.04718 -0.06799 0.0000025 4XX -0.00418 0.00015 -0.00022 -0.00041 0.0000026 4YY -0.00383 -0.00011 -0.00073 -0.00413 0.0000027 4ZZ -0.00356 -0.00019 0.01969 0.00906 0.0000028 4XY 0.00000 0.00000 0.00000 0.00000 0.0000029 4XZ 0.00000 0.00000 0.00000 0.00000 0.0000030 4YZ 0.00000 0.00000 0.00000 0.00000 -0.0233931 3 H 1S -0.00002 -0.00020 0.03017 0.17902 0.1908232 2S -0.00013 0.00210 -0.00537 0.06479 0.1202633 4 H 1S -0.00002 -0.00020 0.03017 0.17902 -0.1908234 2S -0.00013 0.00210 -0.00537 0.06479 -0.120266 7 8 9 10(A1)--O (B1)--O (B2)--O (B1)--V (A1)--V EIGENVALUES -- -0.63950 -0.52294 -0.44073 0.13573 0.248421 1 C 1S 0.01942 0.00000 0.00000 0.00000 -0.122122 2S -0.06075 0.00000 0.00000 0.00000 0.148963 2PX 0.00000 0.32517 0.00000 0.40259 0.000004 2PY 0.00000 0.00000 -0.19811 0.00000 0.000005 2PZ -0.37597 0.00000 0.00000 0.00000 -0.210866 3S 0.03971 0.00000 0.00000 0.00000 1.980967 3PX 0.00000 0.21231 0.00000 0.71124 0.000008 3PY 0.00000 0.00000 -0.04477 0.00000 0.000009 3PZ -0.08856 0.00000 0.00000 0.00000 -0.7497710 4XX 0.00549 0.00000 0.00000 0.00000 -0.0027311 4YY 0.02734 0.00000 0.00000 0.00000 -0.0126512 4ZZ -0.01933 0.00000 0.00000 0.00000 -0.0045913 4XY 0.00000 0.00000 0.00000 0.00000 0.0000014 4XZ 0.00000 0.03558 0.00000 -0.03288 0.0000015 4YZ 0.00000 0.00000 0.06035 0.00000 0.00000Sample Text相关回复:作者: lixiaona158 发布⽇期: 2008-04-03EIGENVALUES 后⾯的数字就是这个轨道对应的能量,但是它的单位是HF,⼀般使的时候需要换成电⼦福特,⽤这个系数乘27.2116就可以了。

Hspice的收敛问题以及解决方法

Hspice的收敛问题以及解决方法

Hspice收敛问题在仿真一个analog或者数模混合系统时,电路的规模不一定很大,大概100~200个甚至几十个MOS管构成的电路,电路就可能有不少反馈的子电路。

于是,电路直流工作点常常不收敛。

Hspice仿真电路不收敛,说白了就是计算机解矩阵解不出来了,也就是得不到一组解。

我们可以用许多方法解决不收敛,比如尽量减少电路的结点数;将VDD变成一个线性源(慢慢变到最大电压);设置ITL1=9000(即将直流收敛叠代次数大大增加);减少用来得到很大电阻的串连MOS管的数量;采用nodeset技术给某些结点设置初值等等。

可是在不同的corner(比如fs 、sf 、ff、ss、tt)下仍有可能使得整个电路的直流工作点不收敛。

一、不收敛的可能原因1、Hspice软件的计算上的问题Hspice的计算方法和计算精确度方面都可能存在使得仿真不收敛,在以下的解决方法中,换算法以及更改options的参数设置都是根据这一点来的。

一般说来,这样的不收敛情况占绝大多数。

2、Model的问题比如产生负的电导(在bandgap设计中遇到过负电阻的情况),或者模型不连续性造成。

3、电路本身问题比如网表不完整,有悬空节点;反馈不正确(不一定都不收敛,Hspice的parser 部分对这种情况只给warning,不给error message)等等。

电路本身的问题属于设计上的,只能自己分析。

对于Hspice运行通过,功能性能都过的去,一般多运行些corner 情况, worstcase情况或者做 MonteCaro分析,有问题的话应该可以抓出,没问题的话,流片后出问题概率也不大。

二、解决方法1、换个算法Hspice提供两种基本算法,Gear和Trap。

学过数值分析的应该明白这两种解方程的方法。

默认值是Trap,遇到不收敛问题一般先换个算法看看,更改为Gear.算法的方法是加一个: .options method=gear,不过这个换算法能解决的情况不是很多。

FLOTHERM不收敛原因与对策

FLOTHERM不收敛原因与对策

Flotherm 求解不收敛的原因和对策1、求解收敛的判断Flotherm求解器在仿真计算时,主要计算五个量:流场中的X、Y 和Z 方向的空气流速、空气压力;温度场中各点的温度。

求解器在进行迭代时,如果相邻的两次迭代中,这五个参数中的那一个变化率小于0.5%,系统就认为该参数收敛了。

(当然,收敛条件可以改变),只有当这五个参数全部收敛后,计算才结束,否则,系统会继续迭代。

Flotherm模型中,可以建立一些监控点,这些监控点在求解时,会反映随着时间(或迭代)的进行,上述五个量的变化情况。

一般地,只有求解收敛了,计算的结果才有意义;但由于Flotherm 对收敛的判定较严格,我们可以认为,在收敛曲线中,当残余量小于10,且监控点中的参数基本不变时,也认定计算的结果有意义。

2、求解中的一些控制参数控制求解的参数主要包括:求解器、求解步长(Flase Time Step)、内部迭代数(Inner itreations)和外部迭代数(Outer itreations)。

Flotherm中,根据算法的不同,有三种求解器:Segregated、Segregated Conjugate Residual 和Multe Grid。

通常我们就用系统默认的Segregated Conjugate Residual,如果为了加快收敛速度,可以选用Multe Grid。

求解步长(Flase Time Step)用在动量方程和能量方程中控制迭代时五种参数的变化,其影响就象阻尼,阻尼越大,两次迭代时的变化就越小。

而步长越大,阻尼就越小;步长越小,阻尼就越大;步长非常大,就没有阻尼;步长非常小,求解就没有变化。

它们的定义是:强迫对流:步长=1/2 的机箱(柜)平均尺寸/风机的最大速度;自然对流:步长=1/10 的机箱(柜)平均尺寸/估算的空气自然对流速度;一般地,使用系统自动(Automatic)计算的值就足够,也可以自己控制。

转:解决SCF不收敛问题的方法

转:解决SCF不收敛问题的方法

转:解决SCF不收敛问题的⽅法解决SCF不收敛问题的⽅法⽂/Sobereva(3)First release: 2010-May-17 Last update: 2016-Feb-81 前⾔量⼦化学计算离不开SCF(⾃洽场)迭代,如半经验⽅法、HF、DFT等。

在SCF迭代中,由Fock矩阵F对⾓化获得新的系数矩阵C和轨道能{ε},然后构造密度矩阵D=C'C'^(T),其中C'为不含虚轨道的C矩阵,再由D构造新的Fock矩阵,反复进⾏直到收敛,可以写为F_(1)->C_(1)->D_(1)->F_(2)->C_(2)->D_(2)...。

收敛判据不是唯⼀的,⽐如Gaussian中⽤的判据是当前步与上⼀步的密度矩阵元变化量的最⼤值和⽅均根(RMS)以及能量的变化,当数值都⼩于⼀定范围就认为已经收敛了。

默认判据和设定下多数情况在25步以内能达到收敛。

但慢收敛甚⾄完全不能收敛的情况是经常会遇到的。

常见的是迭代后期能量随迭代呈现震荡,直到达到默认的最⼤步数仍未收敛。

也可能能量虽然震荡但总趋势是慢慢降低的,⼀直迭代下去能收敛,但震荡⾏为明显拖慢了收敛速度。

也可能震荡的规律性不显著,迭代过程能量曲线看上去有随机性,但就是很难达到收敛限。

不收敛、难收敛情况的出现有很多数值巧合因素,但有些情况不好收敛是众所周知的,例如:基组含弥散函数、体系处于明显的⾮平衡构型、前线区域轨道能级密集、HOMO-LUMO能隙较⼩(过渡⾦属化合物、成键⽅式古怪等静态相关较强体系中容易出现此情况)、限制性开壳层(RO)计算。

⼈们提出过⼀些⽅案加速收敛或试图解决不收敛,如DIIS、阻尼⽅法、温度展宽、能级移动、⼆次收敛⽅法等。

主流的量化程序,如Gaussian、ORCA中默认就会使⽤⼀部分这样的帮助收敛。

⽽这些主流的量化程序为了加速SCF计算耗时,会引⼊⼀些数值近似,⽐如⼀开始先默认⽤较低的DFT积分格点、忽略数值较⼩的积分、Incremental fock⽅式加速Fock矩阵的构建等等,这些近似有时候会阻碍收敛。

不收敛的解决方案

不收敛的解决方案

不收敛的解决方案首先要分清scf不收敛和几何构型优化不收敛:scf不收敛指的是自洽场叠代不收敛(什么?没听说过什么叫自洽场?那还是回去学习些量化基础知识再开展计算吧!),可以认为是对指定结构的波函数不断优化的过程,是为了找到这个某个指定结构下能量最低的波函数,而几何构型优化是对结构的优化的过程,是为了找到某个指定的组分下能量极小结构(注意,不一定是能量最小结构)。

在量子化学计算的几何构型优化中,每一步的几何构型优化都包含的很多次的scf计算。

1、scf不收敛的解决方案。

(1) 可以加大scf的循环次数,默认的循环次数是128次,通过scf=(maxcycle=n)来设置最大循环次数n。

建议不要超过512,更多的循换没有必要。

(2) 如果加大循环次数不管用,在分子有对称性的情况下,使用scf=dsymm关键词来强制密度对称,有时可以收敛。

另外,此关键词很多时候对"scf is confused”这种错误很管用。

(3) 使用scf=symm关键词,使用的前提同上,有时可以收敛。

(4) 如果(2)(3)两步都不行,可以将对称的分子中的某几个原子的位置微调,使分子丧失对称性。

这等效于nosymm关键词,但个人经验,这种方式比nosymm好用的多。

(5) 如果还不行,只能拿出杀手锏了,就是使用qc,但不建议直接使用,而是使用xqc关键词,比如scf=(maxcycle=80,xqc),意思是如果scf正常计算(dc)在80个循环之内不收敛才进行昂贵的qc计算,因为scf不收敛多数在几个优化的过程中出现,无法判断哪一步优化的时候会出现scf不收敛,所以用xqc比纯粹使用qc要省时的多。

(6) 中级用户可以在输入文件的井号“#”开头那一行井号后面加上字母"p"来输出更多的信息,其中就有自洽场叠代的信息,分析原因可能会对采用什么方法提供指导。

(7) 前面有虫子提到一个有用的方案但没说清楚,我这里补充一下:如果用用小基组计算,scf可以收敛,那么保存好检查点文件,换成大基组的时候从检查点文件中读取初始猜测(使用guess=read关键词),有时可以算过去。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

【分享】高斯对不收敛问题的对策首先,我们必须理解收敛是什么意思。

在自洽场(SCF)计算中,自洽循环中,首先产生一个轨道占据的初始猜测,1)然后根据此轨道占据构造电荷密度和哈密顿量。

2)对角化哈密顿量,得到新的轨道能级和占据。

3)产生新的电荷分布和哈密顿量,重复步骤2)经过一定次数的循环后,某次循环前和循环后的电荷密度差别小于一定的标准,我们称之为收敛。

如果以上过程不能收敛,则gaussian给出convergence failure的警告。

如果SCF计算收敛失败,你首先会采取哪些技巧呢?这里是我们强烈推荐的首选方法。

1 考虑使用更小的基组由于一定的基组对应于一定精度和速度,所以更换基组并不在所有的情况下都适用。

方法是首先用小基组进行计算,由前一个波函得到用于大基组计算的初始猜测(Guess=Read自动进行)。

2 增加最大循环步数Gaussian默认的最大循环步数为64 (SCF=DM或SCF=QC方法则为512),如果循环次数超过这个数目则会汇报convergence failure。

在一定的情况下,不收敛的原因仅仅是因为最大循环步数不够。

可以通过设置maxcyc来增大最大循环步数。

更多的SCF迭代(SCF(MaxCycle=N),其中N是迭代数)。

这很少有帮助,但值得一试。

3 放宽收敛标准如果接近SCF但未达到,收敛标准就会放松或者忽略收敛标准。

这通常用于不是在初始猜测而是在平衡结构收敛的几何优化。

SCF=Sleazy放松收敛标准,Conver选项给出更多的控制。

4 尝试改变初始构型首先略微减小键长,接下来略微增加键长,接下来再对结构作一点改变。

5 尝试能级移动Level shifting (SCF=Vshift)如果不收敛的原因是波函数的震荡行为,通常是因为在相近的能量上的泰的混合。

对于这种情况,我们可以采用level shifting的方法。

Level shifting的含义是人工的升高非占据轨道的能级,以防止和最高占据轨道之间的混合,以达到收敛的目的。

在Gaussian中此方法的关键词为SCF=Vshift6 使用强制的收敛方法SCF=QCSCF=QC通常最佳,但在极少数情况下SCF=DM更快。

此关键字将大大增加计算时间,但是收敛的机会更大。

不要忘记给计算额外增加一千个左右的迭代。

应当测试这个方法获得的波函,保证它最小,并且正好不是稳定点(使用Stable关键字)。

7 对开壳层体系,尝试收敛到同一分子的闭壳层离子,接下来用作开壳层计算的初始猜测。

添加电子可以给出更合理的虚轨道,但是作为普遍的经验规则,阳离子比阴离子更容易收敛。

选项Guess=Read定义初始猜测从Gaussian计算生成的checkpoint文件中读取。

8 一些程序通过减小积分精度加速SCF。

对于使用弥散函数,长程作用或者低能量激发态的体系,必须使用高积分精度:SCF=NoVarAcc。

9 改变模型或方法可以考虑改变模型方法。

比较常见的方法有HF,GVB,MCSCF,CASSCF,MPn等。

改变模型方法通常也会收敛性质。

通常,精度更高的方法更难收敛。

精度比较低的方法产生的计算结果可以作为高精度计算的初始猜测。

考虑使用不同理论级别的计算。

这并不总是实用的,但除此之外,增加迭代数量总是使得计算时间和使用更高理论级别差不多。

10 关闭DIIS外推(SCF=NoDIIS)。

同时进行更多的迭代(SCF=(MaxCycle=N))。

11 试着改用DIIS之外其它方法(SCF=SD或SCF=SSD)。

Gaussian不收敛的可能原因及对策:1 由于体系有很多能量相近的能级,导致计算不收敛。

如果计算中采用的是Hartree-Fock方法或者其他的混合形式的交换相关势(如B3L YP),则可以尝试以下的方法进行改进。

scf=(noincfock,conver=11,maxcyc=1025) iop(5/22=20)用以上的命令行将强制Gaussian采用EDIIS的算法。

此算法计算量更大,但是更加稳定。

在命令行里也增加了最大循环数,以增加收敛的到基态的可能性。

2.检查是否有初始文件错误常见初级错误:a. 自旋多重度错误b. 变量赋值为整数c. 变量没有赋值或多重赋值d. 键角小于等于0度,大于等于180度e. 分子描述后面没有空行f. 二面角判断错误,造成两个原子距离过近g. 分子描述一行内两次参考同一原子,或参考原子共线3.SCF(自洽场)不收敛则一般是L502错误,省却情况做64个cycle迭代(G03缺省128 cycles)a. 修改坐标,使之合理b. 改变初始猜 Guess=Huckel 或其他的,看Guess关键词。

c. 增加叠代次数SCFCYC=N (对小分子作计算时最好不要增加,很可能结构不合理)d. iop(5/13=1)这样忽略不收敛,继续往下做。

4.分子对称性改变a. 修改坐标,强制高对称性或放松对称性b. 给出精确的、对称性确定的角度和二面角。

如CH4的角度给到109.47122c. 放松对称性判据 Symm=loosed. 不做对称性检查iop(2/16=1) (最好加这个选项)iop(2/16=2) 则保持新的对称性来计算5.Opt时收敛的问题a. 修改坐标,使之合理b. 增加叠代次数optcyc=N6.优化过渡态,若势能面太平缓,则不好找到。

iop(1/8=10) 默认30(下一个结构和该结构的差别0.3Å),可改成10。

如果每一步都要用到小的步长,应该加opt(notrustupdate)7.在CI(组态)方法中如QCISD(T),CCSD(T),CID方法中,省却最大循环50,若出错(L913错误)解决方法:#P QCISD(maxcyc=N) 注:N≤5128.优化过渡态opt=TS (给出过渡态)opt=qst2 (给出反应物和产物)opt=qst3 (给出反应物和产物和过渡态)a. 用G03时的出错 opt=ts 必须加FC (force constant)写法:opt=(TS, calcFc)or opt=(TS,calchffc)计算HF力常数,对QCISD,CCSD等方法用;or opt=(TS,modRedundant) (最好写这个)b. 如果计算采用QCISD计算(不好计算FC)则写为QCISD opt=(TS, calcHFFC) (用HF计算FC)9. 无法写大的Scratch文件RWFa. 劈裂RWF文件%r wf=loc1,size1,loc2,size2,……..,locN,-1b. 改变计算方法MP2=Direct可以少占硬盘空间c. 限制最大硬盘maxdisk=N GB,****MB,有些系统写2GB会出错,可以写2000MB10. FOPT出错原因是变量数与分子自由度数不相等。

可用POPT 或直接用OPT11. 优化过渡态只能做一个STEP 原因是负本征数目不对添加iop(1/11)=1或者noeigentest (eigentest 是表示优化过渡态检测分子振动的本征值,过渡态只有一个负值,但优化的时候往往出现两个或者更多的情况,默认的是如果出现多于一个的情况就停止优化计算,这往往时不必要的,noeigentest表示优化时不坐此检测,实际上优化过渡态的时候出现两个三个很正常的,只是第一个一般负的很大,接着的比较小,不会影响过渡态的搜寻,当然有时候需要自己判断是不是接近真实的过渡态。

其实经验上也是过渡态的本征虚频越小,相对越难找。

)对于(L502, L508, L9999)出错的对策对于一个优化计算,它的过程是先做一个SCF计算,得到这个构型下的能量,然后优化构型,再做SCF,然后再优化构型。

因此,会有两种不收敛的情况:一是在某一步的SCF不收敛(L502错误),或者构型优化没有找到最后结果(L9999错误)。

预备知识:计算时保存chk文件,可以在后续计算中使用guess=read读初始猜测.对于SCF不收敛,通常有以下的解决方法:1. 使用小基组,或低级算法计算,得到scf收敛的波函数,用guess=read读初始波函数。

2. 使用scf=qc,这个计算会慢,而且需要用stable关键字来测试结果是否波函数稳定。

如果这个还不收敛,会提示L508错误。

3. 改变键长,一般是缩小一点,有时会有用。

4. 计算相同体系的其他电子态,比如相应的阴离子、阳离子体系或单重态体系,得到的收敛波函数作为初始猜测进行计算。

对于优化不收敛,即L9999错误,实际上是在规定的步数内没有完成优化,即还没有找到极小值点。

(或者对于过渡态优化,还没有找到过渡态)这有几种可能性:1. 看一下能量的收敛的情况,可能正在单调减小,眼看有收敛的趋势,这样的情况下,只要加大循环的步数(opt(maxcycle=200)),可能就可以解决问题了。

2. 加大循环步数还不能解决的(循环步数有人说超过200再不收敛,再加也不会有用了,这虽然不一定绝对正确,但200步应该也差不多了),有两种可能。

一是查看能量,发现能量在振荡了,且变化已经很小了,这时可能重新算一下,或者构型稍微变一下,继续优化,就可以得到收敛的结果(当然也有麻烦的,看运气和经验了);二是构型变化太大,和你预计的差别过大,这很可能是你的初始构型太差了,优化不知道到哪里去了,这时最好检查一下初始构型,再从头优化。

3. 对于L9999快达到收敛时,考虑减小优化步长有时对于能量振荡的情况也是有用的,opt(maxstep=1).(flyingheart )。

相关文档
最新文档