static void make_cyl_refgrps(const t_commrec* cr,
pull_t* pull,
ArrayRef<const real> masses,
- t_pbc* pbc,
+ const t_pbc& pbc,
double t,
ArrayRef<const RVec> x)
{
{
int atomIndex = localAtomIndices[indexInSet];
rvec dx;
- pbc_dx_aiuc(pbc, x[atomIndex], reference, dx);
+ pbc_dx_aiuc(&pbc, x[atomIndex], reference, dx);
double axialLocation = iprod(direction, dx);
dvec radialLocation;
double dr2 = 0;
ArrayRef<const RVec> x,
ArrayRef<const RVec> xp,
ArrayRef<const real> mass,
- const t_pbc* pbc,
+ const t_pbc& pbc,
const rvec x_pbc,
ComSums* sum_com)
{
rvec dx;
/* Sum the difference with the reference atom */
- pbc_dx(pbc, x[ii], x_pbc, dx);
+ pbc_dx(&pbc, x[ii], x_pbc, dx);
for (int d = 0; d < DIM; d++)
{
sum_wmx[d] += wm * dx[d];
void pull_calc_coms(const t_commrec* cr,
pull_t* pull,
ArrayRef<const real> masses,
- t_pbc* pbc,
+ const t_pbc& pbc,
double t,
ArrayRef<const RVec> x,
ArrayRef<RVec> xp)
for (m = pull->cosdim + 1; m < pull->npbcdim; m++)
{
- if (pbc->box[m][pull->cosdim] != 0)
+ if (pbc.box[m][pull->cosdim] != 0)
{
gmx_fatal(FARGS, "Can not do cosine weighting for trilinic dimensions");
}
}
- twopi_box = 2.0 * M_PI / pbc->box[pull->cosdim][pull->cosdim];
+ twopi_box = 2.0 * M_PI / pbc.box[pull->cosdim][pull->cosdim];
}
for (size_t g = 0; g < pull->group.size(); g++)
void initPullComFromPrevStep(const t_commrec* cr,
pull_t* pull,
ArrayRef<const real> masses,
- t_pbc* pbc,
+ const t_pbc& pbc,
ArrayRef<const RVec> x)
{
pull_comm_t* comm = &pull->comm;