Copper Green-Kubo thermal conductivity

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}”

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 am far from an expert in these matters, but have you looked up how much
of the thermal conductivity in copper is ballistic and how much of it is
​due to the electrons (which are not included in G-K calculations for
classical potentials)?

axel.

Dear Axel,

Thanks for pointing it out. You were right that for metals the electrical thermal conductivity dominates the total thermal conductivity. Following Wiedemann-Franz law, ke is calculated to be ~398 W/mK, which is very close to the total thermal conductivity (measured) 385 W/mK. This explains the low lattice thermal conductivity obtained from MD.

Thanks again,