跳至主要内容

lammps 压痕划痕模拟设置参考

 Molecular dynamics study on the effect of electric current on electrically-assisted scratching for crystal copper - IOPscience


原因深入分析如下:

✅ 切削 / 摩擦 / 划痕:局部剧烈变形 → 热量集中

  • 这类过程模拟的是工具与材料接触区域的强烈局部非平衡过程

  • 如果对整个系统控温,会严重抹平局部发热、滑移带的应变能耗散等重要现象;

  • 所以只在边界区域(如底部、侧边)设 thermostat,起到“热沉”作用

  • 文献经典设置就是:

    • 底部固定

    • 边缘 slab 控温

    • 接触区完全不控温,自由演化

✅ 拉伸 / 压缩 / 剪切:全局加载 → 热传导充分

  • 是材料整体在受力,不存在特别“集中”的能量输入区域;

  • 局部发热相对温和,且在 bulk 系统中可以通过自身结构进行导热

  • 实验中常常是等温加载(准静态过程);

  • 所以很多文献就直接用整体 fix nvt 控温,保持恒温环境,简化模拟;

  • 注意有些更精细的研究会改为:只在两端 slab 控温,中间 Newtonian 自由演化

📚 二、典型模拟场景下的控温策略总览

场景类别控温方式控温范围控温方法控温目的注意事项
平衡态热力学性质(如热容、扩散、应力)整体控温全体系fix nvt, fix npt模拟室温等温状态标准EMD方法
热导率(Green-Kubo)整体控温全体系fix nvt (前期平衡), 后期 nve采集能流自相关函数采样期不能控温
热导率(NEMD)区域控温热源/热沉fix langevin, fix heat人为施加温差形成热流中间区自由演化
拉伸 / 压缩 / 剪切整体控温(常用)或局部控温全体系或上下 slabfix nvtlangevin slab保持恒温,避免非真实升温全控温可抹平热应变
应力松弛 / 加热冷却过程整体控温全体系fix nvt 或温度渐变等温退火、升温或冷却控温方式决定退火速率
位错运动 / 缺陷扩散局部控温边界或部分 slabfix langevin + nve释放边界热、维持热稳定性中心缺陷区不控温更合理
相变(熔化、晶化)模拟全控温(渐变)全体系逐步升温/降温控制熔化、结晶过程可加入温度扫描
纳米线断裂 / 拉伸边界 slab 控温(推荐)两端几层原子langevin保持等温,留出自由变形空间中间不控温,保留真实热效应
划痕 / 摩擦 / 切削局部控温工件边界langevinberendsen避免工具接触区降温热量在中间自由扩散
接触行为(纳米压痕)局部控温底部或远离接触区langevin模拟热沉,接触区自由变形顶部加载区不能控温
薄膜沉积 / CVD 生长局部控温衬底层或缓冲层fix langevin, fix temp/rescale保持衬底温度恒定生长原子自由演化;不能控温在成核区
气固界面反应 / 催化区域控温固体部分(催化剂)langevin or nvt保持固体温度,气体自由演化控制过强会影响气体吸附行为
液体/气体系统(如气泡、液桥)整体控温 or 边界 slab视目标而定nvt / langevin模拟热平衡或蒸发冷凝控温方式影响表面张力行为
冲击 / 激波 / 纳米撞击不控温 or 冲击前控温全体系 or 边界fix nve or 短期 nvt模拟绝热冲击或热传导过程控温会破坏冲击热演化
带电粒子 / 电场加载局部控温电极区域或边界fix langevin模拟电热效应背景中心反应区不宜控温


📌 三、控温方式推荐说明(附说明可加进文中)

控温命令适用场景特点
fix nvt平衡MD、整体等温加载Nose–Hoover,广泛使用
fix langevin局部控温、非平衡过程添加随机噪声+阻尼项,物理意义更接近热浴
fix temp/rescale快速冷却/升温会扰动动力学,慎用于非平衡模拟
fix npt热力学平衡研究可控温控压,适合体相研究
fix heat热导率、稳态热流用于构造温差(热源/热沉)

评论

此博客中的热门博文

dpgen数据收集分类续算

dpgen 推荐安装升级方法:删除之前工作目录的dpgen文件夹 Install from source code:  git clone https://github.com/deepmodeling/dpgen && pip install ./dpgen 想收集TL的数据集且按化学成分分类:/work/qan/kluo/NaSPO/run/TransL dpgen collect ./ ./collect -p simplify.json -m 不起作用,只能用 param.json格式 所以单独新建文件夹,构造虚拟的 param.json其中初始数据集地址,直接复制最后一个train的input.json.再用 dpgen collect ./ ./collect -p param.json -m就可以收集初始的数据了,但是这时候没有分类,尽管dpgen collect -m 有这个功能但没有作用。 所以,构建虚拟的simplify任务,记住是精简过程,所以       "labeled" : true ,       "init_pick_number" : 0 ,       "iter_pick_number" : 0 , .....       "training_init_model" : false , 运行之后,第一步就得到了 所有的分类数据集。 Q: /work/qan/kluo/NaSPO/run 最近几轮的准确率上不去,猜测是数据集太大 232334 batch ,而每一代的学习步长 step 只有 50 万,以及不够了。所以出现了:一些模型的准确率一直上不去,就算修改上下限也没有改观。或者一些模型学好了,另一些模型就被遗忘了,很明显是学习步长不够了。 A: 解决办法如下:将现有数据收集分类,分拣出确实学习率低的重写单独重点学习。其次,以后用 dpgen 自动采样产生数据集的时候,时刻关注准确率的变化,一旦上不去了赶紧分家。 D: 1.        收集数据 a.       ...

dpgen simplify 数据精简二次处理

问题: 1.        Carbon 的势能文件无法准确描述石墨层间距 共有 204,200 bch 2.        NaSPO 的势能文件无法压缩 共有 242,423 bch 都可能是 data 太臃肿导致的,所以决定精简用 simplify 命令试试(感觉是重新采样的过程,只是节省了 lammps 的时间用 dp test 代替了,还是需要 fp 过程(也可以注释掉,如果需要新的 VASP 参数可以启用),更适合需要换 fp 参数的计算)。第一次取样是随机的, dp 采样过程有点慢 压缩的 pb 需要 6 小时。 还可以重新 fp 改善数据集 https://tutorials.deepmodeling.com/en/latest/CaseStudies/Transfer-learning/Transfer-learning.html https://docs.deepmodeling.com/projects/dpgen/en/latest/simplify/simplify-jdata.html https://zhuanlan.zhihu.com/p/456504860 http://bohrium-doc.dp.tech/docs/software/DP-GEN_simplify Simplify — DP-GEN documentation 先做,动起来在看 1.        收集所有数据 https://hikunluo.blogspot.com/2022/12/dpgen.html 2.        准备 simplify 的两个 json 文件。      nohup dpgen simplify simplify.json machine.json 1 > log 2 > err &      (base) [kluo@condo2017 SimCarbon]$ cat simplify.json { ...

python相关

 在IDLE中运行pip install pandas是不行的。你需要在命令提示符(Command Prompt)或终端(Terminal)中运行该命令。下面是详细步骤: 使用命令提示符安装 pandas 打开命令提示符: 按 Win + R 键打开运行窗口,输入 cmd,然后按回车键。 或者你可以在开始菜单中搜索“命令提示符”并打开它。 而且运行python脚本的一般步骤: 1. 打开IDLE shell这是个交互窗口 不能直接将脚本内容直接复制到这里,但是应该可以用python +脚本路径运行 2. File -new file-粘贴脚本内容 3.这个窗口上有run