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 SMASS0), 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的更多相关文章

  1. Git 进阶指南(git ssh keys / reset / rebase / alias / tag / submodule )

    在掌握了基础的 Git 使用 之后,可能会遇到一些常见的问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 ori ...

  2. 05.GitHub实战系列~5.发布版本之分支操作+Tag讲解 2015-12-14

    GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...

  3. 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": { " ...

  4. ASP.NET Core 中文文档 第四章 MVC(3.6.1 )Tag Helpers 介绍

    原文:Introduction to Tag Helpers 作者:Rick Anderson 翻译:刘浩杨 校对:高嵩(Jack) 什么是 Tag Helpers? Tag Helpers 提供了什 ...

  5. ASP.NET Core 中文文档 第四章 MVC(3.6.2 )自定义标签辅助类(Tag Helpers)

    原文:Authoring Tag Helpers 作者:Rick Anderson 翻译:张海龙(jiechen) 校对:许登洋(Seay) 示例代码查看与下载 从 Tag Helper 讲起 本篇教 ...

  6. 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 ...

  7. Smart Tag——DevExpress WPF初探

    Smart Tag是一个设计时扩展,所有标准控件均自带这个功能,当然也包括 DevExpress WPF Controls .可以快速设置控件的值或者绑定最重要的属性.它还可以帮助你完成一些重复的工作 ...

  8. U3D 打包时找不到tag的问题

    在公司改完一个功能,把工程拷回家打开后,编辑器模式下运行正常,打包PC平台和安卓平台时都报错,找不到chatContent这个tag,察看了下下拉列表中明明有这个tag,并且勾选上了,但是点击add ...

  9. [asp.net core]定义Tag Helpers

    原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/authoring Getting started wi ...

  10. [asp.net core] Tag Helpers 简介(转)

    原文地址 https://docs.microsoft.com/en-us/aspnet/core/mvc/views/tag-helpers/intro What are Tag Helpers? ...

随机推荐

  1. Qt5布局管理(三)——QStackedWidget堆栈窗口类

    转载:LeeHDsniper 实例效果如下图: 如上图,堆栈窗口左半部分是一个QListWidget对象,右半部分是分别是三个标签.通过点击左边不同的项目,可以使得右边的Lable进行切换. 具体的结 ...

  2. bzoj 2516: 电梯

    Description Input Output 状压dp,状态表示为表示当前在第x层,电梯内有哪些人,哪些人还没到终点 #include<cstdio> #include<cstr ...

  3. springMVC参数绑定JSON类型的数据

    需求就是: 现在保存一个Student,并且保存Student的friend,一个student会有多个朋友,这里要传递到后台的参数是: var friends = new Array(); var ...

  4. Parity 钱包启动配置

    Parity. Ethereum Client. By Wood/Paronyan/Kotewicz/Drwięga/Volf et al. Copyright 2015, 2016, 2017, 2 ...

  5. 1031 Hello World for U (20 分)

    1031 Hello World for U (20 分) Given any string of N (≥5) characters, you are asked to form the chara ...

  6. [UE4] 虚幻4学习---UE4中的字符串转换

    String Conversions: FString To FName FString To Int32 Float To FString FArrayReaderPtr To FString TA ...

  7. (转)linux查找技巧: find grep xargs

    在当前目录下所有.cpp文件中查找efg函数 find . -name "*.cpp" | xargs grep 'efg' xargs展开find获得的结果,使其作为grep的参 ...

  8. Microsoft Enterprise Library

    http://entlib.codeplex.com/ 微软企业库 现在已经到到6版本了 2013年更新的. https://www.microsoft.com/en-us/download/conf ...

  9. 浅析PHP7新功能及语法变化总结

    标量类型声明 有两种模式: 强制 (默认) 和 严格模式. 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 ...

  10. Jenkins 邮件发送设置(jenkins自带邮件设置)

    首先进入系统设置,找到Jenkins Location部分 这里设置 系统管理员邮件地址,然后设置邮件通知部分,这里为了方便我使用了QQ邮箱(作为发送邮件地址) 这里的 用户名 必须与上面的 系统管理 ...