X-Git-Url: http://biod.pnpi.spb.ru/gitweb/?a=blobdiff_plain;f=src%2Fprograms%2Fmdrun%2Fpme_loadbal.c;h=d6fd68f37269d10692d625172706519c053c2cf3;hb=d3e2d78f5c42e4ad8c3d6dabf7a6d909b2a9c280;hp=1c12f86435700bd813a606e8f15c9f66f0d3305f;hpb=b7bcff77595f7b1ae0647e340539caf4db8a757a;p=alexxy%2Fgromacs.git diff --git a/src/programs/mdrun/pme_loadbal.c b/src/programs/mdrun/pme_loadbal.c index 1c12f86435..d6fd68f372 100644 --- a/src/programs/mdrun/pme_loadbal.c +++ b/src/programs/mdrun/pme_loadbal.c @@ -261,6 +261,15 @@ static gmx_bool pme_loadbal_increase_cutoff(pme_load_balancing_t pme_lb, while (sp <= 1.001*pme_lb->setup[pme_lb->cur].spacing || !grid_ok); set->rcut_coulomb = pme_lb->cut_spacing*sp; + if (set->rcut_coulomb < pme_lb->rcut_coulomb_start) + { + /* This is unlikely, but can happen when e.g. continuing from + * a checkpoint after equilibration where the box shrank a lot. + * We want to avoid rcoulomb getting smaller than rvdw + * and there might be more issues with decreasing rcoulomb. + */ + set->rcut_coulomb = pme_lb->rcut_coulomb_start; + } if (pme_lb->cutoff_scheme == ecutsVERLET) {