ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

手把手跑通 DeePMD-kit LAMMPS 集成:3 步搭建深度学习势能模拟

手把手跑通 DeePMD-kit LAMMPS 集成:3 步搭建深度学习势能模拟 手把手跑通 DeePMD-kit LAMMPS 集成3 步搭建深度学习势能模拟【免费下载链接】deepmd-kitA deep learning package for many-body potential energy representation and molecular dynamics项目地址: https://gitcode.com/gh_mirrors/de/deepmd-kit你手里有一组 DFT 算好的水分子数据想把体系从几十个原子推到上万、时间从皮秒拉到纳秒——经验势精度不够DFT 又跑不动。DeePMD-kit 就是来填这个缝的把 DFT 数据喂给神经网络炼成势能面再交给 LAMMPS 做分子动力学。它到底帮你省了什么它替你省掉的是算得准和算得快之间那道传统上无解的取舍。以前你跑一个上万原子的水相体系选经验势吧精度差到 DFT 算出来的键长都歪硬上 DFT 吧一纳秒的时间尺度要烧掉几十台机的机时。现在这条链被拆开DFT 只负责在离线阶段当神经网络的老师DeePMD-kit 负责把老师炼成一个可导出的势能模型LAMMPS 负责在生产阶段大规模并行走步——精度跟着 DFT 走速度跟着 LAMMPS 走。还省掉的是一块重复体力活。以前每换一个体系、换一批数据势函数参数都要人肉重调一遍现在同一套工作流不动换个模型文件就能直接跑下一个体系。DeePMD-kit 安装教程三步把环境跑起来最省事的路是用 conda-forge 一条命令装好 DeePMD-kit 和 LAMMPS不用自己折腾编译。把源码拉下来顺带拿到示例和插件装上运行时再敲一条验证命令git clone https://gitcode.com/gh_mirrors/de/deepmd-kit # 拉源码与示例 conda create -n deepmd deepmd-kit lammps -c conda-forge # 装运行时 conda activate deepmd dp -h lmp -h # 两条都有帮助输出即装好上面dp是 DeePMD-kit 的命令入口lmp是 LAMMPS 的可执行文件。想要完整的 LAMMPS 插件编译流程内置模式、插件模式、CMake 细节看 安装指南这里不展开。一条 pair_style deepmd 命令串起整个模拟整条模拟链路本质就是让 LAMMPS 通过一行pair_style deepmd去读你训练好的模型文件。先备齐三个文件一个结构文件water.lmpLAMMPS 的 data 格式记录原子坐标和盒子、一个模型文件frozen_model.pbdp train训完导出的、一份输入脚本input.lammps。前两个你已经有第三个照着下面写read_data water.lmp # 读入初始结构 mass 1 16 # 类型1氧质量16 mass 2 2 # 类型2氢质量2 pair_style deepmd frozen_model.pb # 载入势能模型 pair_coeff * * O H # 激活全部原子类型pair_style deepmd是整个集成的枢纽——它告诉 LAMMPS能量和力别自己算了交给模型文件。pair_coeff里写上O H是把 LAMMPS 的类型号映射到元素名不写也行默认就用模型训练时的 type_map。要控温加一行fix 1 all nvt temp 300 300 0.5NPT 把 fix 换成npt并补目标压力NVE 直接fix 1 all nve。跑之前先确认模型本身拟合得好训练时可以用 TensorBoard 盯能量和力的收敛曲线写好后单机、多进程、看结果各一条命令lmp -in input.lammps # 单机跑 mpirun -np 8 lmp -in input.lammps # 多进程并行 tail -n 20 log.lammps # 看最后 20 行热力学数据 ls water.dump # 确认轨迹文件生成了想用多卡做 DeePMD-kit 多GPU 运行记住一条一个 MPI rank 只能占一张 GPU几卡就开几个 rank-np别超过卡数。最容易被卡住的两个坑卡住新手的基本就是这两个提前看能省半天。坑一插件版本不匹配。现象是升级了 DeePMD-kit 之后 LAMMPS 直接起不来报一堆符号找不到因为 LAMMPS 源码里还挂着旧版本的 USER-DEEPMD。到 LAMMPS 源码目录里先拆旧再挂新cd lammps-src make no-user-deepmd # 先移除旧模块 make yes-user-deepmd # 再挂上新的更稳的做法是干脆重解一遍 LAMMPS 源码包从零编译一次通常很快。坑二MPI 版本不一致。现象是单机好好的一上mpirun就崩或卡死多半是 LAMMPS 编译时绑的 MPI 和你敲命令的mpirun不是同一套。先各查一眼mpirun --version # 看你命令用的 MPI lmp -h # 看 lmp 编译时绑的 MPI对不上就把 LAMMPS 用同一个 MPI 重编译一遍。到这儿你已经能独立把训练好的模型塞进 LAMMPS 跑起来了想深入pair_style deepmd的参数细节翻 LAMMPS 命令参考 和 LAMMPS 插件源码。【免费下载链接】deepmd-kitA deep learning package for many-body potential energy representation and molecular dynamics项目地址: https://gitcode.com/gh_mirrors/de/deepmd-kit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表