Replies: 1 comment
-
Yes, of course HOOMD-blue correctly wraps vectors in the z direction on both the CPU and GPU. Many unit tests and all validation tests would fail if this were not the case. Read the full code carefully and you will see that it performs the same operation (for shifts of up to one box image). The comment explains why the code paths are different: Lines 343 to 358 in ec0b84c |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello HOOMD developers,
I use the function
HOSTDEVICE Scalar3 minImage(const Scalar3& v) const {}
of BoxDim.h in Line 317 quite often in my personal modifications and was asking myself why for GPU-computation we calculate
Scalar img = slow::rint(w.z * m_Linv.z);
in z-direction in Line 325 but for CPU-computation this is missing. For x- and y-direction it is implement with e.g.
int i = int(w.y * m_Linv.y + Scalar(0.5));
in Line 364.
Unluckily I am not that deep into the domain decomposition but still curious if there maybe is a mistake in the code but since the domain can also be decomposed in z-direction.
Kind regards and thank you in advance
Daniel
Beta Was this translation helpful? Give feedback.
All reactions