[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: a bug or a feature?

From: Rudolf Weeber
Subject: Re: a bug or a feature?
Date: Fri, 16 Apr 2021 16:30:52 +0200


the expected behavior is ( in my opinion):
If (and only if) there are periodic boundaries in a given direction, minimum 
image convenion is applied for distance calculation (bond or otherwise).

The observed behavior of ES is:
* with pbc: correct:
* without pbc: only correct if the pbc was turned off, before the particle was 
placed. That's a bug. The order of particle placement and boundary condition 
setup should not matter.


import espressomd
from espressomd.interactions import HarmonicBond

system = espressomd.System(box_l=[1]*3) =0
system.time_step = 0.01

h = HarmonicBond(r_0=0,k=1)
system.periodicity = False, False, False
p1 =system.part.add(pos=[0,0,0])
p2 =system.part.add(pos=[1,0,0],bonds=[(h,p1)])
assert["total"] ==0

print(p1.pos, p1.image_box, p2.pos,p2.image_box)
system.periodicity = False, False, False
print(p1.pos, p1.image_box, p2.pos,p2.image_box)

assert["total"] == 0.5 # 1/2 (k*r)^2

* If you swap the order, i.e., check the non-periodic case first, it passes
* The behavior is apparently not due to a change in pos or image box counter on 
the particles.

Or am I missing sth?

Regards, Rudolf
Dr. Rudolf Weeber
Institute for Computational Physics
Universität Stuttgart
Allmandring 3
70569 Stuttgart
Phone: +49(0)711/685-67717

reply via email to

[Prev in Thread] Current Thread [Next in Thread]