minimize跟驰豫

不要把minimize跟驰豫同等概念而言.

大家在用LAMMPS时minimize的命令都会用到的, 一般是用来最优化初始构型, 保证初始构型的势能最优化.

LAMMPS中minimize是一个

速度(温度)无关

的命令,也就是说可以认为此命令只是通过调节分子间位置来获得一个局部势能最小态的构型. 如果此时体系的温度正好又是0K, 那么可以认为此时用minimize获得的局部势能最小态就是全局势能最小态. 所以你想在LAMMPS中获得一个体系全局势能最低的初始构型体系,那么先用veloctiy将温度设成0.0000001K(LAMMPS里不允许0K), 再用minize就可以获得一个全局势能最低构型.

驰豫

则是一个跟温度有关的过程,我理解的驰豫过程指的是: 体系内分子间动能和势能相关转换达到一个体系总能量相对稳定的动态平衡过程,驰豫后体系内势能,动能保持在一个很小波动的稳定态.

那么由上可知:

如果你现在做的是不控温拉伸, 每次加载一个应变量后体系为一个NVE系综, 此时让体系驰豫, 那么此时更合理的驰豫命令就是run, 再给一个足够长的run time后, 那么体系内势能动能相互转换来达到全局动平衡,达到这一平衡所需的时间就是我们说的驰豫时间, 而在每一次加载应变后体系所需的迟豫时间也是不等的.

如果做的是低温下的拉伸,那么势必会导致每次加载应变后,体系内势能减少,转变为热能,

如果做的是高温下的拉伸,那么有可能导致每次加载应变后,体系内热能减少,转变为热能,

而关于这到底是热变势还是势变热,有个热力学第二定理的判定标准:

“体系总是朝熵增方向前进.”

但是如果体系是处于恒温下的拉伸时, 每一次加载应变后体系不再是一个NVE的, 而是一个NVT或NPT的,具体选择NVT还是NPT得看你期望是V的波动小(NVT)还是P的波动小(NPT)了.

加载应变量后由于体系并未处于一个动平衡态, 又此时系统它处于一恒温热浴下时, 体系温度也就是体系内分子动能是不变的, 那么体系此时势能的变化量会全部由热浴负责供给或吸引(拉伸一般是热浴吸热, 熔化一般则是热浴供热), 因为同时需要用到fix temp/rescale(等温度标度)来控温, 结合足够长的run time, 这样就是我们常说的升温退火来使体系驰豫达到一个全局能量动稳定态.

如果你现在做的是近0K(LAMMPS里不允许0K)的拉伸, 由于温度总是控制在0K, 每次加载一个应变量后,用run time驰豫时体系势能会转变成热能后,热能又被热浴成0了, 所以可以认为0K的驰豫就是在朝体系全局势能最优态前进的过程,也就是局部势能最优态, 那么此时我们就可以用minize来完成0K情况下的驰豫了.

在0K时用它比之run time的驰豫的好处在于每次加应变后用minize完成驰豫所需步数比自己用run设定的步数更有依据.

——————————————————
minimize 是一个数学过程, 消除掉体系中能量很高的作用, 如bad connection

但由于体系原子数太多, 势能面极为复杂, 单单靠minimize 很容易落在某个local minimum中

这个不是平衡态.

驰豫是一个物理过程, 完全模拟真实的时间演化,

给原子赋以热运动, 就可以使体系越过各个local m 达到global m,

“体系总是朝熵增方向前进”, 熵到最大时候, 体系才算是充分平衡

