implementing langevin npt

Hello lammps developers,

I try to implementing the langevin dynamics in the npt ensemble
for now only the isotropic volume fluctuations.
I use your the codes fix_nh.cpp and fix_temp_csld.cpp as guide,
the idea is use two langevin thermostat, one couple to particles
velocities and the other couple to barostat velocity(Bussi), similar that
use two nose-hoover thermostat in the NPT dynamics(Tuckerman).

So I have a problem the lost atoms when run the simulation in parallel
with my fix, but the more curiously is when run the simulation in one
single cpu not have any problem to indicate bad dynamics of the fix
langevin/npt/iso, the average quantities are in agreement when I use the
fix NPT (files AverageLangeviNPT.dat and AverageNoseHooverNPT.dat), it
seems that the atoms moved further than one processor's sub-domain away
before
reneighboring, I don't know to explain this kind of behavior and fix that,
any suggestion and advice will be well received.
In annex I send the inputs files and results that obtained with a single
cpu and 24 cpus in parallel with the Langevin npt dynamics, and also with
the fix npt dynamics.

References
Bussi et al., Isothermal-isobaric molecular dynamics using stochastic
velocity rescaling, J. Chem. Phys. 130, 074101 (2009).
Tuckerman et al., J Phys A: Math Gen, 39, 5629 (2006).

I hope you replay
Samuel

in.SiliconNoseHoover (1.09 KB)

log.lammpsLangevinNPT24cpu (8.58 KB)

log.lammpsNoseHooverNPT (91.9 KB)

Si.sw (653 Bytes)

AverageNoseHooverNPT (223 Bytes)

AverageLangevinNPT.dat (223 Bytes)

log.lammpsLangevinNPT1cpu (91.9 KB)

in.SiliconLangevinNPT (1.1 KB)

Hello lammps developers,

I try to implementing the langevin dynamics in the npt ensemble
for now only the isotropic volume fluctuations.
I use your the codes fix_nh.cpp and fix_temp_csld.cpp as guide,
the idea is use two langevin thermostat, one couple to particles
velocities and the other couple to barostat velocity(Bussi), similar that
use two nose-hoover thermostat in the NPT dynamics(Tuckerman).

So I have a problem the lost atoms when run the simulation in parallel
with my fix, but the more curiously is when run the simulation in one
single cpu not have any problem to indicate bad dynamics of the fix
langevin/npt/iso, the average quantities are in agreement when I use the
fix NPT (files AverageLangeviNPT.dat and AverageNoseHooverNPT.dat), it
seems that the atoms moved further than one processor's sub-domain away
before
reneighboring, I don't know to explain this kind of behavior and fix that,
any suggestion and advice will be well received.
In annex I send the inputs files and results that obtained with a single
cpu and 24 cpus in parallel with the Langevin npt dynamics, and also with
the fix npt dynamics.

​why not simply implement your barostat as a variant of fix
press/berendsen?​
that seems much more logical and reduces complexity and code duplication.
also, i would use fix press/berendsen as a reference to figure out optimal
parameters for pressure control.

​with a single subdomain and periodic or shrinkwrap boundaries, you cannot
lose atoms.

​axel​