[lammps-users] ... the command "fix thermal/conductivity"?

A few thoughts regarding the cause of non-linear temperature profiles
with LAMMPS's fix thermal/conductivity:

1) The system hasn't reached steady state. To check, split the data
into smaller chunks and verify that every chunk yields the same

2) RNEMD swaps are transferring energy faster than the swap bins can
re-thermalize. To check, plot a histogram of particle energies in the
swap bins and compare with a Maxwell-Boltzmann distribution at the
calculated temperature.

3) If you're swapping energy between atoms of large-ish molecules, the
characteristic time required to transfer energy between neighboring
molecules may be long-ish, leading to a relative accumulation of
intramolecular energy in the swap bins. To check, calculate a
molecular temperature profile and compare it with the atomic
temperature profile.

To generate molecular temperature profiles, I use a series of LAMMPS
commands like those below and then post-process the resulting file.


compute MOLcom all com/molecule # x y z
variable mass atom mass
variable px atom mass*vx
variable py atom mass*vy
variable pz atom mass*vz
compute ke all ke/atom
compute MOLkin all atom/molecule v_mass v_px v_py v_pz c_ke
fix MOL all ave/time 1 1 \{mol\_freq\} c\_MOLcom c\_MOLkin mode vector file {outname}.mol ave one title3 "# mol x y z mass px py pz