关于minimize跟驰豫的问题相关推荐

  1. scipy minimize当目标函数需要参数、当约束条件特别特别多时

    from scipy.optimize import minimize 求解 官方说明文档 简单开一下开头 官方下面有例子会让人容易明白 注意我们的目的是:为了求出让fun函数最小的最优解x 当遇见目 ...

  2. python网页优化公司_使用python优化scipy.optimize.minimize公司

    我将逐行检查您的代码,并强调一些问题:from scipy.optimize import minimize import numpy as np prices=np.array([[1.5,50,3 ...

  3. python实例 优化目标函数_Scipy优化算法--scipy.optimize.fmin_tnc()/minimize()

    scipy中的optimize子包中提供了常用的最优化算法函数实现,我们可以直接调用这些函数完成我们的优化问题. scipy.optimize包提供了几种常用的优化算法. 该模块包含以下几个方面 使用 ...

  4. tf.train.GradientDescentOptimizer().minimize()细致探索

    1.tf.train.GradientDescentOptimizer().minimize() 其中的minimize可以拆为以下两个步骤: ① 梯度计算 ② 将计算出来的梯度应用到变量的更新中 拆 ...

  5. tensorflow中optimizer minimize自动训练简介和选择训练variable的方法

    本文主要介绍tensorflow的自动训练的相关细节,并把自动训练和基础公式结合起来.如有不足,还请指教. 写这个的初衷:有些教程说的比较模糊,没体现出用意和特性或应用场景. 面向对象:稍微了解点代码 ...

  6. python scipy.optimize.minimize多变量多参数优化

    python scipy.optimize.minimize多变量多参数优化 x是一维变量,无超参数 x是二维变量,无超参数,带bounds x是二维变量,有一个超参数,带bounds x是二维变量, ...

  7. python中eps参数_Python minimize函数:向约束字典传递附加参数

    我不知道如何通过minimize函数将其他参数传递给约束字典.我可以成功地将其他参数传递给目标函数. constraints参数是一个dict,它有一个字段"args",其中arg ...

  8. 最小化函数minimize

    minimize 函数 我们先看问题 根据公式,定义一下dist函数 from scipy.optimize import minimizedef dist(xita, v0):g = 9.8xita ...

  9. python:scipy.optimize.minimize(method=’Nelder-Mead’)

    简介 优化问题是工程实践中经常遇到的一种问题.简单讲,就是搜索优化出一组自变量参数,使得目标函数达到极小值(极大值). 如何搜索出这组参数呢:这就是优化算法做的事情.不同的优化算法适用于不同的优化问题 ...

最新文章

  1. TableModel方法:
  2. Gradle 的使用
  3. java http输出,Java HTTP Client输出空JSON
  4. 思考Web应用的数据流
  5. 外部方法调用内部_私有属性和私有方法
  6. 8255控制四个双色灯C语言,汇编语言实现通过8255A和4个开关控制实现8个LED灯和8个7位数码管显示指定数字全亮、全灭、从左至右、从右至左跑马灯式点亮...
  7. C++学习笔记-----不要在构造函数和析构函数中调用虚函数
  8. 第 8 章 容器网络 - 061 - flannel 的连通与隔离
  9. session的钝化和活化
  10. 导入mysql source_mysql导入source数据库
  11. Android进阶: 10分钟实现NDK-JNI 开发教程
  12. innodb 索引 mysql_InnoDB索引实现
  13. 全栈创建一个小程序(mpvue+nodejs+mysql)---(一)--本地开发
  14. Django下载文件名称不显示,中文乱码问题
  15. asa清空配置_思科ASA基本配置
  16. 南部翔宇实验小学第六届校园文化艺术节闭幕式暨“六一”庆祝活动
  17. 22.Consent 确认逻辑实现
  18. Flutter: 千位数加逗号分隔
  19. windows10下使用Ubuntu子系统
  20. 蓝桥杯模拟测试——5个猴子分香蕉的问题;

热门文章

  1. 头豹-2020年中国真人密室逃脱行业概览——附下载链接
  2. 基于STM32的多功能MP3设计 元件清单
  3. NK.bin与NK.nb0格式
  4. python代码大全书籍_python代码实现图书管理系统
  5. android aapt下载,获取apk信息工具(android SDK的aapt工具)
  6. 创意苹果LOGO灯iPhone6 Plus发光灯苹果6荧光灯苹果4.7/5.5LED灯
  7. 基于Java的网络相册_java毕业设计_springboot框架的基于网络相册管理系统
  8. 小马哥---山寨仿苹果6 主板型号E255 低端仿机 芯片6571 拆机主板图与开机界面图
  9. 前端点滴(网络协议/HTML/前端优化/浏览器)
  10. 风变编程,你的编程课入门好帮手