Gromacs分子动力学模拟主要可以分为以下几个步骤,不同的体系步骤可能略有不同. 在开始之前,先简单了解一下预平衡: 分子动力学模拟的最终目的是对体系进行抽样,然后计算体系的能量,各种化学键,成分分析等等.打个比方说,我们有一个蛋白质,我们想将它放入一种溶液中(可能是水,也可能不是),然后看看这个体系的能量如何变化,蛋白质的化学键,与水分子形成的氢键等等信息,那么我们需要将蛋白质放入溶液中,映射到现实中就是讲溶剂放入溶剂中,然后等体系稳定后,观察其性质. 在MD中,这一过程不向现实中一样是自然…
技术背景 在分子动力学模拟的过程中,考虑到运动过程实际上是遵守牛顿第二定律的.而牛顿第二定律告诉我们,粒子的动力学过程仅跟受到的力场有关系,但是在模拟的过程中,有一些参量我们是不希望他们被更新或者改变的,比如稳定的OH键的键长就是一个不需要高频更新的参量.这时就需要在一次不加约束的更新迭代之后(如Velocity-Verlet算法等),再施加一次约束算法,重新调整更新的坐标,使得规定的键长不会产生较大幅度的变更. 初始化坐标参数 为了实现LINCS这一算法,我们先初始化一组随机的坐标用于测试,比…
技术背景 在上一篇文章中,我们讨论了在分子动力学里面使用LINCS约束算法及其在具备自动微分能力的Jax框架下的代码实现.约束算法,在分子动力学模拟的过程中时常会使用到,用于固定一些既定的成键关系.例如LINCS算法一般用于固定分子体系中的键长关系,而本文将要提到的SETTLE算法,常用于固定一个构成三角形的体系,最常见的就是水分子体系.对于一个水分子而言,O-H键的键长在模拟的过程中可以固定,H-H的长度,或者我们更常见的作为一个H-O-H的夹角出现的参量,也需要固定.纯粹从计算量来考虑的话,…
技术背景 在分子动力学模拟过程中会遇到一些拓扑结构非常复杂的分子模型,所谓的复杂不仅仅是包含众多的原子,还有各种原子之间的成键关系与成键类型等.这时候就非常能够体现一个好的可视化软件的重要性了,这里我们介绍的VMD是一个业界非常常用.功能也非常强大的一款软件. VMD的安装 首先访问VMD官方网站,找到适合自己本地OS和硬件系统的版本进行下载.这里我们本地是Ubuntu20.04的系统,所以下载了一个Linux通用的版本: 下载到本地之后,找到一个合适的文件夹进行解压: dechin@ubunt…
题目链接 2014年浙江省赛C题,当时觉得难,现在想想这题真水.. 找规律: 若   最大的那个步骤数*m-总和>=0,那么答案就是 最大的那个步骤数 . 否则  就要另加上不够的数量,具体看代码吧,嘻嘻. 下面这个是我比赛时写的,紧张时写的有点冗杂,开心的是一次过了,哈哈. 数组dp[i]是装逼的,保存的是前i个所需的最少时间,貌似除了dp[n-1],前面的都是多余的 - - . #include<stdio.h> #include<string.h> int main()…
系统环境 Win11 22H2 企业版 开启虚拟化.window subsystem for liunx等虚拟机相关的功能 应用商店中安装WSL2 安装步骤 打开Ubuntu,输入sudo apt full-upgrade,并输入设置好的密码 安装cmake编译器sudo apt install cmake 安装c和c++编译器sudo apt install gcc&g++ 下载gromacs源码sudo wget ftp://ftp.gromacs.org/gromacs/gromacs-2…
模拟计算一些分数的和,结果以带分数的形式输出注意一些细节即可 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> using namespace std; /* 模拟计算一些分数的和,结果以带分数的形式输出 注意一些细节即可 */ ; ; //long int范围实际上就是int的范围,sqrt(int)不超过…
今天回来打的第一场NOIP难度的试题,结果惨不忍睹.写一下每道题的做法,然后每道题犯的__弱智__错误 UPD:2018.9.15 突然这篇题解就变成很多大佬要看的了,因为之前是写给自己看的,所以写的很简略,这次修改一下第二道题的描述(第一题建议找其他AC的人看看,我的做法比较依赖STL,而且比较难读懂) Moni 题意 每天 \(t\) 时刻将会有人取车或者放车,这个序列满足FIFO原则,每个人的时间代价是 \(delta(t)\). 有 \(q\) 次询问,每次问你如果在初始时刻投放 \(c…
材料模拟分子动力学课程 3月19号--22号 远程在线课 lammps分子动力学课程 3月12号--15号 远程在线课 第一性原理VASP实战课 3月25号-28号 远程在线课 量子化学Gaussian技术实战课 4月9号--12号 远程在线教学 报名联系方式:杨春娇 手机(微信同号):17777853361 官方咨询QQ:334700349 备注:正规增值税发票,可以开具培训费.会议费.资料费. lammps分子动力学QQ群号:753267868 (加群备注:杨春娇邀请) 第一性原理VASP模…
技术背景 GPU加速是现代工业各种场景中非常常用的一种技术,这得益于GPU计算的高度并行化.在Python中存在有多种GPU并行优化的解决方案,包括之前的博客中提到的cupy.pycuda和numba.cuda,都是GPU加速的标志性Python库.这里我们重点推numba.cuda这一解决方案,因为cupy的优势在于实现好了的众多的函数,在算法实现的灵活性上还比较欠缺:而pycuda虽然提供了很好的灵活性和相当高的性能,但是这要求我们必须在Python的代码中插入C代码,这显然是非常不Pyth…