I’ve got some questions concerning the boundary conditions in LAMMPS.
(1) What exactly is the behaviour of the boundary conditions “f” and “m”? If one applies fixed boundary conditions, I’d expect the particles not to cross the fixed boundaries. But it seems like this happens if the boundary condition “f” is used. With the boundary condition “m” the particles are not leaving the simulation box. My condensed question is: What is the exact definition of “f” and “m”.
(2) The 2nd question is: Where are the boundary conditions evaluated in the source code? Only in domain.cpp with void Domain::minimum_image(double &dx, double &dy, double &dz) ? So far I was not able to track down where exactly the particle positions are updated in regard to the fixed boundaries. With fixed in this case I mean boundaries, which cannot be crossed such that the particles will stay in the inner of the simulation box.