Gromacs  2021.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
#include "gmxpre.h"
#include "domdec_vsite.h"
#include <cassert>
#include <algorithm>
#include "gromacs/domdec/domdec.h"
#include "gromacs/domdec/domdec_struct.h"
#include "gromacs/domdec/ga2la.h"
#include "gromacs/domdec/hashedmap.h"
#include "gromacs/math/vec.h"
#include "gromacs/mdtypes/commrec.h"
#include "gromacs/pbcutil/ishift.h"
#include "gromacs/topology/ifunc.h"
#include "gromacs/topology/mtop_util.h"
#include "gromacs/utility/fatalerror.h"
#include "gromacs/utility/gmxassert.h"
#include "domdec_specatomcomm.h"
+ Include dependency graph for domdec_vsite.cpp:

Description

This file implements functions for domdec to use while managing inter-atomic constraints.

Author
Berk Hess hess@.nosp@m.kth..nosp@m.se

Functions

void dd_move_f_vsites (const gmx_domdec_t &dd, gmx::ArrayRef< gmx::RVec > f, gmx::ArrayRef< gmx::RVec > fshift)
 Communicates the virtual site forces, reduces the shift forces when fshift != NULL.
 
void dd_clear_f_vsites (const gmx_domdec_t &dd, gmx::ArrayRef< gmx::RVec > f)
 Clears the forces for virtual sites.
 
void dd_move_x_vsites (const gmx_domdec_t &dd, const matrix box, rvec *x)
 Communicates the coordinates involved in virtual sites.
 
void dd_clear_local_vsite_indices (gmx_domdec_t *dd)
 Clears the local indices for the virtual site communication setup.
 
int dd_make_local_vsites (gmx_domdec_t *dd, int at_start, gmx::ArrayRef< InteractionList > lil)
 Sets up communication and atom indices for all local vsites.
 
void init_domdec_vsites (gmx_domdec_t *dd, int n_intercg_vsite)
 Initializes the data structures for virtual site communication.