[lammps-users] fixing both ends of a cylinder

Dear LAMMPs users
I’m modeling a tensile test on a cylindrical shaped aluminum-CNT nanocomposite, and I went to fix the atoms on the top and bottom of the cylinder in the z direction and apply the load on the radial direction of the cylinder
so far, I have tried to use the following commands to fix the atoms and in all I encountered some errors in the deformation process

  1. I have used the fix lineforce command and gave zero forces in the z direction

​in this case, the CNT was crushed in the begining of the deformation

  1. I have used the fix oneway command and allowed the top and bottom atoms to move in the x and y directions only

in this case, all the atoms were leaving and entering the simulation cell

  1. I have used the fix wall/reflect command

​in this case a large number of atoms in the bottom of the cylinder were lost due to the use of non periodic boundary conditions

Is there is any other way that I can follow to fix the bottom and top atoms of the cylinder?

Thanks and regards

When you say fix the atoms on the end, I presume you mean make them immobile.
They you say apply a radial load on the atoms in the middle. How are you planning
to do that and is it a separate constraint from the fixed atoms on the end or related
to the end atoms?


I’m trying to apply a pure radial expansion to the cylinder and I want the atoms to move only in the radial direction and not in the x direction

Again, you don’t say how you are applying a radial load to expand atoms in a radial direction.
If you want atoms on the end to not move in the z direction (but yes move in the xy directions), then
you can use fix setforce to set the z component of force to 0. If their initial z velocity is
also zero, then when they are time integrated they will not move in z.


I’m using fix deform x erate y erate and apply a strain rate to the x and y directions
I did try to use fix setforce as you have explained but it resulted in a total destruction of the CNT as soon as the deformation process started

I assume from your previous emails that your CNT is periodic in z, but not periodic in x or y.
So what does it mean to use fix deform in x and y, the non-PB directions?
How do you do that? Are you forcing the atoms to dilate with the box? That would
be non-physical since those dimensions are non-periodic. What is producing strain
in the radial directions of the CNT? What would keep the atoms strained in xy?
How much and how quickly are you straining it?


I’m using periodic boundaries in all directions
the strain rate that I’m using is (1e-4 /ps) for every time step

fix 1 all nvt temp 300 300 $(100.0*dt)
variable strate equal 1e-4

fix 2 all deform 1 x erate {strate} y erate {strate} units box remap x

The above lines are when I’m applying the strain rate without fixing the atoms in the z directions and it works fine and the cylinder is expanding but when
I try to restrict them from going in the z direction, I get very unreasonable results

ok - thanks for the additional explanation. Is this a simulation of a single CNT,
or an array of them in xy? If a single CNT is the xy box the size of a single CNT
or larger? If larger, then you are doing something unphysical by stretching
the box in xy and forcing the CNT atoms to track the box. There is no physical
force in the xy directions that would sustain that strain.

If you don’t fix the atoms in z, what happens to them when you apply a strain in xy?
Do they stay in roughly the same z position since the box is periodic in z?
I suggest you check this via viz.

Then when you fix the end atoms in z (but not xy), what happens to the end atoms.
Do they dilate in xy along with the CNT atoms? Did you tell fix deform to also
dilate the end atoms?

Finally, does anything behave differently if you use a strain rate that is 10x slower
or more? All kinds of things can go bad with too large a strain rate.



Dear Steve