Gromacs
2019
|
#include "gromacs/math/paddedvector.h"
#include "gromacs/math/vectypes.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/real.h"
This file declares functions for mdrun to call to make a new domain decomposition, and check it.
Functions | |
bool | check_grid_jump (int64_t step, const gmx_domdec_t *dd, real cutoff, const gmx_ddbox_t *ddbox, gmx_bool bFatal) |
Check whether the DD grid has moved too far for correctness. | |
void | print_dd_statistics (const t_commrec *cr, const t_inputrec *ir, FILE *fplog) |
Print statistics for domain decomposition communication. | |
void | dd_partition_system (FILE *fplog, const gmx::MDLogger &mdlog, int64_t step, const t_commrec *cr, gmx_bool bMasterState, int nstglobalcomm, t_state *state_global, const gmx_mtop_t *top_global, const t_inputrec *ir, t_state *state_local, PaddedVector< gmx::RVec > *f, gmx::MDAtoms *mdatoms, gmx_localtop_t *top_local, t_forcerec *fr, gmx_vsite_t *vsite, gmx::Constraints *constr, t_nrnb *nrnb, gmx_wallcycle *wcycle, gmx_bool bVerbose) |
Partition the system over the nodes. More... | |
void | checkNumberOfBondedInteractions (const gmx::MDLogger &mdlog, t_commrec *cr, int totalNumberOfBondedInteractions, const gmx_mtop_t *top_global, const gmx_localtop_t *top_local, const t_state *state, bool *shouldCheckNumberOfBondedInteractions) |
Check whether bonded interactions are missing, if appropriate. More... | |
void checkNumberOfBondedInteractions | ( | const gmx::MDLogger & | mdlog, |
t_commrec * | cr, | ||
int | totalNumberOfBondedInteractions, | ||
const gmx_mtop_t * | top_global, | ||
const gmx_localtop_t * | top_local, | ||
const t_state * | state, | ||
bool * | shouldCheckNumberOfBondedInteractions | ||
) |
Check whether bonded interactions are missing, if appropriate.
[in] | mdlog | Logger |
[in] | cr | Communication object |
[in] | totalNumberOfBondedInteractions | Result of the global reduction over the number of bonds treated in each domain |
[in] | top_global | Global topology for the error message |
[in] | top_local | Local topology for the error message |
[in] | state | Global state for the error message |
[in,out] | shouldCheckNumberOfBondedInteractions | Whether we should do the check. Always set to false. |
void dd_partition_system | ( | FILE * | fplog, |
const gmx::MDLogger & | mdlog, | ||
int64_t | step, | ||
const t_commrec * | cr, | ||
gmx_bool | bMasterState, | ||
int | nstglobalcomm, | ||
t_state * | state_global, | ||
const gmx_mtop_t * | top_global, | ||
const t_inputrec * | ir, | ||
t_state * | state_local, | ||
PaddedVector< gmx::RVec > * | f, | ||
gmx::MDAtoms * | mdatoms, | ||
gmx_localtop_t * | top_local, | ||
t_forcerec * | fr, | ||
gmx_vsite_t * | vsite, | ||
gmx::Constraints * | constr, | ||
t_nrnb * | nrnb, | ||
gmx_wallcycle * | wcycle, | ||
gmx_bool | bVerbose | ||
) |
Partition the system over the nodes.
step is only used for printing error messages. If bMasterState==TRUE then state_global from the master node is used, else state_local is redistributed between the nodes. When f!=NULL, *f will be reallocated to the size of state_local.