• 回答数

    6

  • 浏览数

    2144

  • 收藏数

    0

作者:过客谁是谁 发表于 2018-11-19 16:05:50
跳转到指定楼层
下图是我模拟的问题:两侧是固壁,中间是气体原子。我想把体系划分成5个区域(下图中6条白色的线条之间的部分),然后在模拟的过程中实时输出每一部分内所有原子在每个时刻的温度和压力。
但由于模拟的物质是气体,所以每时每刻各个region里面的原子都不同,这导致我需要每算一步就重新定义一遍group,再重新定义 compute temp和compute stress/atom,然后通过控制thermo_style将计算结果输出到log文件中。这样非常麻烦,而且输出的数据还混杂在log文件里,也不方便提取。不知道大家有没有什么简便的办法呢?
我现在的方法是:
label ......定义循环
# --
group ......重新定义group
compute ... temp ...对每个group重新定义计算温度
compute ... stress/atom ...对每个group重新定义计算压力张量
therom 1
therom_style custom ...将计算的温度和压力输出到log文件中
run 1计算1步就输出
# --
jump ......循环结束
分享:
回复

使用道具

该用户从未签到

新手上路

Rank: 1

积分
16
极客币
43
主题
7
帖子
22
注册时间
2018-11-5
在线时间
1 小时
性别
保密
发表于 2018-11-19 16:06:50 | 显示全部楼层
我记得以前有人讨论过,有个命令可以实现,固定空间并更新空间里的原子,你可以搜搜看
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
16
极客币
42
主题
6
帖子
22
注册时间
2018-11-5
在线时间
1 小时
性别
保密
 楼主| 发表于 2018-11-19 16:06:56 | 显示全部楼层
有啥线索没?。。。这大海捞针的。。。
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
15
极客币
40
主题
7
帖子
19
注册时间
2018-11-5
在线时间
1 小时
性别
保密
发表于 2018-11-19 16:07:06 | 显示全部楼层
compute reduce/region
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
15
极客币
40
主题
7
帖子
19
注册时间
2018-11-5
在线时间
1 小时
性别
保密
发表于 2018-11-19 16:07:37 | 显示全部楼层

compute temp
compute stress/atom
fix ave/spatial
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
16
极客币
43
主题
7
帖子
22
注册时间
2018-11-5
在线时间
1 小时
性别
保密
发表于 2018-11-19 16:07:41 | 显示全部楼层
这个改代码,自己加一个命令,判断原子属于region直接用domain->regions[iregion]->match(x[i][0],x[i][1],x[i][2])。
回复

使用道具 举报

该用户从未签到

新手上路

Rank: 1

积分
16
极客币
42
主题
6
帖子
22
注册时间
2018-11-5
在线时间
1 小时
性别
保密
 楼主| 发表于 2018-11-19 16:07:56 | 显示全部楼层
回复

使用道具 举报

高级模式 评论
您需要登录后才可以回帖 登录 | 立即注册 微信登录