Dear Lammps users,
Hi, I am learning thermal conductivity calculation using Green-Kubo approach.
As an exercise, I tried calculations for silicon and graphene, and both have worked well.
I am also trying to calculate thermal conductivity of copper, but I got only 15 ~ 20 W/mK
for the thermal conductivity of copper (which is supposed to be around 350 W/mK).
I tried a few different potentials (meam, eam, and eam/alloy) and different sizes of structure,
but they all have produced the similar results. I am sure that my unit conversion is correct
as other materials proved.
I am copying my input file below which is not much different from the example given by Lammps.
Please let me know if you can find any errors from my input.
Thanks in advance,
settings
variable T equal 300
variable V equal vol
variable dt equal 0.001
variable kB equal 1.3806504e-23 # [J/K] Boltzmann
variable eV2J equal 1.602e-19
variable A2m equal 1.0e-10
variable ps2s equal 1.0e-12
variable convert equal {eV2J}*{eV2J}/{ps2s}/{A2m}
variable alat equal 2.456
variable p equal 10000 # correlation length
variable s equal 10 # sample interval
variable d equal $p*$s # dump interval
setup problem
units metal
boundary p p p
atom_style atomic
lattice fcc 3.610 orient x 1 0 0 orient y 0 1 0 orient z 0 0 1
region box block 0 4 0 4 0 4 units lattice
create_box 1 box
create_atoms 1 region box
replicate 2 2 2
mass 1 63.546
velocity all create $T 4928459 mom yes rot yes dist gaussian
pair_style eam
pair_coeff * * Cu_u3.eam
neighbor 2.0 bin
neigh_modify delay 10
timestep ${dt}
dump 1 all cfg 100000 dump.config.*.cfg mass type xs ys zs vx vy vz x y z
1st equilibration run
fix 1 all nvt temp $T $T 0.5
thermo 100000
run 1000000
velocity all scale $T
unfix 1
undump 1
thermal conductivity calculation
reset_timestep 0
compute myKE all ke/atom
compute myPE all pe/atom
compute myStress all stress/atom virial
compute flux all heat/flux myKE myPE myStress
variable Jx equal c_flux[1]/vol
variable Jy equal c_flux[2]/vol
variable Jz equal c_flux[3]/vol
dump 2 all cfg $d dump.config..cfg mass type xs ys zs vx vy vz x y z
fix 1 all nve
fix JJ all ave/correlate $s $p d &
c_flux[1] c_flux[2] c_flux[3] type auto &
file profile.heatflux ave running
variable scale equal {convert}/${kB}s*{dt}/$T/T/vol
variable k11 equal trap(f_JJ[3])*{scale}
variable k22 equal trap(f_JJ[4])*{scale}
variable k33 equal trap(f_JJ[5])*{scale}
thermo $d
thermo_style custom step temp v_Jx v_Jy v_Jz v_k11 v_k22 v_k33
run 2000000
variable kappa equal (v_k11+v_k22+v_k33)/3.0
print “running average conductivity: ${kappa}”