Proper way to define edge boundary condition

Dear lammps users;
I'm currently working on graphene sheet and I'm wondering what is the best way to set edge boundary conditions such as simply supports and clamps.
I'm using the "fix # bottom move linear NULL 0 0 units box" and "fix # top move linear NULL 0 0" to set the supports and i define simply by choosing 1 layers of atoms in the top/bottom groups and 3 layers for the clamped one.
Is this correct? because I'm not getting proper answers. thanks in advance.

Dear lammps users;
I'm currently working on graphene sheet and I'm wondering what is the best way to set edge boundary conditions such as simply supports and clamps.
I'm using the "fix # bottom move linear NULL 0 0 units box" and "fix # top move linear NULL 0 0" to set the supports and i define simply by choosing 1 layers of atoms in the top/bottom groups and 3 layers for the clamped one.

using fix move to partially immobilize atoms is an odd choice. you are
inviting problems, because you have to time integrate the x directions
and LAMMPS get confused when atoms are time integrated twice. you
should be able to achieve the same effect, but selectively setting
velocity and force in y and z direction for those atoms to zero with
the velocity and fix setforce commands, and then just do a time
integration with fix nve on them. in case you also want to apply a
thermostat, please keep in mind, that those partially immobilized
atoms have lost two degrees of freedom each and you need to correct
for it, since the temperature computes in LAMMPS cannot know this.

Is this correct? because I'm not getting proper answers. thanks in advance.

i am not surprised. it can be made to give a correct answer, but it is
very, very tricky. the approach described above is much easier to get
right.

axel.