JuliaMolSim / Molly.jl

Molecular simulation in Julia
Other
372 stars 51 forks source link

Update atom i&j partners correctly #59

Closed Ruibin-Liu closed 2 years ago

Ruibin-Liu commented 2 years ago

When deleting and adding a bond between atom i and j, the previous actions:

delete!(atom_i.partners, atom_j.i)
delete!(atom_j.partners, atom_j.i)

and

 push!(atom_i.partners, atom_j.i)
 push!(atom_j.partners, atom_j.i)

would get atom i's partners correctly, but only delete/add itself from atom j's partners. Instead, we should change as below:

delete!(atom_i.partners, atom_j.i)
delete!(atom_j.partners, atom_i.i)

and

 push!(atom_i.partners, atom_j.i)
 push!(atom_j.partners, atom_i.i)
jgreener64 commented 2 years ago

You are correct, thanks.