*/
nbv->dispatchFreeEnergyKernel(
InteractionLocality::Local,
- *fr,
x.unpaddedArrayRef(),
&forceOutNonbonded->forceWithShiftForces(),
+ fr->use_simd_kernels,
+ fr->ntype,
+ fr->rlist,
+ *fr->ic,
+ fr->shift_vec,
+ fr->nbfp,
+ fr->ljpme_c6grid,
mdatoms->chargeA ? gmx::arrayRefFromArray(mdatoms->chargeA, mdatoms->nr)
: gmx::ArrayRef<real>{},
mdatoms->chargeB ? gmx::arrayRefFromArray(mdatoms->chargeB, mdatoms->nr)
{
nbv->dispatchFreeEnergyKernel(
InteractionLocality::NonLocal,
- *fr,
x.unpaddedArrayRef(),
&forceOutNonbonded->forceWithShiftForces(),
+ fr->use_simd_kernels,
+ fr->ntype,
+ fr->rlist,
+ *fr->ic,
+ fr->shift_vec,
+ fr->nbfp,
+ fr->ljpme_c6grid,
mdatoms->chargeA ? gmx::arrayRefFromArray(mdatoms->chargeA, mdatoms->nr)
: gmx::ArrayRef<real>{},
mdatoms->chargeB ? gmx::arrayRefFromArray(mdatoms->chargeB, mdatoms->nr)
}
void nonbonded_verlet_t::dispatchFreeEnergyKernel(gmx::InteractionLocality iLocality,
- const t_forcerec& fr,
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
- gmx::ArrayRef<const real> chargeA,
- gmx::ArrayRef<const real> chargeB,
- gmx::ArrayRef<const int> typeA,
- gmx::ArrayRef<const int> typeB,
- t_lambda* fepvals,
- gmx::ArrayRef<const real> lambda,
- gmx_enerdata_t* enerd,
- const gmx::StepWorkload& stepWork,
- t_nrnb* nrnb)
+ bool useSimd,
+ int ntype,
+ real rlist,
+ 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,
+ t_lambda* fepvals,
+ gmx::ArrayRef<const real> lambda,
+ gmx_enerdata_t* enerd,
+ const gmx::StepWorkload& stepWork,
+ t_nrnb* nrnb)
{
const auto nbl_fep = pairlistSets().pairlistSet(iLocality).fepLists();
gmx_nb_free_energy_kernel(*nbl_fep[th],
coords,
forceWithShiftForces,
- fr.use_simd_kernels,
- fr.ntype,
- fr.rlist,
- *fr.ic,
- fr.shift_vec,
- fr.nbfp,
- fr.ljpme_c6grid,
+ useSimd,
+ ntype,
+ rlist,
+ ic,
+ shiftvec,
+ nbfp,
+ nbfp_grid,
chargeA,
chargeB,
typeA,
gmx_nb_free_energy_kernel(*nbl_fep[th],
coords,
forceWithShiftForces,
- fr.use_simd_kernels,
- fr.ntype,
- fr.rlist,
- *fr.ic,
- fr.shift_vec,
- fr.nbfp,
- fr.ljpme_c6grid,
+ useSimd,
+ ntype,
+ rlist,
+ ic,
+ shiftvec,
+ nbfp,
+ nbfp_grid,
chargeA,
chargeB,
typeA,
//! Executes the non-bonded free-energy kernel, always runs on the CPU
void dispatchFreeEnergyKernel(gmx::InteractionLocality iLocality,
- const t_forcerec& fr,
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
+ bool useSimd,
+ int ntype,
+ real rlist,
+ 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,