Fix bond/create problem

Dear all,
i have a problem with fix bond/create command.
I have two types of atoms in the system, a layer of type 4 atoms and one atom type 3.
These atoms are in the same group and when atom type 3 is at a certain distance from atoms type 4 it must
change type from 3 to 4. In my input file i have

fix 3 chem bond/create 1 3 4 3.0 1 iparam 1 4

I receive the following error:
ERROR: Invalid fix style (modify.cpp:647). This happens with the last version of the code.

Using an older version instead, for example Apr11, the program starts normally but the following,
very strange, thing happens:
at the end the atom type 3, without changing its type, overlaps with an atom type 4. It seems that the interactions
of this atom whit the atom type 4 to which it overlaps are turned off while it continues to feel the neighbors type 4 atoms.
Have you some ideas on how to solve this problem? Am i doing some error in the input.

Thank you for your help!
M

Dear all,
i have a problem with fix bond/create command.
I have two types of atoms in the system, a layer of type 4 atoms and one atom type 3.
These atoms are in the same group and when atom type 3 is at a certain distance from atoms type 4 it must
change type from 3 to 4. In my input file i have

fix 3 chem bond/create 1 3 4 3.0 1 iparam 1 4

I receive the following error:
ERROR: Invalid fix style (modify.cpp:647). This happens with the last version of the code.

did you install the MC package when compiling it?

this error message hints at you didn't.

cheers,
     axel.

Yes i have not installed the MC package but also with the new version i have the same problem:

Two types of atoms in the system, a layer of type 4 atoms and one atom type 3.
These atoms are in the same group and when atom type 3 is at a certain distance from atoms type 4 it must
change type from 3 to 4. In my input file i have

fix 3 chem bond/create 1 3 4 3.0 1 iparam 1 4

At the end the atom type 3, without changing its type, overlaps with an atom type 4. It seems that the interactions
of this atom whit the atom type 4 to which it overlaps are turned off while it continues to feel the neighbors type 4 atoms.

Many thanks
Michele

Yes i have not installed the MC package but also with the new version i have the same problem:

Two types of atoms in the system, a layer of type 4 atoms and one atom type 3.
These atoms are in the same group and when atom type 3 is at a certain distance from atoms type 4 it must
change type from 3 to 4. In my input file i have

fix 3 chem bond/create 1 3 4 3.0 1 iparam 1 4

At the end the atom type 3, without changing its type, overlaps with an atom type 4. It seems that the interactions
of this atom whit the atom type 4 to which it overlaps are turned off while it continues to feel the neighbors type 4 atoms.

ciao michele,

can you provide a simple/small input example that
is showing this behavior and is small enough to be
easily debugged?

grazie,
    axel.

Ciao Axel,

i attach to this mail the input files for a very small system. The problem seems to be the same
also in this trivial case.

Grazie a te
Ciao Ciao

in.debug (885 Bytes)

data.debug (416 Bytes)

Ciao Axel,

i attach to this mail the input files for a very small system. The problem seems to be the same
also in this trivial case.

i don't really see the problem here.
if i dump the coordinates more frequently
it becomes evident what is happening and
it makes perfect sense to me:

the "test particle" gets closer to the surface
and at some point gets "captured" by that
particle and the LJ interaction is replaced
by the bond as requested in fix bond create.
also you set up that atom type 1 can have
only one bond and will be changed to atom
type 2, whenthat maximum is reached, and
that happens as well.

after the bond is formed, the kinetic energy
in atom 1 results in strong harmonic vibration
of the atom due to the bond and also some
rotation around the captured particle, which
seems to be directing it so that i does the
rotation along the diagonal.

so far, i cannot detect anything that is not
like i would expect it from the documentation.

axel.

multiplot.jpg

Ok. I have interpreted wrongly the documentation since
i understood that the original pair interaction, between the captured
particle and the capturing one, had to survive.
Thank you

Ciao
Michele

Ok. I have interpreted wrongly the documentation since
i understood that the original pair interaction, between the captured
particle and the capturing one, had to survive.

but you set up your special_bonds setting
so that it should be excluded.

axel.

Yes but if I did not i get
ERROR: Fix bond/create requires special_bonds lj = 0,1,1 (fix_bond_create.cpp:187)

M

Dear all,
using the fix bond/create command i change particles type to a newtype let us say
from type 1 to 2.
However if i try to count the number of atoms in newtype and i print it doing
variable y equal count(newtype)
run 10000 every 1000 "print $y"
this number is always constant even if some atoms has changed type. I am sure
that some particles changed type from the dump files.
How can i get the updated number of atoms of a given type in a group?

Ciao
M

Dear all,
using the fix bond/create command i change particles type to a newtype let us say
from type 1 to 2.
However if i try to count the number of atoms in newtype and i print it doing
variable y equal count(newtype)
run 10000 every 1000 "print $y"
this number is always constant even if some atoms has changed type. I am sure
that some particles changed type from the dump files.
How can i get the updated number of atoms of a given type in a group?

groups are static, i.e. once the group is defined, its members don't change
even if the condition that was originally used will now yield a different set
of members. you would have to use compute reduce or delete and redefine
your group.

axel.

Dear Michelle,

I suggest you run your simulation in a loop with 1000 steps within a loop define a group, printout its count and delete the group.

Regards,
Vikas

Ok! Done
Thank you

M