gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
const t_forcerec& fr,
- const t_mdatoms& mdatoms,
+ gmx::ArrayRef<const real> chargeA,
+ gmx::ArrayRef<const real> chargeB,
+ gmx::ArrayRef<const int> typeA,
+ gmx::ArrayRef<const int> typeB,
int flags,
gmx::ArrayRef<const real> lambda,
gmx::ArrayRef<real> dvdl,
gmx::ArrayRef<const int> gid = nlist.gid;
const real* shiftvec = fr.shift_vec[0];
- const real* chargeA = mdatoms.chargeA;
- const real* chargeB = mdatoms.chargeB;
- const int* typeA = mdatoms.typeA;
- const int* typeB = mdatoms.typeB;
const int ntype = fr.ntype;
gmx::ArrayRef<const real> nbfp = fr.nbfp;
gmx::ArrayRef<const real> nbfp_grid = fr.ljpme_c6grid;
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
const t_forcerec& fr,
- const t_mdatoms& mdatoms,
+ gmx::ArrayRef<const real> chargeA,
+ gmx::ArrayRef<const real> chargeB,
+ gmx::ArrayRef<const int> typeA,
+ gmx::ArrayRef<const int> typeB,
int flags,
gmx::ArrayRef<const real> lambda,
gmx::ArrayRef<real> dvdl,
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* ff,
const t_forcerec& fr,
- const t_mdatoms& mdatoms,
+ gmx::ArrayRef<const real> chargeA,
+ gmx::ArrayRef<const real> chargeB,
+ gmx::ArrayRef<const int> typeA,
+ gmx::ArrayRef<const int> typeB,
int flags,
gmx::ArrayRef<const real> lambda,
gmx::ArrayRef<real> dvdl,
vdwModifierIsPotSwitch,
useSimd,
ic);
- kernelFunc(nlist, coords, ff, fr, mdatoms, flags, lambda, dvdl, energygrp_elec, energygrp_vdw, nrnb);
+ kernelFunc(nlist, coords, ff, fr, chargeA, chargeB, typeA, typeB, flags, lambda, dvdl, energygrp_elec, energygrp_vdw, nrnb);
}
#include "gromacs/utility/basedefinitions.h"
struct t_forcerec;
-struct t_mdatoms;
struct t_nrnb;
struct t_nblist;
namespace gmx
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
const t_forcerec& fr,
- const t_mdatoms& mdatoms,
+ gmx::ArrayRef<const real> chargeA,
+ gmx::ArrayRef<const real> chargeB,
+ gmx::ArrayRef<const int> typeA,
+ gmx::ArrayRef<const int> typeB,
int flags,
gmx::ArrayRef<const real> lambda,
gmx::ArrayRef<real> dvdl,
*fr,
x.unpaddedArrayRef(),
&forceOutNonbonded->forceWithShiftForces(),
- *mdatoms,
+ gmx::arrayRefFromArray(mdatoms->chargeA, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->chargeB, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->typeA, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->typeB, mdatoms->nr),
inputrec.fepvals.get(),
lambda,
enerd,
*fr,
x.unpaddedArrayRef(),
&forceOutNonbonded->forceWithShiftForces(),
- *mdatoms,
+ gmx::arrayRefFromArray(mdatoms->chargeA, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->chargeB, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->typeA, mdatoms->nr),
+ gmx::arrayRefFromArray(mdatoms->typeB, mdatoms->nr),
inputrec.fepvals.get(),
lambda,
enerd,
const t_forcerec& fr,
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
- const t_mdatoms& mdatoms,
+ 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,
coords,
forceWithShiftForces,
fr,
- mdatoms,
+ chargeA,
+ chargeB,
+ typeA,
+ typeB,
kernelFlags,
kernelLambda,
kernelDvdl,
coords,
forceWithShiftForces,
fr,
- mdatoms,
+ chargeA,
+ chargeB,
+ typeA,
+ typeB,
kernelFlags,
kernelLambda,
kernelDvdl,
class PairlistSets;
struct t_commrec;
struct t_lambda;
-struct t_mdatoms;
struct t_nrnb;
struct t_forcerec;
struct t_inputrec;
const t_forcerec& fr,
gmx::ArrayRef<const gmx::RVec> coords,
gmx::ForceWithShiftForces* forceWithShiftForces,
- const t_mdatoms& mdatoms,
+ 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,