{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":1524644,"defaultBranch":"python","name":"espresso","ownerLogin":"espressomd","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2011-03-25T07:43:15.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/689837?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1683296213.0","currentOid":""},"activityList":{"items":[{"before":"6c332aa3ebdbd4269709edbca41d4f4054d87a96","after":"4ee4c166bddded2a03bc4643f068746206cb02ab","ref":"refs/heads/python","pushedAt":"2024-05-10T15:38:04.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"LB GPU communicator (#4919)\n\nDescription of changes:\r\n- use a more efficient communication scheme for LB fields stored in device memory","shortMessageHtmlLink":"LB GPU communicator (#4919)"}},{"before":"cfe34cd5e2bcd03ba9e7a50fd8aae8a21d9f42f6","after":"6c332aa3ebdbd4269709edbca41d4f4054d87a96","ref":"refs/heads/python","pushedAt":"2024-05-08T12:07:01.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Improve stability of CI/CD pipelines (#4917)\n\nDescription of changes:\r\n- update the pylint config file (fixes #4918)\r\n- C++: fix several instances of `-Wunused-parameter` and `-Wsign-compare`\r\n- CMake: fix linker warnings in ScaFaCoS and Kokkos, simplify configuration of the `espresso::scafacos` target\r\n- CMake: simplify dependency tree of `espresso::core`, `espresso::walberla`, `espresso::walberla_cuda` targets\r\n- address Jupyter warnings with a newer Docker image where the Jupyter environment is properly set up\r\n- bump Node.js to v20 to address GitHub Actions deprecation warnings\r\n- add jq dependency to address GitHub bot script failures","shortMessageHtmlLink":"Improve stability of CI/CD pipelines (#4917)"}},{"before":"8e2ef76f8edc4d4e10336cc29271380b41b8be0b","after":"cfe34cd5e2bcd03ba9e7a50fd8aae8a21d9f42f6","ref":"refs/heads/python","pushedAt":"2024-04-30T21:14:58.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Unify steepest descent in the tutorials (#4915)\n\nDescription of changes:\r\n- use the same steepest descent protocol in all tutorials (fixes #4907)\r\n- rename \"warmup\" to \"overlap removal\" with steepest descent (fixes #4909)\r\n- normalize magnetic moments by $\\mu_0$ (fixes #4908)","shortMessageHtmlLink":"Unify steepest descent in the tutorials (#4915)"}},{"before":"e3ce02f943beb7f18dcae5c7139abe9284636252","after":"8e2ef76f8edc4d4e10336cc29271380b41b8be0b","ref":"refs/heads/python","pushedAt":"2024-04-26T15:49:23.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Improve documentation of integrators and thermostats (#4914)\n\nFixes #4812 \r\n\r\nChanges:\r\n- Shuffle paragraphs around.\r\n- General clean-up\r\n- vector notation","shortMessageHtmlLink":"Improve documentation of integrators and thermostats (#4914)"}},{"before":"c1c377155b30dab82f8d8e4f803464d68bf809e5","after":"e3ce02f943beb7f18dcae5c7139abe9284636252","ref":"refs/heads/python","pushedAt":"2024-04-26T11:01:06.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Add lattice-Boltzmann CUDA kernels (#4734)\n\nDescription of changes:\r\n- Add support for waLBerla GPU kernels\r\n - not yet supported: Lees-Edwards boundary conditions and VTK writers on the GPU\r\n - performance issues: CUDA kernels are not launched in parallel but sequentially without CUDA MPS, only affects simulations with more than 1 MPI rank; also slice getters/setters are quite slow","shortMessageHtmlLink":"Add lattice-Boltzmann CUDA kernels (#4734)"}},{"before":"6437392135d847e657b829c821eb3c9c1f280cce","after":"c1c377155b30dab82f8d8e4f803464d68bf809e5","ref":"refs/heads/python","pushedAt":"2024-04-24T12:18:09.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Bump all version requirements (#4905)\n\nDescription of changes:\r\n- migrate to Ubuntu 24.04, Debian 12, Fedora 40, macOS 13\r\n - update all Python package requirements accordingly\r\n - apply new formatting rules and add `# nopep8` on f-strings that break `autopep8`\r\n - apply new linter rules and remove rules with too many false positives\r\n- bump version requirements of waLBerla and Caliper\r\n- rewrite handling of CUDA-specific CMake variables to follow best practices\r\n- enable compiler warnings on CUDA source files\r\n- introduce a new CI tag `reuse-artifacts-same-arch` to guarantee that CI jobs that download ESPResSo binaries from a previous CI job will always execute on a host runner with the same CPU architecture (to mitigate an issue where ESPResSo built with architecture-specific compiler flags on AMD ends up running on an Intel CPU)\r\n- fix malformed Python strings in matplotlib labels containing LaTeX math\r\n - Jupyter modules like `nbconvert` now raise warnings when strings contain e.g. `$\\sigma$` instead of `$\\\\sigma$`","shortMessageHtmlLink":"Bump all version requirements (#4905)"}},{"before":"9db4de10f22c82e9f0ec1333fc046226fe5ded71","after":"6437392135d847e657b829c821eb3c9c1f280cce","ref":"refs/heads/python","pushedAt":"2024-04-09T14:46:25.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Fix inertialess tracers coupling (#4903)\n\nFixes #4902\r\n\r\nDescription of changes:\r\n- couple inertialess tracers to the correct LB grid points","shortMessageHtmlLink":"Fix inertialess tracers coupling (#4903)"}},{"before":"4285bb685c4c5e5b1fca8a3c4abfada8c5f0319e","after":"9db4de10f22c82e9f0ec1333fc046226fe5ded71","ref":"refs/heads/python","pushedAt":"2024-04-09T11:19:39.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Disable box length reset when particles are present (#4901)\n\nFixes #4834\r\n\r\nDescription of changes:\r\n- Resizing the box via `system.box_l = new_box_l` now throws a runtime error if there are particles present, because particle position folding cannot be guaranteed to be correct; use `system.change_volume_and_rescale_particles()` instead, which properly rescales particle positions.","shortMessageHtmlLink":"Disable box length reset when particles are present (#4901)"}},{"before":"f642a45f0c333a619f59a7b528d43c66e66309fb","after":"4285bb685c4c5e5b1fca8a3c4abfada8c5f0319e","ref":"refs/heads/python","pushedAt":"2024-04-05T14:11:58.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Improve user guide chapters on observables and constraints (#4898)\n\nFixes #4897\r\n\r\nDescription of changes:\r\n- fix issues in the description of observable return values and array shapes\r\n- fix vector notation in the expressions of single-particle force constraints\r\n- make notation more consistent across particle-based observables","shortMessageHtmlLink":"Improve user guide chapters on observables and constraints (#4898)"}},{"before":"7ad0534debbbe9dac048f4ff322054001de24587","after":"f642a45f0c333a619f59a7b528d43c66e66309fb","ref":"refs/heads/python","pushedAt":"2024-03-28T20:23:08.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Fix nightly builds (#4894)\n\nFixes #4850\r\n\r\nCloses #4849 Closes #4851 Closes #4857 Closes #4860 Closes #4862 Closes #4861 Closes #4863 Closes #4865\r\nCloses #4868 Closes #4869 Closes #4871 Closes #4873 Closes #4875 Closes #4876 Closes #4877 Closes #4878\r\nCloses #4879 Closes #4880 Closes #4881 Closes #4882 Closes #4883 Closes #4885 Closes #4886 Closes #4887\r\nCloses #4888 Closes #4889 Closes #4890 Closes #4891 Closes #4892 Closes #4893 Closes #4895 Closes #4896\r\n\r\nDescription of changes:\r\n- fix particle crossing the ELC gap in the electrodes tutorial\r\n- disable ASAN checks due to broken dependencies on the host machines","shortMessageHtmlLink":"Fix nightly builds (#4894)"}},{"before":"2e7b11b86a217fab5b778f1857869cb7ae68d2d1","after":"7ad0534debbbe9dac048f4ff322054001de24587","ref":"refs/heads/python","pushedAt":"2024-02-29T13:23:59.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Remove MPI static globals (#4858)\n\nFixes #4856\r\n\r\nDescription of changes:\r\n- fix multiple bugs caused by undefined behavior due to the static initialization order of MPI global objects\r\n- ESPResSo is now compatible with Boost 1.84+","shortMessageHtmlLink":"Remove MPI static globals (#4858)"}},{"before":"5cc83611906244af90a0b43324a2ba4c86cd4591","after":"2e7b11b86a217fab5b778f1857869cb7ae68d2d1","ref":"refs/heads/python","pushedAt":"2024-02-26T10:26:08.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Refactor waLBerla bridge (#4864)\n\nFixes #4859, fixes #4855\r\n\r\nDescription of changes:\r\n- bugfix:\r\n - LB boundaries are now properly communicated in the ghost layer\r\n - see details in #4859\r\n- performance:\r\n - the LB flag field is no longer communicated at every time step\r\n - the LB UBB field is no longer recalculated at every time step\r\n - LB boundary setters (node, slice, shape) now always trigger a full ghost communication\r\n- maintainability:\r\n - the waLBerla header files are no longer visible in the ESPResSo core and script interface\r\n - the Boost dependency is now checked at the CMake level to prevent building broken ESPResSo shared libraries (see details in #4856)","shortMessageHtmlLink":"Refactor waLBerla bridge (#4864)"}},{"before":"da471299e8fa9cb2fba1be84d7bd10b9084a5adf","after":"5cc83611906244af90a0b43324a2ba4c86cd4591","ref":"refs/heads/python","pushedAt":"2024-01-30T12:03:45.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Address API change in Python 3.12 unittest module (#4852)\n\nStarting with Python 3.12, package `unittest` returns exit code 5 when all tests are skipped. By default, CTest treats any non-zero exit code as a failure. This can be remediated by setting test property [`SKIP_RETURN_CODE`](https://cmake.org/cmake/help/latest/prop_test/SKIP_RETURN_CODE.html) to 5.\r\n\r\nDescription of changes:\r\n- skipped tests are no longer treated as failures by CTest","shortMessageHtmlLink":"Address API change in Python 3.12 unittest module (#4852)"}},{"before":"66a63411e0d3e0c38426f957da37ce65797a261f","after":"da471299e8fa9cb2fba1be84d7bd10b9084a5adf","ref":"refs/heads/python","pushedAt":"2024-01-19T15:25:32.000Z","pushType":"pr_merge","commitsCount":6,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Thermostats refactoring (#4845)\n\nDescription of changes:\r\n- encapsulate thermostats and remove their Cython interface\r\n - use one C++ `ScriptInterface` class per core class (fixes #3980)\r\n - introduce the `ThermostatFlags` enum, allow deactivating a single thermostat, add an `is_active` flag accessible from the Python interface (fixes #4266)\r\n- remove 20 MPI callbacks\r\n - partial fix for #4614\r\n- remove thermostat and thermalized/rigid bond global variables\r\n - partial fix for #2628\r\n- remove a significant amount of historical Cython code that relied on deprecated Cython features\r\n - partial fix for #4542\r\n - ESPResSo is now compatible with Cython 3.0\r\n - the `nogil` deprecation warning subsists\r\n- improve testing of the thermostats interface\r\n- API changes:\r\n - thermalized bond parameter `seed` was moved to `system.thermostat.set_thermalized_bond()`\r\n - this change better reflects the fact there is only one global seed for all thermalized bonds\r\n - until now this global seed was overwritten by any newly created thermalized bond, whether it was added to the system or not\r\n - LB thermostat `seed` parameter now gets written to the RNG seed (silent change)\r\n - until now, the RNG seed was hardcoded as `0` and the `seed` value was used to set the RNG counter, thus two independent simulations with a different seed would actually get the same particle coupling random noise sequence with a time lag equal to the difference between the two seeds\r\n - this is a bugfix for ensemble runs\r\n - fixes #4848","shortMessageHtmlLink":"Thermostats refactoring (#4845)"}},{"before":"cc3a319bf3db2e07c5f4762cdb980c1ccf82c531","after":"66a63411e0d3e0c38426f957da37ce65797a261f","ref":"refs/heads/python","pushedAt":"2024-01-08T13:55:31.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"P3M cleanup of ParticleRanges (#4841)\n\nContinuation of #4721.\r\n\r\nDescription of changes:\r\n- I continued on moving `ParticleRanges` out of function signatures and parsing `combined_ranges` instead.\r\n- For `charge_assign` I had to move the definition to the `.hpp` file to avoid specifying the type of these `boost` ranges.\r\n- I also removed the unused `kernel` method in `p3m.hpp` that probably was forgotten during some refactoring\r\n\r\nMoving the construction of the new boost ranges would require to change the signature of `long_range_kernel`, which would require to touch `long_range_forces`, which would require bigger refactoring.\r\nThrough discussions with Rudolf the idea of an `P3MImpl` class to abstract implementation from the espresso implementation, as well as a base class that contains these ranges came up. I am not sure if this should be part of the PR, what do you think @jngrad?","shortMessageHtmlLink":"P3M cleanup of ParticleRanges (#4841)"}},{"before":"963f04bb4e390a370866c2cd49c2f880abfef51f","after":"cc3a319bf3db2e07c5f4762cdb980c1ccf82c531","ref":"refs/heads/python","pushedAt":"2023-12-20T15:31:54.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Propagators (#4820)\n\nFixes #4603\r\n\r\nDescription of changes:\r\n- add a per-particle `propagation` flag to control which equations of motion are propagated during integration\r\n- all virtual sites implementations can now be used simultaneously (`system.virtual_sites` was removed)\r\n- virtual sites relative can now be coupled only to the Langevin and LB thermostats (possibly both: Langevin for rotation, LB for translation), using the new `particle.vs_relate_to()` keyword arguments `couple_to_lb=True` and `couple_to_langevin=True` (both are `False` by default)\r\n- finer control over the propagation mode combinations can be obtained by setting the `particle.propagation` bitmask using combinations of `espressomd.propagation.Propagation` enum values; only a small number of combinations are currently allowed, but the list will grow as new propagation schemes are developed","shortMessageHtmlLink":"Propagators (#4820)"}},{"before":"29aa86e8ab9beeb055fb4a425e355857a9b7d042","after":"963f04bb4e390a370866c2cd49c2f880abfef51f","ref":"refs/heads/python","pushedAt":"2023-12-18T16:10:18.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Prevent propagation of angular velocities with NpT (#4843)\n\nFixes #4842\r\n\r\nDescription of changes:\r\n- The current implementation of the velocity Verlet NpT propagator doesn't apply friction and noise on angular velocities. ESPResSo now throws an error when NpT encounters a rotating particle.","shortMessageHtmlLink":"Prevent propagation of angular velocities with NpT (#4843)"}},{"before":"504fd38184d6a573526d0642a5e62f21e656d24b","after":"29aa86e8ab9beeb055fb4a425e355857a9b7d042","ref":"refs/heads/python","pushedAt":"2023-12-15T17:38:05.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Annotate P3M code with equation references (#4835)\n\nDescription of changes:\r\n- Annotate P3M code with equation references","shortMessageHtmlLink":"Annotate P3M code with equation references (#4835)"}},{"before":"898b4cba028b2044dde60020c5dceea11e3ec44d","after":"504fd38184d6a573526d0642a5e62f21e656d24b","ref":"refs/heads/python","pushedAt":"2023-12-14T17:42:09.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Remove kinetic energy contribution from virtual sites (#4839)\n\nFixes #4838\r\n\r\nDescription of changes:\r\n- fix virtual sites regression introduced in ESPResSo 4.2.0\r\n- update description of `MASS` and `ROTATIONAL_INERTIA` features","shortMessageHtmlLink":"Remove kinetic energy contribution from virtual sites (#4839)"}},{"before":"a22c2fedcbaef7725d10500dc262c56644f29a66","after":"898b4cba028b2044dde60020c5dceea11e3ec44d","ref":"refs/heads/python","pushedAt":"2023-12-08T17:44:00.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"add elc test on madelung energy (#4785)\n\nFixes #4786 \r\n\r\nFor neutral systems ELC-IC still seems to work perfectly fine.\r\n\r\nDescription of changes:\r\n- Improve testing of ELC using the Madelung energy","shortMessageHtmlLink":"add elc test on madelung energy (#4785)"}},{"before":"2d656671063da890046dd6dd59d6d3ae88b403a5","after":"a22c2fedcbaef7725d10500dc262c56644f29a66","ref":"refs/heads/python","pushedAt":"2023-12-05T18:26:01.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"LB+particles: guard against missed coupling due to round-off error (#4827)\n\nFixes #4825\r\n\r\nDescription of changes:\r\n* Bugfix: particles outside the simulation box are now properly coupled using PBC. The coordinates are folded before considering shifted positions in the LB particle coupling code. Also, a test that fails without the fix is added. To my understanding, if the particle position is folded, and then all combination of `folded_pos[i]` +/- `box_l[i]` for all Cartesian directions are considered, both the particle in the primary box and all potential halo regions are caught.","shortMessageHtmlLink":"LB+particles: guard against missed coupling due to round-off error (#…"}},{"before":"2c14952a94f86215d8ad6321d6fead60614be732","after":"2d656671063da890046dd6dd59d6d3ae88b403a5","ref":"refs/heads/python","pushedAt":"2023-11-30T14:50:38.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Migration to Jupyterlab (#4830)\n\nDescription of changes:\r\n- migrate to JupyterLab (fixes #4789)\r\n- bump Sphinx version requirements\r\n- use `python3 -m pip` in place of the deprecated `pip3` command\r\n- use `requirements.txt` as a constraint file to avoid version number inconsistencies with the user guide","shortMessageHtmlLink":"Migration to Jupyterlab (#4830)"}},{"before":"38a5338b6a25c48281a141ad02d241f05700a49b","after":"2c14952a94f86215d8ad6321d6fead60614be732","ref":"refs/heads/python","pushedAt":"2023-11-24T18:10:34.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Fix unstable electrode tutorial (#4824)\n\nFixes #4798\r\n\r\nDescription of changes:\r\n- change steepest descent parameters to more reasonable values in electrode_part2\r\n- re-enable test of electrode_part2\r\n- Limit Grahame test to 1 point / shorten CI test duration","shortMessageHtmlLink":"Fix unstable electrode tutorial (#4824)"}},{"before":"cb3c23c2325352198acbb15d34f41b1fb8156043","after":"38a5338b6a25c48281a141ad02d241f05700a49b","ref":"refs/heads/python","pushedAt":"2023-11-20T15:42:04.000Z","pushType":"pr_merge","commitsCount":19,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Refactor System class (#4816)\n\nDescription of changes:\r\n- encapsulate several global variables inside the `System` class\r\n - new members: cell_system, integrator, electrostatics, magnetostatics, analysis, comfixed, galilei, bond_breakage\r\n - required for #4613\r\n - partial fix for #2628\r\n- make energy/pressure/force calculation functions members of the `System` class\r\n- fully encapsulate event hooks in the `System` class\r\n- simplify checkpointing of the `System` class\r\n- remove `EspressoSystemStandAlone` class\r\n- API changes:\r\n - `espressomd.galilei.GalileiTransform` is now a member of the `System` class, accessible via `system.galilei`","shortMessageHtmlLink":"Refactor System class (#4816)"}},{"before":"1a7a4391866fdc68abf63b54b98385c255f5d8a2","after":"cb3c23c2325352198acbb15d34f41b1fb8156043","ref":"refs/heads/python","pushedAt":"2023-11-07T11:53:26.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Add tutorial on GCMC (#4670)\n\nFixes #4575 \r\n\r\nDescription of changes:\r\n- Adds a tutorial, that teaches users how to simulate systems in the Grand-Canonical ensemble with the Grand-Canonical Monte Carlo.","shortMessageHtmlLink":"Add tutorial on GCMC (#4670)"}},{"before":"b70d9e8a46fd50856aba922faf4acfa13417ad80","after":"1a7a4391866fdc68abf63b54b98385c255f5d8a2","ref":"refs/heads/python","pushedAt":"2023-11-06T15:37:50.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Fix OIF force summary function (#4813)\n\nDescription of changes:\r\n- bugfix: `OifCell.elastic_forces()` no longer throws a `TypeError`\r\n- add a smoke test for that function","shortMessageHtmlLink":"Fix OIF force summary function (#4813)"}},{"before":"c31f701a3bfa8b9247b62451bbc60104d120c25c","after":"b70d9e8a46fd50856aba922faf4acfa13417ad80","ref":"refs/heads/python","pushedAt":"2023-10-31T16:16:34.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Sample: Using Dask with ESPREsSo (#4781)\n\nThis was produced as a side project of learning Dask, but might be useful for others.","shortMessageHtmlLink":"Sample: Using Dask with ESPREsSo (#4781)"}},{"before":"fdadb98ae35e1703e304d65b8db9970de607bfb2","after":"c31f701a3bfa8b9247b62451bbc60104d120c25c","ref":"refs/heads/python","pushedAt":"2023-10-25T12:47:12.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Particle property ranges, remove ParticleRanges from P3M (#4737)\n\nPartial fix for #4721, closes #4696\r\n\r\nDescription of changes:\r\n- Implements the `ParticlePropertyRange` struct containing static methods to transform a `ParticleRange` to a `boost::iterator_range` of properties of the particles, such as `ForceRange` or `ParticleRange`, which can then be used in range-based for-loops.\r\n\r\nThe refactoring of the P3M part is not finished yet, but I think this PR could also be extended to remove the ParticleRanges from the remaining Coulomb interactions.","shortMessageHtmlLink":"Particle property ranges, remove ParticleRanges from P3M (#4737)"}},{"before":"f53de8606757b2e548da87e5c16aa38b9ffae65d","after":"fdadb98ae35e1703e304d65b8db9970de607bfb2","ref":"refs/heads/python","pushedAt":"2023-10-17T14:50:02.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Remove more global variables (#4783)\n\nPartial fix for #2628\r\n\r\nDescription of changes:\r\n- encapsulate cell structure, box geometry and local box in the `System` class\r\n- gather MPI-related global variables in a global struct\r\n- rewrite position folding/unfolding free functions as member functions of `BoxGeometry`\r\n\r\nI took this opportunity to cleanup and modernize code, by e.g. replacing hard-coded loops by `Utils::Vector` operations, improving type safety (no mixed signed and unsigned int in arithmetic expression), using more expressive variable names, passing global variables by function argument, adding a collision detection test case, etc.","shortMessageHtmlLink":"Remove more global variables (#4783)"}},{"before":"73996443bf90eb1ea8153bfd9b205d2a8a06d0b1","after":"f53de8606757b2e548da87e5c16aa38b9ffae65d","ref":"refs/heads/python","pushedAt":"2023-10-17T13:15:17.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"kodiakhq[bot]","name":null,"path":"/apps/kodiakhq","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29196?s=80&v=4"},"commit":{"message":"Summer school wrap-up (#4810)\n\nDescription of changes:\r\n- remove summer school banner\r\n- make the ELC tutorial appear on GitHub Pages\r\n- document effect of lattice offset on shape-based constraints used to create boundaries (follow-up to #4804)","shortMessageHtmlLink":"Summer school wrap-up (#4810)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERrd1RgA","startCursor":null,"endCursor":null}},"title":"Activity · espressomd/espresso"}