|
Gromacs
2023.4
|
Collaboration diagram for Modules for simulation functionality:Modules used in running simulations with mdrun.
Modules | |
| Spatial domain decomposition (for parallelization over MPI) | |
| Manages the decomposition of the simulation volume over MPI ranks to try to distribute work evenly with minimal communication overheads. | |
| Ewald-family treatments of long-ranged forces | |
| Computes energies and forces for long-ranged interactions using the Ewald decomposition. Includes plain Ewald, PME, P3M for Coulomb, PME for Lennard-Jones, load-balancing for PME, and supporting code. | |
| Interactive molecular dynamics (IMD) | |
| Allows mdrun to interface with VMD via the interactive molecular dynamics (IMD) protocol. | |
| Interactions between lists of particles | |
| Handles computing energies and forces for listed interactions. | |
| Implementation of mdrun utility functionality | |
| This module contains code that implements general infrastructure for mdrun that does not suit any other module. | |
| The modular simulator | |
| The modular simulator improves extensibility, adds Monte Carlo capabilities, promotes data locality and communication via interfaces, supports multi-stepping integrators, and paves the way for some task parallelism. | |
| Short-range non-bonded interaction module | |
| Computes forces and energies for short-range pair-interactions based on the Verlet algorithm. The algorithm uses pair-lists generated at fixed intervals as well as various flavors of pair interaction kernels implemented for a wide range of CPU and GPU architectures. | |
| Non-bonded pair interactions | |
| Implements non-bonded pair interaction functionality for NxM atom clusters. | |
| "Computational Electrophysiology" position swapping (swap) | |
| Implements the "Computational Electrophysiology" protocol. | |
| Assigning simulation tasks to hardware (taskassignment) | |
| Provides code that manages assignment of simulation tasks to hardware. | |
| Implementation of mdrun | |
| This module contains code that implements mdrun. | |
| Integration test utilities | |
| Functionality for testing mdrun as a whole. | |
1.8.5