lammps命令pair_coeff

pair_coeff command — LAMMPS documentation

语法

pair_coeff	I J args
  • I,J=numeric atom types(see asterisk from below),or type labels
  • args = coefficients for one or more pairs of atom types

示例

pair_coeff	1 2 1.0 1.0 2.5
pair_coeff 	2 * 1.0 1.0
pair_coeff	3* 1*2 1.0 1.0 2.5
pair_coeff	* * 1.0 1.0
pair_coeff	* * nialhjea 1 1 2
pair_coeff	* 3 morse.table ENYRY1
pair_coeff	1 2 lj/cut 1.0 1.0 2.5 #(for pair_style hybird)

labelmap atom 1 c
labelmap atom 2 H
pair_coeff C H 1.0 1.0 2.5

说明

pair_coeff 为一对或者更多对原子类型指定对势力场参数。参数 的数量和含义取决于所使用的对势类型。对势参数可以在 data 文件中指定,并通过 read_data 命令读取,也可存在重启文件中。

I 和 J 可以通过多种方式指定。

  1. 可以像第一个例子一样,使用显式的方式指定。
  2. I,J 也可以是类型标签(type label),使用 labelmap 定义的字母数字字符串或者从 read_data 命令读取的数据文件中定义的类型标签,LAMMPS 会将这些标签内部转换为数值类型。
  3. 通配符:仅使用于数值类型,可以用于指定多个原子类型对。具体形式包括:
  4. *:所有类型(从 1 到 N,N 是原子类型的总数)
    1. *n:从 1 到 n(包括 n)
    2. n*:从 n 到 N(包括 n)
    3. m*n:从 m 到 n(包括 m 和 n)
    4. 注意:对于通配符语法,LAMMPS 仅会考虑 I<=J 的情况,如果通配符隐含了 J<I 的类型对,这些对将被忽略。LAMMPS 会为对称的 J,I 交换设置与 I,J 交互相同的系数。

覆盖先前的设置

pair_coeff 命令可以覆盖先前对相同 I,J 对的设置。例如:

pair_coeff * * 1.0 1.0 2.5 #为所有I,J对设置系数
pair_coeff 2 3 2.0 1.0 1.12 #覆盖I,J=2,3对的系数

数据文件中的 Pair Coeffs 部分

数据文件中的 Pair Coeffs 部分使用于 pair_coeff 命令相同的格式,但有以下区别:

  • 每行仅指定一个类型 I,用于设置 I 与 I 交互的系数
  • 该部分的行数必须等于原子类型的总数
  • 因此,数据文件中不能使用通配符*。例如,上述示例在数据文件中应写为:
2 1.0 1.0 2.5

混合规则

对于许多势函数,如果未通过 pair_coeff 命令显示设置 I!=J 的系数,LAMMPS 会通过混合规则从 I,I 和 J,J 的设置中推断这些值。详情请参阅 pair_coeff 命令。

使用势函数文件

许多 pair_style(尤其是多体势函数)使用表格化的势函数文件作为输入。LAMMPS 提供的势函数文件位于分发包的 potentials 目录中。对于某些势函数(如 EAM),也可以在网络上找到合适的文件。只要这些文件的格式符合 LAMMPS 的要求,就可以使用。

势函数文件的第一行可能包含元数据,例如 DATE:和 UNITS:标签。LAMMPS 会解析并使用这些标签:

  • DATE:标签的值会打印到屏幕和日志文件中,以便识别势函数文件的版本。
  • UNITS:标签指示该势函数所需的单位设置。如果单位不匹配,LAMMPS 会报错并终止运行。如果文件中没有 UNITS 标签,LAMMPS 不会进行检查,用户需自行确保单位设置正确。在某些情况下,LAMMPS 能够自动转换势函数文件的参数。如果发生自动转换,屏幕上会显示警告信息。

查找势函数文件

使用 pair_coeff 命令指定势函数文件时,LAMMPS 会在以下两个位置查找文件:

  1. 指定路径:例如,如果文件指定为 niu3.eam,LAMMPS 会在当前工作目录中查找。如果指定为 …/potentials/niu3.eam,则会在potentials 目录中查找。
  2. 环境变量 LAMMPS_POTENTIALS:如果文件未在指定路径中找到,LAMMPS 会在 LAMMPS_POTENTIALS 环境变量指定的目录中查找。例如,如果将该变量设置为 LAMMPS 分发包中的 potentials 目录,则可以从系统中的任何位置使用这些文件,而无需将其复制到工作目录中。 环境变量的设置方式因 shell 而异,示例如下:
  • csh/tcsh:
setenv LAMMPS_POTENTIALS /path/to/lammps/potentials
  • bash:
export LAMMPS_POTENTIALS=/path/to/lammps/potentials
  • Windows:
set LAMMPS_POTENTIALS="C:\\Path to LAMMPS\\Potentials"

LAMMPS_POTENTIALS环境变量可以包含多个目录路径,路径之间用 ;(Windows)或 :(其他操作系统)分隔

其他信息

LAMMPS 中定义的 pair_style 列表可以在 pair_style文档页面或 Commands pair 文档页面找到。点击每种 pair_style 可以查看其计算公式和 pair_coeff 命令所需的系数。


本博客致力于分享知识与信息,部分内容可能引用了网络资源。我会尽力注明作者或来源。如果您认为本博客的内容存在侵权现象(包括但不限于版权、商标权等),请立即与我联系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

飞扬的梦(´-ω-`)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值