[lammps-users] bond types

hello,

could somebody please help me with the following question:

  I would like to delete bonds between certain atoms, and I think I should first define 2 bond types and than turn one off by using "Fix bond/break or delete_bonds". Now I am slightly confused as I am not sure how to define the second bond type so that it does not interfere with the 1st one.

thank you in advance!

hello,

could somebody please help me with the following question:

perhaps things would be easier if you would give a more
comprehensive example rather than asking general questions
about specific items. those questions are usually difficult to
answer except with "it depends".

I would like to delete bonds between certain atoms, and I think I
should first define 2 bond types and than turn one off by using "Fix
bond/break or delete_bonds". Now I am slightly confused as I am not sure
how to define the second bond type so that it does not interfere with
the 1st one.

well, what you describe _is_ confusing.

different bond types represent different parameter sets.
thus they are essentially independent from the bond
definitions themselves. any bond you define has to be
assigned a bond type but those bond types don't have
to be unique to this one bond. in the simplest case all
bonds have the same type (bead-spring model polymers).
in more complex cases, the bond types depend on the
atom types of the participating atoms.

cheers,
     axel.

p.s.: it would also make answering easier if you would
identify yourself as a real person with a proper name
(i cannot imagine that anybody would be naming
a person "molecular dynamics"...).

Dear Dr Kohlmeyer,

Thank you for your reply, and I apologise for my confusing explanations. I just started working with LAMMPS and I am an undergraduate student, which might partially explain the lack of professionalism.

I have a polymer chain that consists of 100 monomers (bead-spring model as you mentioned in your post), and I need to break bonds between specific atoms (such as atoms 9 and 10, 15 and 16 , for instance).

I am aware of the fix break_bond and delete_bond commands, however, I have not succeeded at incorporating these into my code.
Thank you again!
Sincerely,
Anna

dear anna,

Dear Dr Kohlmeyer,

Thank you for your reply, and I apologise for my confusing explanations. I
just started working with LAMMPS and I am an undergraduate student, which
might partially explain the lack of professionalism.

the most important thing is that you try to provide as much
information as possible, even if it may seem redundant.
asking for help on a mailing list is different from a conversation
in many ways. you have to anticipate that people will not
understand some of your requests and most importantly,
people have not seen what you have tried and _why_.
thus, if you explain what the overall objectives (and not only
the immediate goal) of your efforts are, you have much
better chances to get help.

I have a polymer chain that consists of 100 monomers (bead-spring model as
you mentioned in your post), and I need to break bonds between specific
atoms (such as atoms 9 and 10, 15 and 16 , for instance).

there are quite a few ways of doing this. i assume that this bond
breaking is not to be done in combination with some kind of
thermodynamic integration scheme, right.

so one direct way would be to generate a data file from a restart
and manually edit it.

delete_bonds also is not as bad as it might look at the beginning.
since it requires that all atoms of the deleted bond are included in
the group selection
since you have a simple model, you can just make a group mygroup
for all atoms (9, 10, 15, 16, ...) and then try

delete_bonds mygroup multi remove

there are several other options and strategies to do the same thing.
whatever is best depends a lot of what you want to do with the result
and how you get to this point.

I am aware of the fix break_bond and delete_bond commands, however, I have
not succeeded at incorporating these into my code.

does you input work otherwise?
if yes, why don't you provide the input?
that makes it much easier to discuss details.

furthermore, it very often helps, if you teach yourself
how certain commands work with very small inputs.
this way, you can manually double check everything.
once you have properly figured out how a feature works,
it is much easier to apply this to a larger problem.
if you attack the "big problem" right away, you never
know what exactly is causing your troubles.
particularly complex inputs need to be built in
stages, otherwise they may confuse even
experienced people.

HTH,
   axel.

Dear Dr Kohlmeyer,

Thank you for your reply and for the valuable suggestions on how to learn how to use LAMMPS! I am sending the files as an attachment as you requested, they should be functional.

Currently, I am trying to classify the atoms into groups as you said by creating a group, and I will begin with a single break between atoms 10 and 11.

Thank you very much for your suggestions and help!

Sincerely yours,

Anna

bead_spring.lam.ex.100N.test (806 Bytes)

final.chain.N100.input (7.38 KB)

Dear Dr Kohlmeyer,

Thank you for your reply and for the valuable suggestions on how to learn
how to use LAMMPS! I am sending the files as an attachment as you requested,
they should be functional.

Currently, I am trying to classify the atoms into groups as you said by
creating a group, and I will begin with a single break between atoms 10 and
11.

from looking at the input, i see a complication:
you have angles in addition to the bonds (this is
an example for why more detail is helpful). which
means, that you need to remove the angles that
involve the bond that you want to delete as well.

i would suggest to check very carefully, if the
method i suggested actually does remove the
angles as well. if not, you many need to follow
a different strategy. delete_bonds has some
alternatives and then there is always the option
to process the data file, eg. with the help of
VMD and some tcl scripting.

axel.

You have 3 forms of control over this procedure.

a) the group given to the delete_bonds command
b) the bond type given to the delete_bonds command
c) the bond types you assign to individual bonds in your input data file

Between the 3 of those you should be able to define precisely
which bonds you want to delete.

Steve