Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lees Edwards Rewrite tracking ticket #2051

Closed
RudolfWeeber opened this issue Jul 9, 2018 · 2 comments · Fixed by #4457
Closed

Lees Edwards Rewrite tracking ticket #2051

RudolfWeeber opened this issue Jul 9, 2018 · 2 comments · Fixed by #4457

Comments

@RudolfWeeber
Copy link
Contributor

The current Lees-Edwards implementation creates duplicte pairs in the short range loop. It produces incorrect short range interactions even for an offset of 0.

The idea is to use a columnar cell and node grid, such that the neighborship relations do not change when the Lees Edwards offset changes.
I.e., the length of the cells in shear directoin is the box length. In the other directions, the cell size is determined by the interaction range and skin as for domain decomposition.

The shift of ghost particles' positions will be removed, also for conventional domain decomposition.

Lees Edwards needs the following:

  • enforce columnar cell and node grid
  • Distance function must refelect LE. Will be used both, in the short range loop and everywhere else
  • Veleocity update, when particles cross the shear plane box boundary.

In the code

  • Change the signature of get_mi_vector to take particles rather than positions, wherever possible
  • Check cell geometry when setting LE offset to values other tthan 0.
  • Remove position shift from ghost particles and adapt short range loop to use get_mi_vector
  • Implement LE-aware velocity difference function for use in DPD, thermalized bonds, etc.
  • Re-introduce code for velocity change when particles cross shear boundary
@fweik fweik changed the title Lees Edwards re-implementation Lees Edwards Rewrite tracking ticket Jul 26, 2018
@pdebuyl
Copy link
Contributor

pdebuyl commented Sep 25, 2018

An update, with @bindgens1

  1. We finalized the interface and the global variable holding the parameters.
  2. get_mi_vector is done.
  3. We modified the algorithm so that it performs only half a velocity update in propagate_vel_pos and the remaining velocity update is in propagate_vel_finalize_p_inst. This should help for the coupling to LB.
  4. There is a testcase
  5. There is a working sample

For now, LE only works with the N-square force computation. But it works properly and I believe that we should merge it soon to avoid a divergence of our branch with respect to the development branch of ESPResSo.

@pdebuyl pdebuyl mentioned this issue Sep 25, 2018
4 tasks
@RudolfWeeber RudolfWeeber added this to the Espresso 4.1 milestone Oct 15, 2018
@pdebuyl
Copy link
Contributor

pdebuyl commented Nov 9, 2018

Hi @RudolfWeeber @fweik

We have again made some progress, including the use of the script interface as requested :-) See https://github.com/pdebuyl/espresso/tree/lees_edwards_rebase

For now, there is one test failing about which @bindgens1 will contact. Once the get_mi_vector merge is done, we are ready to include the feature for good.

@RudolfWeeber RudolfWeeber modified the milestones: Espresso 4.1, Espresso 5 Aug 7, 2019
@kodiakhq kodiakhq bot closed this as completed in #4457 Feb 28, 2022
kodiakhq bot added a commit that referenced this issue Feb 28, 2022
@jngrad jngrad removed this from the Espresso 5 milestone Jun 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants