tag-SMASS-1
SMASS 是在vasp的DFTMD中决定着系综的类型,在手册中给出的该参数具体信息如下:
SMASS = -3 | -2 | -1 | [real] ≥ 0
Default: SMASS = -3
Description: SMASS controls the velocities during an ab-initio molecular dynamics run.
--------------------------------------------------------------------------------
SMASS=-3
For SMASS=-3 a micro canonical ensemble is simulated (constant energy molecular dynamics). The calculated Hellmann-Feynman forces serve as an acceleration acting onto the ions. The total free energy (i.e. free electronic energy + Madelung energy of ions + kinetic energy of ions) is conserved.
SMASS=-2
For SMASS=-2 the initial velocities are kept constant. This allows to calculate the energy for a set of different linear dependent positions (for instance frozen phonons, or dimers with varying bond-length).
Mind: if SMASS=-2 the actual steps taken are POTIM×(velocities-read-from-the-POSCAR-file). To avoid ambiguities, set POTIM=1.
SMASS=-1
In this case the velocities are scaled each NBLOCK step (starting at the first step i.e. MOD(NSTEP,NBLOCK)=1) to the temperature: T=TEBEG+(TEEND-TEBEG)×NSTEP/NSW,
where NSTEP is the current step (starting from 1). This allows a continuous increase or decrease of the kinetic energy. In the intermediate period a micro-canonical ensemble is simulated.
SMASS≥0
For SMASS≥0, a canonical ensemble is simulated using the algorithm of Nosé. The Nosé mass controls the frequency of the temperature oscillations during the simulation.[1][2][3] For SMASS=0, a Nosé-mass corresponding to period of 40 time steps will be chosen. The Nosé-mass should be set such that the induced temperature fluctuation show approximately the same frequencies as the typical 'phonon'-frequencies for the specific system. For liquids something like 'phonon'-frequencies might be obtained from the spectrum of the velocity auto-correlation function. If the ionic frequencies differ by an order of magnitude from the frequencies of the induced temperature fluctuations, Nosé thermostat and ionic movement might decouple leading to a non canonical ensemble. The frequency of the approximate temperature fluctuations induced by the Nosé-thermostat is written to the OUTCAR file.
在 “SMASS≥0” 这个标签中,允许小数出现,这在手册中有相应的例子:
If you are a slightly advanced user you can also use the damped MD algorithm, which is usually more efficient than the CG one:
IBRION = 1
SMASS = 0.4 # damped MD
POTIM = 0.4 # time step needs to chosen with care
In this case, a too large POTIM will result in divergence.
这个参数的原理在手册的6.22.5节也作了详细的解释:
If a damping factor is supplied in the INCAR file by means of the SMASS tag, a damped second order equation of motion is used for the update of the ionic degrees of freedom:

where SMASS supplies the damping factor
, and POTIM controls
. In fact, a simple velocity Verlet algorithm is used to integrate the equation, the discretised equation reads:


