24小时热门版块排行榜    

查看: 1755  |  回复: 0

cgzhang_gg

铜虫 (著名写手)

[交流] 关于 run 0 command 重要性

lammps 里面的run 0 command 具有重要的作用:不妨看下面的例子:
*********************************************************************************************************************
# TiO2 Rutile
variable         a   loop    4
log                 vacan.formation.tect.O.$a
units              metal
atom_style     charge
boundary        p p p

lattice              custom 4.493  a1 1.0 0.0 0.0 a2 0.0 1.0 0.0 a3 0.0 0.0 0.669&
                        basis 0.0 0.0 0.0 basis 0.5 0.5 0.5 &
                        basis 0.303 0.303 0.0 basis 0.697 0.697 0.0 &
                        basis 0.803 0.197 0.5 basis 0.197 0.803 0.5

region              mybox block -4 4 -4 4 -4 4
create_box      2 mybox
create_atoms   2 box basis 1 1 basis 2 1 &
                          basis 3 2 basis 4 2 basis 5 2 basis 6 2
# mass after simulation box is defined, before a simulation is run.
mass                1     47.867   # Ti
mass                2    15.9994  # O
set                   type   1  charge    2.196 # Ti
set                   type   2   charge   -1.098 # O

# potential
pair_style         hybrid/overlay table linear 150000 coul/long 11.0

pair_coeff        1  1   table  TiO2.pair.table  Ti_Ti   11.0
pair_coeff        1  2   table  TiO2.pair.table  Ti_O   11.0
pair_coeff        2  2   table  TiO2.pair.table  O_O   11.0
pair_coeff        *  *    coul/long   # right

kspace_style    pppm 1.0e-5

Sample Text
variable          E   equal   pe
#variable        cE  equal  $E
variable          N  equal  atoms

#print          "@@@@before minimum! cE=${cE}"
neighbor           0.3 bin
neigh_modify    delay 2 every 1 check yes

thermo              1
min_style          cg
minimize           1.0e-20 1.0e-20 10000 100000    #etol ,ftol, max iterations, max number      

print           "@@@@@ 1. atoms and total potential: $N  $E"  # output pe after a minimum

clear
next             a
#jump            in.TiO2  muti_point
*******************************************************************************************************************************
in.TiO2  例子是进行了四次相同的结构优化,对同一个构型,得到的正确的结果应该相同的:
@@@@@ 1. atoms and total potential: 3072  -40730.760848533624085
@@@@@ 1. atoms and total potential: 3072  -40730.70939078804804
@@@@@ 1. atoms and total potential: 3072  -40730.70939078804804
@@@@@ 1. atoms and total potential: 3072  -40730.70939078804804
但经过测试,只有当在in.TiO2文件中,在重新设置构型后,进行一次 run 0 command 之后,才可以得到相同的结果,如上。如果没有书写  run 0  command,则得到的结果不相同,根据不同的机器,结果不同。如下:

@@@@@ 1. atoms and total potential: 3072  -40730.76084853617067
@@@@@ 1. atoms and total potential: 3072  -45348.092323018747265
@@@@@ 1. atoms and total potential: 3072  -42739.32519361760933
@@@@@ 1. atoms and total potential: 3072  -40900.023453094305296

自己的理解:run 0 command 有一些初始化的作用。当不用run 0 command 时pe 可能是不确定的。不知道大家是怎么理解的?
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

找到一些相关的精华帖子,希望有用哦~

科研从小木虫开始,人人为我,我为人人
相关版块跳转 我要订阅楼主 cgzhang_gg 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见