计算化学公社

标题: 求助,lammps用NEMD法算热导率不准,低两个数量级 [打印本页]

作者
Author:
syd2000    时间: 2024-7-4 23:16
标题: 求助,lammps用NEMD法算热导率不准,低两个数量级
求助各位大佬,用NEMD法算铜的热导率一直算出来只有个位数,远低于实际,检查了好几天实在不知道什么原因引起,in文件如下:
#Cuga-Gr
#model parameter
units                   metal
boundary                p p p
atom_style              full
timestep                0.001 #1fs
neighbor                2.0 bin
neigh_modify            every 1 delay 0

#modeling
lattice fcc 3.61 #晶格常数
region box block 0 10 0 10 0 50 #区域
create_box   1 box
create_atoms 1 box
region                  hot block INF INF INF INF 0 1
region                  cold block INF INF INF INF 25 26

#--------------------混合势函数设置------------------------------
pair_style              meam/c
pair_coeff              * * library.meam Cu Cu.meam Cu
#-------------------热力学输出----------------------------
compute                 Thot all temp/region hot
compute                 Tcold all temp/region cold

thermo                  100
#--------------------能量最小化-----------------------

min_style             cg
minimize            1e-15 1e-15 5000 5000
#-------------------npt系综下驰豫--------------------
reset_timestep 0
fix                1 all npt temp 300 300 0.01 iso 0 0 0.1
dump                    1 all atom 100 dump.colloid
run                1000
thermo_modify      lost ignore
unfix              1
#注入热量
fix                     2 all nve
fix                     hot all heat 10 10 region hot
fix                     cold all heat 10 -10 region cold
thermo_style            custom step temp c_Thot c_Tcold
thermo                  1000
run                     10000

compute                 ke all ke/atom
variable                temp atom c_ke/0.0001292355

compute                 layers all chunk/atom bin/1d z lower 0.05 units reduced
fix                     3 all ave/chunk 10 100 1000 layers v_temp file profile.heat

variable                tdiff1 equal f_3[11][3]-f_3[1][3]
variable                tdiff2 equal f_3[6][3]-f_3[4][3]
variable                t1 equal f_3[1][3]
variable                t2 equal f_3[2][3]
variable                t3 equal f_3[3][3]
variable                t4 equal f_3[4][3]
variable                t5 equal f_3[5][3]
variable                t6 equal f_3[6][3]
variable                t7 equal f_3[7][3]
variable                t8 equal f_3[8][3]
variable                t9 equal f_3[9][3]
variable                t10 equal f_3[10][3]
variable                t11 equal f_3[11][3]
variable                t12 equal f_3[12][3]
variable                t13 equal f_3[13][3]
variable                t14 equal f_3[14][3]
variable                t15 equal f_3[15][3]
variable                t16 equal f_3[16][3]
variable                t17 equal f_3[17][3]
variable                t18 equal f_3[18][3]
variable                t19 equal f_3[19][3]
variable                t20 equal f_3[20][3]

fix                     ave1 all ave/time 1 1 1000 v_tdiff1 ave running start 13000
fix                     ave2 all ave/time 1 1 1000 v_tdiff2 ave running start 13000
fix                     a1 all ave/time 1 1 1000 v_t1 ave running start 13000
fix                     a2 all ave/time 1 1 1000 v_t2 ave running start 13000
fix                     a3 all ave/time 1 1 1000 v_t3 ave running start 13000
fix                     a4 all ave/time 1 1 1000 v_t4 ave running start 13000
fix                     a5 all ave/time 1 1 1000 v_t5 ave running start 13000
fix                     a6 all ave/time 1 1 1000 v_t6 ave running start 13000
fix                     a7 all ave/time 1 1 1000 v_t7 ave running start 13000
fix                     a8 all ave/time 1 1 1000 v_t8 ave running start 13000
fix                     a9 all ave/time 1 1 1000 v_t9 ave running start 13000
fix                     a10 all ave/time 1 1 1000 v_t10 ave running start 13000
fix                     a11 all ave/time 1 1 1000 v_t11 ave running start 13000
fix                     a12 all ave/time 1 1 1000 v_t12 ave running start 13000
fix                     a13 all ave/time 1 1 1000 v_t13 ave running start 13000
fix                     a14 all ave/time 1 1 1000 v_t14 ave running start 13000
fix                     a15 all ave/time 1 1 1000 v_t15 ave running start 13000
fix                     a16 all ave/time 1 1 1000 v_t16 ave running start 13000
fix                     a17 all ave/time 1 1 1000 v_t17 ave running start 13000
fix                     a18 all ave/time 1 1 1000 v_t18 ave running start 13000
fix                     a19 all ave/time 1 1 1000 v_t19 ave running start 13000
fix                     a20 all ave/time 1 1 1000 v_t20 ave running start 13000

thermo_style            custom step temp c_Thot c_Tcold v_tdiff1 v_tdiff2 f_ave1 f_ave2 f_a1 f_a2 f_a3 f_a4 f_a5 f_a6 f_a7 f_a8 f_a9 f_a10 f_a11 f_a12 f_a13 f_a14 f_a15 f_a16 f_a17 f_a18 f_a19 f_a20 v_t1 v_t2 v_t3 v_t4 v_t5 v_t6 v_t7 v_t8 v_t9 v_t10 v_t11 v_t12 v_t13 v_t14 v_t15 v_t16 v_t17 v_t18 v_t19 v_t20


run 20000
最后输出的结果如图,温差太大,

作者
Author:
syd2000    时间: 2024-7-5 11:17
最后算出来两个区块之间的温度差18K,间距1.8nm,计算过程如图
作者
Author:
syd2000    时间: 2024-7-8 11:48
顶 期待高手出现
作者
Author:
syd2000    时间: 2024-7-9 12:01
顶顶

作者
Author:
锋锋feng    时间: 2024-9-2 09:29
顶,礼貌询问楼主问题解决了吗。我现在计算热导率也是小了一个数量级,非常苦恼
作者
Author:
syd2000    时间: 2024-10-25 14:33
锋锋feng 发表于 2024-9-2 09:29
顶,礼貌询问楼主问题解决了吗。我现在计算热导率也是小了一个数量级,非常苦恼

解决了,我算的金属,金属导热主要是电子贡献,MD算不了
作者
Author:
方方方    时间: 2024-10-29 09:54
syd2000 发表于 2024-10-25 14:33
解决了,我算的金属,金属导热主要是电子贡献,MD算不了

同学,我也想问问。我是用了几种办法(包括你用的热浴,还有速度重标)来算碳纳米管的热导率,但是我不仅仅是输出结果差了2~3倍,重点是温度分布也很差,几乎是乱的
作者
Author:
Evelynwoo    时间: 2024-12-10 10:52
syd2000 发表于 2024-10-25 14:33
解决了,我算的金属,金属导热主要是电子贡献,MD算不了

楼主你好,我也遇到这个问题了,同求金属导热,请问你后来用的什么方法呢?




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3