# 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.

# 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/vol
variable Jy equal c_flux/vol
variable Jz equal c_flux/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 c_flux c_flux type auto & file profile.heatflux ave running variable scale equal {convert}/\${kB}
s*{dt}/\$T/T/vol variable k11 equal trap(f_JJ)*{scale}
variable k22 equal trap(f_JJ)*{scale} variable k33 equal trap(f_JJ)*{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,