From 8096ca5be67d91cde0e3f447c6bda45445357168 Mon Sep 17 00:00:00 2001 From: Berk Hess Date: Mon, 2 Nov 2015 10:33:43 +0100 Subject: [PATCH] Fix intermolecular interactions with small mols Fixed intermolecular interactions not being assigned with domain decomposition for system with only single charge group molecules. Change-Id: I49e55d0461c4b1f92077d047072c31b22a5b397b --- src/gromacs/domdec/domdec_topology.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gromacs/domdec/domdec_topology.cpp b/src/gromacs/domdec/domdec_topology.cpp index a0669c7c99..e0b9df217e 100644 --- a/src/gromacs/domdec/domdec_topology.cpp +++ b/src/gromacs/domdec/domdec_topology.cpp @@ -109,7 +109,7 @@ typedef struct gmx_reverse_top { gmx_bool bConstr; /**< Are there constraints in this revserse top? */ gmx_bool bSettle; /**< Are there settles in this revserse top? */ gmx_bool bBCheck; /**< All bonded interactions have to be assigned? */ - gmx_bool bMultiCGmols; /**< Are the multi charge-group molecules? */ + gmx_bool bInterCGInteractions; /**< Are there bondeds/exclusions between charge-groups? */ reverse_ilist_t *ril_mt; /**< Reverse ilist for all moltypes */ int ril_mt_tot_size; /**< The size of ril_mt[?].index summed over all entries */ int ilsort; /**< The sorting state of bondeds for free energy */ @@ -677,7 +677,7 @@ static gmx_reverse_top_t *make_reverse_top(gmx_mtop_t *mtop, gmx_bool bFE, rt->bSettle = bSettle; rt->bBCheck = bBCheck; - rt->bMultiCGmols = FALSE; + rt->bInterCGInteractions = mtop->bIntermolecularInteractions; snew(nint_mt, mtop->nmoltype); snew(rt->ril_mt, mtop->nmoltype); rt->ril_mt_tot_size = 0; @@ -686,7 +686,7 @@ static gmx_reverse_top_t *make_reverse_top(gmx_mtop_t *mtop, gmx_bool bFE, molt = &mtop->moltype[mt]; if (molt->cgs.nr > 1) { - rt->bMultiCGmols = TRUE; + rt->bInterCGInteractions = TRUE; } /* Make the atom to interaction list for this molecule type */ @@ -1939,13 +1939,13 @@ static int make_local_bondeds_excls(gmx_domdec_t *dd, int thread; gmx_reverse_top_t *rt; - if (dd->reverse_top->bMultiCGmols) + if (dd->reverse_top->bInterCGInteractions) { nzone_bondeds = zones->n; } else { - /* Only single charge group molecules, so interactions don't + /* Only single charge group (or atom) molecules, so interactions don't * cross zone boundaries and we only need to assign in the home zone. */ nzone_bondeds = 1; @@ -2140,7 +2140,7 @@ void dd_make_local_top(gmx_domdec_t *dd, gmx_domdec_zones_t *zones, bRCheckMB = FALSE; bRCheck2B = FALSE; - if (dd->reverse_top->bMultiCGmols) + if (dd->reverse_top->bInterCGInteractions) { /* We need to check to which cell bondeds should be assigned */ rc = dd_cutoff_twobody(dd); -- 2.11.4.GIT