Gromacs
2025-dev-20240812-545ca5b
|
#include <gromacs/nbnxm/freeenergydispatch.h>
Temporary data and methods for handling dispatching of the nbnxm free-energy kernels.
Public Member Functions | |
FreeEnergyDispatch (int numEnergyGroups) | |
Constructor. | |
void | setupFepThreadedForceBuffer (int numAtomsForce, const PairlistSets &pairlistSets) |
Sets up the threaded force buffer and the reduction, should be called after constructing the pair lists. | |
void | dispatchFreeEnergyKernels (const PairlistSets &pairlistSets, const gmx::ArrayRefWithPadding< const gmx::RVec > &coords, gmx::ForceWithShiftForces *forceWithShiftForces, bool useSimd, int ntype, const interaction_const_t &ic, gmx::ArrayRef< const gmx::RVec > shiftvec, gmx::ArrayRef< const real > nbfp, gmx::ArrayRef< const real > nbfp_grid, gmx::ArrayRef< const real > chargeA, gmx::ArrayRef< const real > chargeB, gmx::ArrayRef< const int > typeA, gmx::ArrayRef< const int > typeB, gmx::ArrayRef< const real > lambda, gmx_enerdata_t *enerd, const gmx::StepWorkload &stepWork, t_nrnb *nrnb, gmx_wallcycle *wcycle) |
Dispatches the non-bonded free-energy kernels, thread parallel and reduces the output. | |