Question about fix wall/reflect

Dear LAMMPS developer,

I’m trying to use “fix wall/reflect” to make a semi-permeable wall. For example, particles can only cross the wall from bottom to top, but will be bounced back when crossing from top to bottom, which should be achieved by zlo.

The simulation shows that if I set zlo at z=10 for a box with height 20, the particles above the wall will be reflected with no issues, but the particles below the wall will also be instantly affected even though they are far away from the wall.

Is “fix wall/reflect” designed to behave like this? If yes, are there any other methods for me to properly create a semi-permeable wall?

Yao Du

Please have a look at the fix oneway command — LAMMPS documentation
It was written with the kind of application you describe in mind (and a few others).

I did a test run with “fix oneway” and it worked as expected. Thanks!