Radial deformation of cylindrical nanowire

Dear LAMMPS Users

I am trying to simulate radial deformation of single walled carbon nanotube which is a cylindrical nanowire made of single atomic-layer-thick carbon atoms. The objective of this simulation is to calculate the potential energy of the nanotube as a function of its radial stretch.

For that purpose I want to deform the nanotube radially such that the nanotube radius gets increased but the shape of nanotube cross-section remains circular. I have tried the box relax option but it does not squeeze/dilate the nanotube uniformly which results in non-circular cross section. Is there any option available in LAMMPS that I can use to deform a cylindrical nanowire radially.

Any suggestion will be greatly appreciated.

Dear LAMMPS Users

I am trying to simulate radial deformation of single walled carbon nanotube
which is a cylindrical nanowire made of single atomic-layer-thick carbon
atoms. The objective of this simulation is to calculate the potential energy
of the nanotube as a function of its radial stretch.

For that purpose I want to deform the nanotube radially such that the
nanotube radius gets increased but the shape of nanotube cross-section
remains circular. I have tried the box relax option but it does not
squeeze/dilate the nanotube uniformly which results in non-circular cross
section. Is there any option available in LAMMPS that I can use to deform a
cylindrical nanowire radially.

changing the box makes little sense in this context. deformation can
only come from interaction with periodic images, but if you want the
energy change from the radial stretch, you should use shrinkwrap
boundaries instead, so that periodic images are not present at all.

in order to achieve the desired deformation, it would be much better
to manipulate the atom positions directory, e.g. using fix move or fix
addforce. both fixes accept atomstyle variables, where you can easily
compute the individual deformation vectors for each atom.

axel.

@Amar,

IF you deform the nanowires Radially , thus what is the garantee that the cross-section will remain circular ? … Well I belive that if we stretch the nanowire radially , the nanowires will tend to stretch arbitarily. I would belive only for small deformation the cross sectional area remains circular. but is only intuition and I might be wrong,

A salute

Oscar G,

Dear Dr. Axel
Thank you for your reply. Is there any easier way to use the fix addforce or fix move atom since I have many atoms in the simulation domain.
However, I have figured out an alternate way by writing a small code which updates the data file containing the atom position and after updating
the positions I call lammps to compute the potential energy by using compute pe command. I hope I am not making any fundamentally wrong
mistake.

With Regards
Amar Nath Roy Chowdhury
Graduate Research Student
Department of Civil Engineering
National University of Singapore

There is no easier way than using fix move with an atom style variable. it would be the same effort regardless of the number of atoms. If you think differently, you probably have not fully understood the documentation.

Axel

Dr. Axel I donot think differently. I am trying use fix variable to define motion depending on the coordinates of individual atoms which will be used in fix move to perform radial stretching simulation. I want to define the variable in such a way that at every instant the direction of motion an atom is calculated with respect its undeformed position. So I need to store the initial coordinates of the atom prior to MD simulation. Is there any way to define an array in LAMMPS input file to store the initial coordinates of the atoms so that, I can use the array inside fix variable?

With Regards
Amar Nath Roy Chowdhury
Graduate Research Student
Department of Civil Engineering
National University of Singapore

Dr. Axel I donot think differently. I am trying use fix variable to define motion depending on the coordinates of individual atoms which will be used in fix move to perform radial stretching simulation. I want to define the variable in such a way that at every instant the direction of motion an atom is calculated with respect its undeformed position. So I need to store the initial coordinates of the atom prior to MD simulation. Is there any way to define an array in LAMMPS input file to store the initial coordinates of the atoms so that, I can use the array inside fix variable?

why should such a complication necessary. if you move your atoms with
fix move along the provided vectors, the direction of those atoms will
not change and if you initially place the nanotube into the origin, it
will be rather simple to compute that variable.. that is the whole
point of using fix move.

axel.

Noted with thanks
With Regards
Amar Nath Roy Chowdhury
Graduate Research Student
Department of Civil Engineering
National University of Singapore

Dear Oscar

