【LAMMPS学习】八、基础知识(2.6)Lammps中的Walls墙

2024-04-13 05:36

本文主要是介绍【LAMMPS学习】八、基础知识(2.6)Lammps中的Walls墙,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

8. 基础知识

此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各种模拟。

8.1.通用基础知识

8.2. 设置入门

8.2.1.二维模拟

8.2.2.类型标签

8.2.3.三斜(非正交)模拟盒子

8.2.4.恒温器

8.2.5.恒压器 

8.2.6.Walls墙

MD 模拟中的墙通常用于限制粒子运动,即充当边界条件。

LAMMPS 中的墙壁可以是粗糙的(由粒子组成)或理想化的表面。理想的壁可以是光滑的,仅在法线方向上产生力,也可以是摩擦力,也在切线方向上产生力。

由粒子构成的粗糙墙壁可以通过多种方式创建。粒子本身可以像任何其他粒子一样通过 lattice 和 create_atoms 命令生成,或者通过 read_data 命令读入。

它们的运动可以受到许多不同命令的约束,因此它们根本不移动,作为一个整体以恒定速度一起移动或响应作用在它们上的净力,以规定的方式移动(例如围绕一个点旋转)等。请注意,如果包含壁粒子的组未使用诸如 fix nve 或者 fix nvt 之类的时间积分fix,则它们的位置和速度将不会更新。

  • fix aveforce - 将粒子上的力设置为平均值,以便它们一起移动

  • fix setforce - 将粒子上的力设置为一个值,例如0.0

  • fix freeze - 冻结颗粒以用作颗粒墙

  • fix nve/noforce - 通过速度平流粒子,但没有力

  • fix move - 通过线速度、振荡、旋转、变量规定粒子的运动

 fix move命令提供了最通用性,因为可以使用取决于时间和/或粒子位置的 variable公式来指定单个粒子的运动。

对于粗糙的墙壁,通过 neigh_modify exclude 命令关闭墙壁粒子之间的成对相互作用可能很有用。

还可以通过指定不移动且不与移动粒子相互作用的冻结粒子,然后通过 bond将其他粒子束缚到固定粒子来创建粗糙墙。结合的粒子确实与其他移动粒子相互作用。

理想化的墙壁可以通过多个 fix 命令来指定。Fix wall/gran 创建摩擦墙以与颗粒颗粒一起使用;所有其他命令都会创建光滑的墙壁。

  • fix wall/reflect - 反射平坦的墙壁

  • fix wall/lj93 - 平坦的墙,具有 Lennard-Jones 9/3 势

  • fix wall/lj126 -平坦的墙,具有 Lennard-Jones 12/6 势

  • fix wall/colloid -平坦的墙,具有pair_style colloid 势

  • fix wall/harmonic -平坦的墙,具有排斥谐波弹簧势

  • fix wall/morse - 平坦的墙,具有莫尔斯势

  • fix wall/region - - 使用区域表面作为墙壁

  • fix wall/gran -具有 pair_style granular的平坦或弯曲的墙壁

lj93、lj126、colloidharmonic, 和morse 类型都允许平坦的墙壁以恒定速度移动,或随时间振荡。 fix wall/region 命令提供了最通用性,因为区域表面被视为墙,并且区域的几何形状可以是简单的原始体积(例如球体、立方体或平面),也可以是由来自原始体积的并集和交集。

Regions 还可以指定指定原始形状或并集或交集的“内部”或“外部”体积。 

Regions 也可以是“动态的”,这意味着它们以恒定的速度移动、振荡或旋转。

目前 LAMMPS 中唯一的摩擦理想化墙壁是由  fix wall/gran 命令指定的平坦或弯曲表面。在某些时候,我们计划允许区域表面用作摩擦墙以及三角表面。

这篇关于【LAMMPS学习】八、基础知识(2.6)Lammps中的Walls墙的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/899257

相关文章

Python的pandas库基础知识超详细教程

《Python的pandas库基础知识超详细教程》Pandas是Python数据处理核心库,提供Series和DataFrame结构,支持CSV/Excel/SQL等数据源导入及清洗、合并、统计等功能... 目录一、配置环境二、序列和数据表2.1 初始化2.2  获取数值2.3 获取索引2.4 索引取内容2

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操