24小时热门版块排行榜    

查看: 5783  |  回复: 29

gulubaozi

银虫 (小有名气)

送红花一朵
引用回帖:
10楼: Originally posted by lsloneil at 2015-01-08 12:06:48
介电常数用dielectric命令,电荷在data文件里给出,或者用set命令。好好研究下manual吧。...

哎,组里没人做计算,我一个研一的,要是没有小木虫,就真成了单干了。
谢谢大神!
11楼2015-01-08 15:53:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gulubaozi

银虫 (小有名气)

楼主,经过两天的郁闷弄清了LAMMPS手册中coulomb表达式及其设置使用。
coulomb力的计算公式可以参看wiki ,通过力与势能的关系,可得到coulomb势,与LAMMPS手册中所用公式对比,可得手册中的C (energy-conversion constant) 实际上是wiki 中coulomb力的那个常数项。
虫子cgzhang_gg在他的帖子里计算了LAMMPS中的这个C值(帖子http://muchong.com/html/201306/6016306.html),楼主通过计算coulomb力常数项表达式的值,并与上值对比,确信LAMMPS手册中所用coulomb势公式中的C (energy-conversion constant)就是coulomb力常数项,而LAMMPS公式中的epsilon(其值通过dielectric command设置)仅仅是个比例常数,不具备任何物理意义。
12楼2015-01-08 16:56:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huachao90

禁虫 (正式写手)

本帖内容被屏蔽

13楼2015-01-09 00:17:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lsloneil

专家顾问 (正式写手)

引用回帖:
13楼: Originally posted by huachao90 at 2015-01-08 04:17:09
追问大神一个问题,我记得水的相对介电常数是78左右,lammps里面默认的是1,那么如果我模拟水的体系的话,需要更改介电常数为78么?非常感谢...

http://muchong.com/bbs/viewthread.php?tid=8039822&target=self&page=2
14楼2015-01-09 00:34:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gulubaozi

银虫 (小有名气)

引用回帖:
14楼: Originally posted by lsloneil at 2015-01-09 00:34:52
http://muchong.com/bbs/viewthread.php?tid=8039822&target=self&page=2...

大神,你好!又遇到问题了,望您不吝赐教。我的代码如下:
#initialization       
units                 metal
boundary         p p p
#atom_style        atomic
atom_style        charge

#simulation box definition
read_data        data_charge.UO2
#read_data        data.UO2

#atomic properity
mass        1        238.02891
mass        2        15.999
#set        type        1        2.40
#set        type        2        -1.20

variable                ilat        equal        5.454
lattice                fcc        ${ilat}
region                thi        block        -10.0        10.0        0.0        20.0        -5.0        5.0
region                tlo        block        -10.0        10.0        -20.0        0.0        -5.0        5.0
region                tobox        union        2        thi        tlo
group                thi        region        thi
group                tlo        region        tlo

#potential
#kspace_style        pppm        1.0e-2
kspace_style        pppm        0.1
pair_style                hybrid/overlay        coul/long        11.0        buck        11.0        buck        11.0        buck        11.0        morse        11.0
pair_coeff        *        *        coul/long
pair_coeff        1        1        buck        1        294.7593        0.327022        0.0
pair_coeff        2        2        buck        2        1633.666        0.327022        3.95063
pair_coeff        1        2        buck        3        693.9297        0.327022        0.0
pair_coeff        1        2        morse        0.57745        1.65        2.369

#setting
neighbor                        10000.0 bin
neigh_modify                every 1 delay 10 check yes
timestep                        0.002
restart                        50000 tmp*.restart
运行的结果如下:
Reading data file ...
  orthogonal box = (-54.54 -109.08 -27.27) to (54.54 109.08 27.27)
  4 by 4 by 2 MPI processor grid
  reading atoms ...
  96000 atoms
Lattice spacing in x,y,z = 5.454 5.454 5.454
46820 atoms in group thi
46820 atoms in group tlo
PPPM initialization ...
  G vector (1/distance) = 0.23096
  grid = 45 80 27
  stencil order = 5
  estimated absolute RMS force accuracy = 0.0151343
  estimated relative force accuracy = 0.00105102
  using double precision FFTs
ERROR on proc 10: Failed to allocate 607915927176 bytes for array pppm:density_brick (../memory.cpp:45)
错误的原因是内存不够
按照手册kspace_style 推荐 coul/long 用kspace_style pppm或ewald,(我用pppm是因为文章上用的是这个,我想先把文章的结果重复出来),可是只要我用这个命令,设置的精度稍高一些就有这种问题。这是in script的问题还是coul/long + pppm 所不可避免的问题?
15楼2015-01-09 16:44:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lsloneil

专家顾问 (正式写手)

【答案】应助回帖

★ ★ ★
月只蓝: 应助指数+1 2015-01-13 14:20:05
月只蓝: 金币+3, 感谢耐心指导! 2015-01-13 14:20:13
引用回帖:
15楼: Originally posted by gulubaozi at 2015-01-08 20:44:04
大神,你好!又遇到问题了,望您不吝赐教。我的代码如下:
#initialization       
units                 metal
boundary         p p p
#atom_style        atomic
atom_style        charge

#simulation box definition
read_data        data_charge.U ...

你的neighbor怎么设那么大?lammps 对于metal unit默认值是2.0
http://lammps.sandia.gov/doc/neighbor.html
neighbor太大的话内存立马溢出。

pppm精度应该至少1e-4
16楼2015-01-10 09:34:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gulubaozi

银虫 (小有名气)

引用回帖:
16楼: Originally posted by lsloneil at 2015-01-10 09:34:07
你的neighbor怎么设那么大?lammps 对于metal unit默认值是2.0
http://lammps.sandia.gov/doc/neighbor.html
neighbor太大的话内存立马溢出。

pppm精度应该至少1e-4...

我是这么考虑的,coulomb势为长程作用,单这一项的系数值就是40多,cutoff 取 11.0,而分母上仅仅是距离的一次方,如果neighbor不够大,那么coulomb势这一项的精度就不够,所以就设了那么大。依大神的经验,要使 neighbor 和 pppm 的精度平衡一下,neighbor 设为多少比较合适?
17楼2015-01-10 11:23:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lsloneil

专家顾问 (正式写手)

引用回帖:
17楼: Originally posted by gulubaozi at 2015-01-09 15:23:42
我是这么考虑的,coulomb势为长程作用,单这一项的系数值就是40多,cutoff 取 11.0,而分母上仅仅是距离的一次方,如果neighbor不够大,那么coulomb势这一项的精度就不够,所以就设了那么大。依大神的经验,要使 n ...

The neighbor list and pppm precision are not significantly correlated. Try default neighbor value first.
18楼2015-01-10 11:55:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gulubaozi

银虫 (小有名气)

引用回帖:
18楼: Originally posted by lsloneil at 2015-01-10 11:55:48
The neighbor list and pppm precision are not significantly correlated. Try default neighbor value first....

楼主想向大神淘些经验。
用LAMMPS做模拟,需要后处理,一般有些结构分析LAMMPS可以做,还可以借助一些软件,还有就是自己编程。大神偏爱哪种后处理方式?
19楼2015-01-13 11:11:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lsloneil

专家顾问 (正式写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
月只蓝: 金币+10, 感谢专家指导! 2015-01-13 14:20:28
引用回帖:
19楼: Originally posted by gulubaozi at 2015-01-12 15:11:02
楼主想向大神淘些经验。
用LAMMPS做模拟,需要后处理,一般有些结构分析LAMMPS可以做,还可以借助一些软件,还有就是自己编程。大神偏爱哪种后处理方式?...

很难说,具体取决于你的需要。后处理的话其实用lammps自带的pizza.py结合VMD,有时再用一下lammps的rerun和各种compute命令,已经能够处理各种文件类型转化,计算相互作用能量,部分热力学性质和rdf了。如果你的分析仅局限于这些,那么把这些掌握熟就足够了(话说把这些掌握熟也不那么容易,pizza.py和VMD我就用得不好)。

编程的好处是灵活度高,尤其是用C或fortran编程,处理数据速度比脚本语言或者matlab都快不少。像我有时要计算精度比较高的MSD(lammps自带的计算MSD功能没有充分利用所有数据,精度较低),这时编程的优势就体现出来了。另外如果你要做一些pizza.py和VMD不能做的分析,比如各种时间关联函数以及一些自由能计算,这时也需要自己编程。当然编程一开始都比较费时,几百行的程序有时都能debug几天(可能我debug能力比较弱)。
20楼2015-01-13 12:05:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 gulubaozi 的主题更新
信息提示
请填处理意见