I feel it will depend on which direction we are straining the tube. Under isotropic dilation the cross section will remain circular until it fractures. Whereas, when the deformation tries to squeeze the cross section geometric instability will take place. At small strain the cross-section will definitely stay circular.

Thanks for your comment.

And there is a way to store any atom property (e.g. position)
for access by a variable at a later time, namely fix store/state.

Steve

And there might be a way to hack the FIX MOVE library, and change the variables to instead of using the The linear style that moves the atoms X= (x,y,z) X(t) = X0 + V * delta ,THEN make R(t) = (r, theta , psi) and R(t) = Ro + V*delta …(easy uh?)

A salute
Oscar G.

Dear Oscar

I feel it will depend on which direction we are straining the tube. Under
isotropic dilation the cross section will remain circular until it
fractures. Whereas, when the deformation tries to squeeze the cross section
geometric instability will take place. At small strain the cross-section
will definitely stay circular.

please make sure that you know what your model is in relation to
experiments. the circular deformation that you asked for is a
completely artificial process with no way to be reproduced in an
experiment. to model any form of (bulk) isotropic deformation, you
*will* have to use a periodic system, probably containing multiple
nanotubes for increased realism and then deform the box and not move
atoms. one has to be very clear about intra-CNT and inter-CNT
interactions and how they affect the system. i am not convinced that
the inter-CNT interaction is perfectly isotropic to the center of the
individual CNT. i find it more likely, that it does not become
visible, because the intra-CNT interactions are so much stronger. also
at finitely temperature, there are vibrations that induce (temporary)
deformations, too.

axel.

axel.

I appreciate your reply

Thank you. I was looking for this.

Hi Oscar. I am actually doing this. Instead of hacking the library I wrote a small code which does this job for me. Thank you for your suggestion J

Dear Dr. Kohlmeyer
Yes you are correct the deformation I am applying on the cnt is completely artificial. There are two reasons I am applying this artificial deformations

1. To obtain a continuum strain energy density function so that I can convert the atomic configuration to a cylindrical membrane.

2. Researchers have reported radial breathing frequencies of CNT. So, I wanted to perturb the CNT radially and perform MD to extract its breathing frequency.

I think I have resolved it now.

I really appreciate all the useful suggestions, criticisms I got from Dr. Guerrero , Dr. Kohlmeyer and, Dr. Plimpton. Thank you very much.

AMAR wrote:
I really appreciate all the useful suggestions, criticisms I got from Dr. Guerrero , Dr. Kohlmeyer and, Dr. Plimpton. Thank you very much.

COMMENT:
I;m not a Dr (Phd) …=) . I only have a Master degree in Physics, but anyways thank you for calling me Dr. Guerrero ^______^

A Salute
Oscar G.

J

Sounds like the modified fix move is doing what you want. However, be
aware that you are making some assumptions:

1. At 0 K, all CNT atoms are equidistant from the cylinder axis. This
is true only if the minimum energy configuration is free of puckering
etc.

2. At 300 K, all CNT atoms are equidistant from the cylinder axis.
This is never true, since all the atoms are randomly displaced and
there are also presumably long wavelength collective displacements,
but if Assumption 1 is exactly true, then this is probably a pretty
good approximation.

If you really want to study breathing modes and an effective
cylindrical membrane, then I suggest you first come up with a good
physical model of this using normal mode analysis or a suitable
continuum mechanics model. Then you can run dynamics at whatever
temperature you are interested in and fit the model parameters to the
observed atom displacements.

Aidan

Dear Dr. Thompson

Thank you for your valuable comments and suggestions. Yes you are right if the minimum energy configuration is not a wrinkle then I cannot assume
that the nanotube is a true cylinder. Luckily the minimum energy configuration is almost a cylinder for my case. I perturbed the nanotube geometry by
imposing 1 % radial strain then used operational modal analysis to extract breathing mode frequencies.

Thank you for the comments. Really appreciate it.

With Regards
Amar Nath Roy Chowdhury
Graduate Research Student
Department of Civil Engineering
National University of Singapore