Gromacs
2024.4
|
#include "gromacs/math/vectypes.h"
#include "gromacs/mdlib/sighandler.h"
#include "gromacs/utility/real.h"
This file contains declarations and constants necessary for coordinating the communication for the offload of long-ranged PME work to separate MPI rank, for computing energies and forces (Coulomb and LJ).
Classes | |
struct | gmx_pme_comm_n_box_t |
Helper struct for PP-PME communication of parameters. More... | |
struct | gmx_pme_comm_vir_ene_t |
Helper struct for PP-PME communication of virial and energy. More... | |
Macros | |
#define | PP_PME_CHARGE (1 << 0) |
Flags used to coordinate PP-PME communication and computation phases. More... | |
#define | PP_PME_CHARGEB (1 << 1) |
#define | PP_PME_SQRTC6 (1 << 2) |
#define | PP_PME_SQRTC6B (1 << 3) |
#define | PP_PME_SIGMA (1 << 4) |
#define | PP_PME_SIGMAB (1 << 5) |
#define | PP_PME_COORD (1 << 6) |
#define | PP_PME_ENER_VIR (1 << 9) |
#define | PP_PME_FINISH (1 << 10) |
#define | PP_PME_SWITCHGRID (1 << 11) |
#define | PP_PME_RESETCOUNTERS (1 << 12) |
#define | PP_PME_GPUCOMMS (1 << 13) |
#define | PP_PME_RECVFTOGPU (1 << 14) |
#define | PP_PME_MDGPUGRAPH (1 << 15) |
#define PP_PME_CHARGE (1 << 0) |
Flags used to coordinate PP-PME communication and computation phases.
Some parts of the code(gmx_pme_send_q, gmx_pme_recv_q_x) assume that the six first flags are exactly in this order.