It is immediately recognized, that
is equivalent to a simple steepest descent algorithm (of course without line optimization). Hence,
corresponds to maximal damping,
corresponds to no damping. The optimal damping factor depends on the Hessian matrix (matrix of the second derivatives of the energy with respect to the atomic positions). A reasonable first guess for
is usually 0.4. Mind that our implementation is particular user-friendly, since changing
usually does not require to re-adjust the time step (POTIM). To choose an optimal time step and damping factor, we recommend the following two step procedure: First fix
(for instance to 1) and adjust POTIM. POTIM should be chosen as large as possible without getting divergence in the total energy. Then decrease
and keep POTIM fixed. If POTIM and SMASS are chosen correctly, the damped molecular dynamics mode usually outperforms the conjugate gradient method by a factor of two.
If SMASS is not set in the INCAR file (respectively SMASS
0), a velocity quench algorithm is used. In this case ions are updated according using the following algorithm: Here
are the current forces, and
corresponds to POTIM. This equation implies that, if the forces are antiparallel to the velocities, the velocities are quenched to zero. Otherwise the velocities are made parallel to the present forces, and they are increased by an amount that is proportional to the forces.Mind: For IBRION=3, a reasonable time step must be supplied by the POTIM parameter. Too large time steps will result in divergence, too small ones will slow down the convergence. The stable time step is usually twice the smallest line minimization step in the conjugate gradient algorithm.
参考链接:
[1] http://cms.mpi.univie.ac.at/vasp/guide/node118.html
[2] http://cms.mpi.univie.ac.at/vasp/vasp/Efficient_relaxation_from_unreasonable_starting_guess.html
[3] http://cms.mpi.univie.ac.at/vasp/vasp/IBRION_3.html
tag-SMASS-1的更多相关文章
- Git 进阶指南(git ssh keys / reset / rebase / alias / tag / submodule )
在掌握了基础的 Git 使用 之后,可能会遇到一些常见的问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 ori ...
- 05.GitHub实战系列~5.发布版本之分支操作+Tag讲解 2015-12-14
GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...
- Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with value '"*, Microsoft.AspNet.Mvc.TagHelpers"'
project.json 配置: { "version": "1.0.0-*", "compilationOptions": { " ...
- ASP.NET Core 中文文档 第四章 MVC(3.6.1 )Tag Helpers 介绍
原文:Introduction to Tag Helpers 作者:Rick Anderson 翻译:刘浩杨 校对:高嵩(Jack) 什么是 Tag Helpers? Tag Helpers 提供了什 ...
- ASP.NET Core 中文文档 第四章 MVC(3.6.2 )自定义标签辅助类(Tag Helpers)
原文:Authoring Tag Helpers 作者:Rick Anderson 翻译:张海龙(jiechen) 校对:许登洋(Seay) 示例代码查看与下载 从 Tag Helper 讲起 本篇教 ...
- VS2015突然报错————Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with value 'Microsoft.AspNet.Mvc.Razor.TagHelpers.UrlResolutionTagHelper
Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with ...
- Smart Tag——DevExpress WPF初探
Smart Tag是一个设计时扩展,所有标准控件均自带这个功能,当然也包括 DevExpress WPF Controls .可以快速设置控件的值或者绑定最重要的属性.它还可以帮助你完成一些重复的工作 ...
- U3D 打包时找不到tag的问题
在公司改完一个功能,把工程拷回家打开后,编辑器模式下运行正常,打包PC平台和安卓平台时都报错,找不到chatContent这个tag,察看了下下拉列表中明明有这个tag,并且勾选上了,但是点击add ...
- [asp.net core]定义Tag Helpers
原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/authoring Getting started wi ...
- [asp.net core] Tag Helpers 简介(转)
原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/intro What are Tag Helpers? ...
随机推荐
- 杂项:Nuget
ylbtech-杂项:Nuget Nuget是一个.NET平台下的开源的项目,它是Visual Studio的扩展.在使用Visual Studio开发基于.NET Framework的应用时,Nug ...
- commons.httpclient-3.X.jar 和 httpclient-4.x.jar是个什么关系?
最近看项目的代码,看到工程中有两个jar包张的很像,一个是commons.httpclient-3.1.jar,一个是httpclient4.2.1.jar,很纳闷,而且这两个包里都有HttpClie ...
- 解决Mac nginx问题 [emerg] 54933#0: bind() to 0.0.0.0:80 failed (13: Permission denied)
brew services restart nginx Stopping nginx... (might take a while) ==> Successfully stopped nginx ...
- AFNetworkingErrorDomain 错误解决方法
首先我们来看一下错误信息: Error Domain=AFNetworkingErrorDomain Code=-1011 "Expected status code in (200-299 ...
- storm项目优化
实现监控脚本监控topology运行状态
- 20165233 2017-2018-2 《Java程序设计》第八周学习总结
20165233 2017-2018-2 <Java程序设计>第八周学习总结 教材学习内容总结 基础:Java中的线程,Thread类与线程的创建 - 线程是比进程更小的单位. - JVM ...
- scrapy与redis分布式组件
Scrapy 和 scrapy-redis的区别 Scrapy 是一个通用的爬虫框架,但是不支持分布式,Scrapy-redis是为了更方便地实现Scrapy分布式爬取,而提供了一些以redis为基础 ...
- linux双网卡绑定实现冗余与负载均衡
1 编辑/etc/modprobe.conf 在/etc/modprobe.conf里加入如下两行: alias bond0 bonding options bond0 mode=1 miimon ...
- aix-syslog
收集网络内路由器的日志信息,同时把本地日志信息与路由器信息分开. /etc/syslog.conf我写成: ## 本地日志处理 *.notice;*.err;*.warn<tab>;< ...
- python入门-函数(二)
1 函数传递参数 def greet_users(names): """向列表中的每个用户都发处问候""" for name in name ...