Dear LAMMPS users,
I am new to lammps and I am simply trying for the moment to calculate the thermal conductivity of crystalline silicon at 300K using the Muller-Plathe method (input script below).
I use a VELOCITY CREATE to set initial velocities and then FIX NVT to establish the temperature. Then I use FIX NVE for a few timesteps before starting the Muller plate heat flux.
I have two issues:
- Temperature is divided by 2 between the first and second step before it slowly goes back up to the NVT thermostat set temperature (300K). I do not understand why? Should I set my initial velocities differently?
- Once temperature gets back to 300K, it keeps oscillating between 285 and 315K at least, no matter how long I wait for. And then I never get a clean linear temperature profile once I impose the heat flux.
What is it that I am doing wrong? Any piece of advice or information would be greatly appreciated.
Thank you in advance
3d bulk silicon
#Initialization############################################################
units metal
dimension 3
boundary p p p
atom_style atomic
Atom definition##########################################################
lattice diamond 5.43
region simbox block 0 10 0 4 0 4 units lattice
create_box 1 simbox
create_atoms 1 box
mass 1 28.0855
Atoms interactions settings##################################
pair_style sw
pair_coeff * * si.sw Si
#kspace_style pppm 1.0e-4
neighbor 2.0 bin
neigh_modify every 20 delay 0 check no
Equilibrate temperature in NVT
fix 1 all nvt 300.0 300.0 100.0
velocity all create 300.0 5674845
timestep 0.001
thermo_style custom step temp press &
ke vol lx ly lz epair emol etotal
thermo 1000
dump 1 all atom 1000 dump1.silicon
run 1000000
undump 1
unfix 1
#equilibrate in NVE mode ####################################
fix 3 all nve
thermo 1000
dump 2 all atom 1000 dump2.silicon
run 50000
undump 2
reset_timestep 0
#impose heat flux #########################
fix 4 all thermal/conductivity 180 x 20 swap 1
Output temperature profile##############################################
compute ke all ke/atom
variable temp atom c_ke[]/(1.5*8.617343e-5)
fix 5 all ave/spatial 1 1000 1000 x lower 0.5 v_temp &
file tmp.profile units lattice
Output heat flux value##################################################
thermo_style custom step temp press f_4 &
ke vol lx ly lz epair emol etotal
timestep 0.001
dump 3 all atom 1000 dump3.silicon
thermo 900
run 100000
Thomas Coquil
Research Assistant
UCLA Mechanical and Aerospace Engineering Department
420 Westwood Plaza
43-132 ENGINEERING IV
Los Angeles CA, 90095
Tel: 1 626 429 2110
thomas.coquil@…24…