【LAMMPS学习】八、基础知识(3.2)使用chunks计算系统属性

 8. 基础知识

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

8.1.通用基础知识

8.2. 设置入门

8.3. 分析入门

8.3.1. LAMMPS 的输出(thermo, dumps, computes, fixes, variables

8.3.2.使用chunks计算系统属性 

在 LAMMS 中,“chunks”是原子的集合,由compute chunk/atom 命令定义,该命令将每个原子分配给一个块 ID(或根本不分配给任何块)。块的数量以及块 ID 到原子的分配可以是静态的或随时间变化。 “块”的例子是具有相似值(例如配位数或势能)的分子或空间仓或原子。

每个原子块 ID 可以用作其他两种命令的输入,以计算系统的各种属性:

  • fix ave/chunk

  • any of the compute */chunk commands

这里提供了 4 种与块相关的命令中每一种的简要概述。然后给出了一些示例,说明如何使用块命令计算不同的属性。

Compute chunk/atom command计算块/原子命令:

该计算可以将原子分配给各种样式的块。仅将指定组和可选指定区域中的原子分配给块。以下是一些可能的块定义:

atoms in same molecule 同一分子中的原子

chunk ID = molecule ID
块 ID = 分子 ID

atoms of same atom type
相同原子类型的原子

chunk ID = atom type
块 ID = 原子类型

all atoms with same atom property (charge, radius, etc)
所有具有相同原子属性(电荷、半径等)的原子

chunk ID = output of compute property/atom
chunk ID = 计算属性/atom 的输出

atoms in same cluster 同一簇中的原子

chunk ID = output of compute cluster/atom command
chunk ID = 计算集群/atom命令的输出

atoms in same spatial bin
同一空间仓中的原子

chunk ID = bin ID
块 ID = bin ID

atoms in same rigid body
同一刚体中的原子

chunk ID = molecule ID used to define rigid bodies
chunk ID = 用于定义刚体的分子 ID

atoms with similar potential energy
具有相似势能的原子

chunk ID = output of compute pe/atom
chunk ID = 计算pe/atom的输出

atoms with same local defect structure
具有相同局部缺陷结构的原子

chunk ID = output of compute centro/atom or compute coord/atom command
块 ID = 计算 centro/atom 或 计算 coord/atom 命令的输出

请注意,块 ID 是整数值,因此对于生成浮点值的原子属性或计算,它们将被截断为整数。您还可以在变量中使用计算来缩放浮点值以将其分布在多个整数上。

空间仓可以有多种类型,例如1d 容器 = 平板,2d 容器 = 铅笔,3d 容器 = 盒子,球形容器,圆柱形容器。

此计算还计算块的数量 Nchunk,其他命令使用它来计算每个块的数据。 Nchunk 可以是静态值或随时间变化(例如簇的数量)。单个原子的块 ID 也可以是静态的(例如分子 ID),也可以是动态的(例如原子移动时位于哪个空间仓中)。

请注意,此计算允许使用其他计算、修复和变量的每个原子输出来定义每个原子的块 ID。这意味着您可以编写自己的计算或修复来输出每个原子的数量以用作块 ID。有关如何执行此操作的信息,请参阅修改文档页面。您还可以在输入脚本中定义每个原子变量,该变量使用公式为每个原子生成块 ID。

Fix ave/chunk command固定ave/chunk 命令:

此fix将计 compute chunk/atom 命令的 ID 作为输入。然后,对于每个块,它会对每个块中的原子上的一个或多个指定的每原子值求和。每个原子的值可以是任何原子属性,例如速度、力、电荷、势能、动能、应力等。为每个块的属性(例如密度和温度)定义了其他关键字。更一般地,由其他 computes, fixes, and per-atom variables生成的任何每原子值都可以对每个块中的原子求和。

与其他平均fixes类似,此fixes允许以各种方式对每个块的总和值进行时间平均,并输出到文件。该修复会生成一个全局数组作为输出,每个块包含一行值。

Compute */chunk commands计算 */chunk 命令:

以下计算对原子块进行操作以生成每个块的值。任何样式名称以“/chunk”结尾的计算都属于此类别:

  • compute com/chunk

  • compute gyration/chunk

  • compute inertia/chunk

  • compute msd/chunk

  • compute property/chunk

  • compute temp/chunk

  • compute torque/chunk

  • compute vcm/chunk

它们各自将 compute chunk/atom 命令的 ID 作为输入。正如其名称所示,它们计算每个原子块的质心、回转半径、惯性矩、均方位移、温度、扭矩和质心速度。compute property/chunk 命令可以计算每个块中的原子数量并提取其他每个块的属性。

这些不同的计算不是 fix ave/chunk 命令的一部分的原因是,每个计算都需要比简单地对每个块中的每个原子值求和和平均更复杂的操作。例如,其中许多需要计算质心,这需要对原子上的质量*位置求和,然后除以总质量。

所有这些计算都会生成一个全局向量或全局数组作为输出,每个块具有一个或多个值。输出可以通过多种方式使用:

  • 作为 fix ave/time 命令的输入,该命令可以将值写入文件并可选择对它们进行时间平均。

  • 作为fix ave/histo 命令的输入,以显示跨块的直方图值。例如,团簇大小或分子扩散速率的直方图。

  • 作为equal-style variables的特殊函数的输入,例如 sum() 、 max() 和 ave() 。例如。找到最大的团簇或最快扩散的分子或一组分子(块)的平均回转半径。

Other chunk commands其他块命令:

  • compute chunk/spread/atom

  • compute reduce/chunk

compute chunk/spread/atom 命令将每个块的值传播到块中的每个原子,产生每个原子的值作为其输出。这对于将每个块的值输出到每个原子转储文件非常有用。或者在原子样式变量中使用原子的关联块值。或者作为 fix ave/chunk 命令的输入,以在空间上平均由每块计算计算出的每块值。

compute reduce/chunk 命令减少每个块中原子的peratom值以产生每个块的值。当与compute chunk/spread/atom命令一起使用时,它可以创建peratom值,通过第二个compute chunk/atom命令诱导一组新的块。

Example calculations with chunks块计算示例:

以下是使用块命令来计算各种属性的示例:

  1. 1000 个 2d 空间仓中每个的平均速度:

compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.01 units reduced
fix 1 all ave/chunk 100 10 1000 cc1 vx vy file tmp.out

2. 每个空间仓内的温度,减去流速后:

compute cc1 all chunk/atom bin/2d x 0.0 0.1 y lower 0.1 units reduced
compute vbias all temp/profile 1 0 0 y 10
fix 1 all ave/chunk 100 10 1000 cc1 temp bias vbias file tmp.out

3.每个分子的质心:

compute cc1 all chunk/atom molecule
compute myChunk all com/chunk cc1
fix 1 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector

4.每个分子上的总力以及所有分子的平均/最大力:

compute cc1 all chunk/atom molecule
fix 1 all ave/chunk 1000 1 1000 cc1 fx fy fz file tmp.out
variable xave equal ave(f_1[2])
variable xmax equal max(f_1[2])
thermo 1000
thermo_style custom step temp v_xave v_xmax

5.团簇大小的直方图:

compute cluster all cluster/atom 1.0
compute cc1 all chunk/atom c_cluster compress yes
compute size all property/chunk cc1 count
fix 1 all ave/histo 100 1 100 0 20 20 c_size mode vector ave running beyond ignore file tmp.histo

6.   compute chunk/spread/atom命令文档页面上解释了使用每块值来施加每原子力来压缩混合物中的单个聚合物链(分子)的示例。

7. compute reduce/chunk 命令文档页面上解释了使用一组分子块的每块值来创建第二组胶束规模块(由于疏水性而聚集的分子)的示例。

8. 对分子块使用一组每块值(偶极矩向量),将值传播到每个块中的每个原子,然后将第二组块定义为空间仓,并使用 fix ave/chunk命令计算每个 bin 的平均偶极矩向量。该示例在 compute chunk/spread/atom 命令文档页面上进行了解释。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/818908.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯 — —灵能传输

灵能传输 友情链接:灵能传输 题目: 输入样例: 3 3 5 -2 3 4 0 0 0 0 3 1 2 3输出样例: 3 0 3思路: 题目大意:给出一个数组,每次选择数组中的一个数(要求不能是第一个数与最后一个…

大数据几种任务调度工具

文章目录 一、DolphinScheduler概述和部署1、DolphinScheduler简介1.1 概述1.2 核心架构 2、DolphinScheduler部署模式2.1 概述2.2 单机模式2.3 伪集群模式2.4 集群模式 3、DolphinScheduler集群模式部署3.1 集群规划与准备3.2 下载与配置部署脚本3.3 初始化数据库3.4 一键部署…

maven引入外部jar包

将jar包放入文件夹lib包中 pom文件 <dependency><groupId>com.jyx</groupId><artifactId>Spring-xxl</artifactId><version>1.0-SNAPSHOT</version><scope>system</scope><systemPath>${project.basedir}/lib/Spr…

电商技术揭秘二十四:无人仓储与自动化技术

相关系列文章 电商技术揭秘一&#xff1a;电商架构设计与核心技术 电商技术揭秘二&#xff1a;电商平台推荐系统的实现与优化 电商技术揭秘三&#xff1a;电商平台的支付与结算系统 电商技术揭秘四&#xff1a;电商平台的物流管理系统 电商技术揭秘五&#xff1a;电商平台…

华媒舍:7种方式,打造出旅游媒体套餐

现如今&#xff0c;伴随着旅游业发展与繁荣&#xff0c;更多旅游业发展从业人员越来越重视产品营销品牌基本建设&#xff0c;希望可以将自己的度假旅游产品和服务营销推广给更多的潜在用户。而建立一个优秀的旅游业发展媒体套餐内容品牌是吸引目标客户的重要步骤。下面我们就详…

Golang | Leetcode Golang题解之第30题串联所有单词的子串

题目&#xff1a; 题解&#xff1a; func findSubstring(s string, words []string) (ans []int) {ls, m, n : len(s), len(words), len(words[0])for i : 0; i < n && im*n < ls; i {differ : map[string]int{}for j : 0; j < m; j {differ[s[ij*n:i(j1)*n]…

把握零碎时间,开启长期副业兼职之旅!在家也能轻松赚钱!

转眼间&#xff0c;2024年已悄然走过三分之一。这一年&#xff0c;外界环境似乎并不那么友好&#xff0c;但对我而言&#xff0c;我的月收入仍然相对稳定。我找到的副业让我每月能赚到3000元以上&#xff0c;这让我深感庆幸。 现实中&#xff0c;只依赖主业工资的日子确实艰辛…

更改ip地址的几种方式有哪些

在数字化时代&#xff0c;IP地址作为网络设备的标识&#xff0c;对于我们在网络世界中的活动至关重要。然而&#xff0c;出于多种原因&#xff0c;如保护隐私、访问特定网站或进行网络测试&#xff0c;我们可能需要更改IP地址。虎观代理将详细介绍IP地址的更改方法与步骤&#…

Java基础(一)--语法入门

文章目录 第一章、语法入门一、Java简介1、JVM2、Java程序执行过程3、JDK4、JRE5、JDK、JRE和JVM三者关系 二、Java常量与变量1、标识符2、关键字3、保留字4、变量5、数据类型6、常量 三、运算符1、算术运算符2、赋值运算符3、关系运算符4、逻辑运算符5、条件运算符6、运算符的…

反爬虫之代理IP封禁-协采云IP池

反爬虫之代理IP封禁-协采云IP池 1、目标网址2、IP封禁4033、协采云IP池 1、目标网址 aHR0cDovL3d3dy5jY2dwLXRpYW5qaW4uZ292LmNuLw 2、IP封禁403 这个网站对IP的要求很高&#xff0c;短时间请求十几次就会遭关进小黑屋。如下图&#xff1a; 明显是网站进行了反爬处理&…

Cannot access ‘androidx.activity.FullyDrawnReporterOwner‘

Android Studio新建项目就报错&#xff1a; Cannot access ‘androidx.activity.FullyDrawnReporterOwner’ which is a supertype of ‘cn.dazhou.osddemo.MainActivity’. Check your module classpath for missing or conflicting dependencies 整个类都报错了。本来原来一直…

OpenCV-AMF算法(自适应中值滤波Adaptive Median Filtering)

作者&#xff1a;翟天保Steven 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 实现原理 AMF&#xff08;Adaptive Median Filter&#xff0c;自适应中值滤波&#xff09;是一种用于图像处理和信号处理的滤波算…

蓝桥杯2024年第十五届省赛真题-R 格式(高精度乘法 + 加法)

本题链接&#xff1a;蓝桥杯2024年第十五届省赛真题-R 格式 - C语言网 题目&#xff1a;​​​​​​​ 样例&#xff1a; 输入 2 3.14 输出 13 思路&#xff1a; 根据题意&#xff0c;结合数据范围&#xff0c;这是一道模板的高精度乘以低精度问题。 题意是double 类型 d 与…

论文笔记:Time Travel in LLMs: Tracing Data Contamination in Large Language Models

iclr 2024 spotlight reviewer评分 688 1 intro 论文认为许多下游任务&#xff08;例如&#xff0c;总结、自然语言推理、文本分类&#xff09;上观察到的LLMs印象深刻的表现可能因数据污染而被夸大 所谓数据污染&#xff0c;即这些下游任务的测试数据出现在LLMs的预训练数据…

mac电脑软件 Magnet v2.14.0免激活中文版

Magnet是一款窗口管理工具&#xff0c;适用于Mac操作系统。它可以帮助用户轻松地管理和组织多个应用程序的窗口&#xff0c;提高工作效率。 Magnet支持多种窗口布局和组合方式&#xff0c;可以将窗口分为左右、上下、四分之一等不同的比例和位置&#xff0c;用户可以根据实际需…

阿里云Centos7下编译glibc

编译glibc 原来glibc版本 编译前需要的环境: CentOS7 gcc 8.3.0 gdb 8.3.0 make 4.0 binutils 2.39 (ld -v) python 3.6.8 其他看INSTALL, 但有些版本也不易太高 wget https://mirrors.aliyun.com/gnu/glibc/glibc-2.37.tar.gz tar -zxf glibc-2.37.tar.gz cd glibc-2.37/ …

Spring Boot 整合 Mockito:提升Java单元测试的高效实践

引言 在Java开发领域&#xff0c;Spring Boot因其便捷的配置和强大的功能而受到广泛欢迎&#xff0c;而Mockito作为一款成熟的单元测试模拟框架&#xff0c;则在提高测试质量、确保代码模块间解耦方面扮演着至关重要的角色。本文将详细介绍如何在Spring Boot项目中整合Mockito&…

c++总结笔记(一)

计算机可以将程序转化为二进制指令&#xff08;即机器码&#xff09;&#xff0c;并由CPU执行&#xff0c;CPU会按照指令的顺序依次执行每个指令。 C语言特点&#xff1a; 简洁高效可移植模块化标准化 C语言的标准 C89(C90)标准C99标准C11标准 导入 使用include导入包含…

《R语言与农业数据统计分析及建模》学习——数据读入

一、工作目录 # 获取当前工作目录 getwd()# 改变工作目录为指定路径下的文件夹 # 注意工作目录的表达方式 setwd(D:/R_class) setwd(D:\\R_class) 二、文件路径 读取文件中的数据首先要确定文件路径&#xff0c;如果文件不在工作目录下&#xff0c;则必须使用绝对路径 1、文…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十二 简单图片添加水印效果

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十二 简单图片添加水印效果 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十二 简单图片添加水印效果 一、简单介绍 二、简单图片添加水印效果实现原理 三、简单图片添加水印效果案例…