24小时热门版块排行榜    

查看: 1032  |  回复: 0

hazheng

捐助贵宾 (著名写手)


[交流] lammps脚本语法小结

输入脚本中的每个非空行被当作一个命令。LAMMPS命令是区分大小写的。命令名是小写的,如指定命令参数。大写字母可能用于文件名或用户选择的ID字符串。

    下面是LAMMPS每一行的输入脚本解析:

(1)如果某行的最后一个可打印字符是“&”字符,则假定该命令在下一行继续。通过删除“&”字符和换行符,下一行将连接到上一行。这使长命令延续在两条或更多条的命令上。请参阅(6),如何在不使用“&”字符的情况下在多行上继续执行命令。

(2) “#”字符后的所有字符都被视为注释并被丢弃,详见(6)。注意,“&”字符后面的注释将阻止命令在下一行继续。另外请注意,对于多行命令,单个“#”字符将注释整个命令。

(3)某行重复搜索“$”字符,表示用文本字符串替换该变量,详见(6)。如果字符“$”后跟大括号,则变量名称是大括号内的文本。

如果字符“$”后没有大括号跟随,则变量名称是紧跟在$之后的单个字符。如${myTemp}和$x的变量名分别为"myTemp" and "x"。

变量如何转换为文本字符串取决于变量的样式。它可以是一个存储多个文本字符串的变量,并返回其中的一个。返回的文本字符串可以是多个“单词”(空格分隔),然后将其解释为输入命令中的多个参数。该变量还可以存储为一个数学公式,该公式将被估算,其数值结果作为字符串返回。

如果字符$后跟圆括号则是一种特殊情况,圆括号内的文本被视为“临时”变量,并被评估为等式样式的变量。这是在输入脚本中使用数字公式的方法,而不必给它们分配变量名称。

variable X equal (xlo+xhi)/2+sqrt(v_area)

region 1 block $X 2 INF INF EDGE EDGE

variable X delete

等价于:

region 1 block $((xlo+xhi)/2+sqrt(v_area)) 2 INF INF EDGE EDGE

以便您不必定义(或丢弃)临时变量X.

注意,变量的大括号或即时形式都不能包含嵌套的$字符以供其他变量替代。

如下做法是错误的:

variable a equal 2

variable b2equal 4

print "B2 = ${b$a}"

不能为一个临时变量指定$($ x-1.0),但可以使用$(v_x-1.0),因为后者是符合等效样式变量语法。

有关字符串如何分配给变量和评估的详细信息,以及如何在输入脚本命令中使用,请参阅变量命令。

(4)某行“单词”被空格分隔(制表符,空格)隔开。请注意,单词可以包含字母,数字,下划线或标点符号。

(5)每行的第一个词是命令名。行中的所有连续词都是参数。

(6)如果要将具有空格的文本视为单个参数,则可以将其包含在单引号或双引号或三引号中。如果使用“&”字符,则单引号或双引号的单个参数可以跨多个行。当行连接在一起(并删除“&”字符和换行符)时,文本将变为单行。如果希望多行参数保留换行符,则文本可以用三重引号括起来,在这种情况下不需要“&”字符。

例如:

print "Volume = $v"

print 'Volume = $v'

if "${steps} > 1000" then quit

variable a string "red green blue &

purple orange cyan"

print """

System volume =$v

System temperature = $t"""

在每种情况下,单个,双引号或三引号在其内部存储的单个参数被删除。引号之间的“#”或“$”字符不会被视为(2)中的注释指示符,或在)(3)中替换为变量。

注意:如果参数本身是一个需要引用参数的命令(例如,使用print命令作为if或run命令的一部分),则单引号,双引号或三引号可以以通常的方式嵌套。

最后,有需求欢迎通过微信公众号联系我们。

微信公众号:320科技工作室。
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 hazheng 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 听说今天filecode变了 +20 布布和一二 2026-08-06 39/1950 2026-08-07 08:50 by wlwhappy
[基金申请] 固定端突然变了,今天 +4 archvillain 2026-08-06 8/400 2026-08-07 08:06 by 带你看大海
[基金申请] filecode +11 等待解的谜 2026-08-06 15/750 2026-08-07 07:51 by wittywong
[基金申请] 基金中了 +8 laoda193707 2026-08-06 8/400 2026-08-07 07:37 by emeraldine
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 6/300 2026-08-06 20:19 by 苏知砚
[有机交流] 一个有机合成实验室都需要哪些设备? 50+3 kf2781974 2026-07-31 12/600 2026-08-06 15:11 by eddyin
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[教师之家] 咨询面上基金 +4 李长云 2026-07-31 7/350 2026-08-06 11:20 by 李长云
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +9 archvillain 2026-08-04 11/550 2026-08-05 20:06 by wlwhappy
[基金申请] 面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇! +22 低垂的野花 2026-07-31 30/1500 2026-08-05 18:03 by 低垂的野花
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[考博] 【2027博士申请】纳米药物递送方向 20+3 13586093586 2026-08-03 4/200 2026-08-05 09:59 by lfy8008
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
[论文投稿] 十年后又回来了,论文投稿求助 +3 哈哈114477 2026-08-01 3/150 2026-08-04 15:40 by tegsgjy20
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
[基金申请] 面上提前没消息,有中的吗 +14 archvillain 2026-08-02 18/900 2026-08-04 14:42 by archvillain
[基金申请] 娱乐 +4 Tide man 2026-08-03 4/200 2026-08-04 11:51 by wgch518
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
信息提示
请填处理意见