still:new bond exceeded bonds per atom in fix bond/create

Hi,everyone:
I am using LAMMPS( 64-bit 20140411) to simulate a typical chemical reaction. 500 type1 beads and 500 type2 beads are generated randomly.
“fix createbond all bond/create 200 1 2 1.0 1 iparam 2 3 jparam 1 4 prob 0.3679 123546” is used to simulate the chemical reaction.
BEFORE REACTION : 1+2 (1and2 are free beads)
AFTER REACTION ONCE : 1=4 ( beads type2 convert to type 4 with a maximum bond number defined in jparam, “=” means a chemical bond)

BEFORE REACTION of the 2rd time: =1+2( "“represents a bead, “=” represents a chemical bond,”*=1" represents a type1 beads who have reacted once )
AFTER REACTION of the 2rd time : *=3=4( beads type2 convert to type 4 according to jparam,beads type 1 covert to type3 according to iparam)

I have read the manual many times, and have set the"extra bonds per atom" parameter in the data file,and with a “special_bonds lj 0 1 1 extra 2” for the extra space storing the K additional bonds.

In the data file,N extra bonds per atom are allowed,here N=2.

Initially,there are no bonds in the system.So, 0 bonds in the header of data file,but I still have to add arbitrary but exact N extra bonds (N=2) as follow to satisfy lammps’ code.

Bonds

1 1 1 2

2 1 4 5

Moreover,when new bonds are formed, I got the following ERROR

ERROR on proc 0: New bond exceeded bonds per atom in fix bond/create

Here is my in file and data file,can anyone tell me how to fix this ?

in (1.23 KB)

test.data (52.4 KB)

Hi,everyone:
I am using LAMMPS( 64-bit 20140411) to simulate a typical chemical
reaction. 500 type1 beads and 500 type2 beads are generated randomly.
"fix createbond all bond/create 200 1 2 1.0 1 iparam 2 3 jparam 1 4 prob
0.3679 123546" is used to simulate the chemical reaction.
BEFORE REACTION : 1+2 (1and2 are free beads)
AFTER REACTION ONCE : 1=4 ( beads type2 convert to type 4 with a
maximum bond number defined in jparam, "=" means a chemical bond)

BEFORE REACTION of the 2rd time: *=1+2( "*"represents a bead, "="
represents a chemical bond,"*=1" represents a type1 beads who have reacted
once )
AFTER REACTION of the 2rd time : *=3=4( beads type2 convert to type 4
according to jparam,beads type 1 covert to type3 according to iparam)

I have read the manual many times, and have set the"extra bonds per atom"
parameter in the data file,and with a "special_bonds lj 0 1 1 extra 2" for
the extra space storing the K additional bonds.

In the data file,N extra bonds per atom are allowed,here N=2.

Initially,there are no bonds in the system.So, 0 bonds in the header of data
file,but I still have to add arbitrary but exact N extra bonds (N=2) as
follow to satisfy lammps' code.

no. i can safely delete those lines form the data file. in fact,
having this section present is an error.

Bonds

   1 1 1 2

   2 1 4 5

Moreover,when new bonds are formed, I got the following ERROR

ERROR on proc 0: New bond exceeded bonds per atom in fix bond/create

Here is my in file and data file,can anyone tell me how to fix this ?

the problem is that your data file is not correct. you have:

2 extra bonds per atom

but you should have:

2 extra bond per atom

making this change and removing the Bonds section results in a working input.

since this is likely to be an easy to make mistake and it is difficult
to debug, i will propose to steve to support both versions. at least,
i will commit it to the LAMMPS-ICMS branch that is used to build the
windows installers.

axel.