← Back to team overview

yade-users team mailing list archive

Re: [Question #698392]: I calculated the kinetic energy by E=0.5mv^2+0.5Iw^2 but it is not equal to kineticEnergy() when O.cell.velGrad is set


Question #698392 on Yade changed:

    Status: Open => Answered

Jan Stránský proposed the following answer:
Probably again only source code is relevant here [4].

The idea is this:
Let's have a particle at (0,0,0), i.e. one corner of periodic cell.
Properties of the particle should (must) be identical with its periodic images (in this case e.g. particles in other corners of the periodic cell). See [5] and pictures there for a reference.
Let's say the (0,0,0) particle has zero velocity.
Now consider the cell has some velGrad. E.g. it is stretching in x direction. Then he "image particles" in the "right face" of the cell has some non-zero positive velocity.
Now, from the periodicity point of view, it should not matter if you choose the (0,0,0) particle or any of its periodic images.
The (0,0,0) particle has zero velocity, the periodic images have non-zero velocity, which one should be chosen?? The "fluctuation part" of the velocity is chosen in Yade.

Similarly it is with angular velocity and cell spin [6]


[4] https://gitlab.com/yade-dev/trunk/-/blob/master/core/Cell.hpp#L121
[5] https://yade-dem.org/doc/formulation.html#periodic-boundary-conditions
[6] https://gitlab.com/yade-dev/trunk/-/blob/master/core/Cell.hpp#L216

You received this question notification because your team yade-users is
an answer contact for Yade.