else if (i == F_BHAM_LR)
md->bEner[i] = (bBHAM && ir->rvdw > ir->rlist);
else if (i == F_RF_EXCL)
- md->bEner[i] = (EEL_RF(ir->coulombtype) && ir->coulombtype != eelRF_NEC);
+ md->bEner[i] = (EEL_RF(ir->coulombtype) && ir->coulombtype != eelRF_NEC && ir->cutoff_scheme == ecutsGROUP);
else if (i == F_COUL_RECIP)
md->bEner[i] = EEL_FULL(ir->coulombtype);
else if (i == F_LJ14)
{
if (md->bEner[i])
{
- /* FIXME: The constness should not be cast away */
- /*ener_nm[f_nre]=(char *)interaction_function[i].longname;*/
ener_nm[md->f_nre]=interaction_function[i].longname;
md->f_nre++;
}
md->bNHC_trotter = IR_NVT_TROTTER(ir);
md->bPrintNHChains = ir-> bPrintNHChains;
md->bMTTK = (IR_NPT_TROTTER(ir) || IR_NPH_TROTTER(ir));
+ md->bMu = NEED_MUTOT(*ir);
md->ebin = mk_ebin();
/* Pass NULL for unit to let get_ebin_space determine the units
boxvel_nm,unit_vel);
}
if (md->bMu)
+ {
md->imu = get_ebin_space(md->ebin,asize(mu_nm),mu_nm,unit_dipole_D);
+ }
if (ir->cos_accel != 0)
{
md->ivcos = get_ebin_space(md->ebin,asize(vcos_nm),vcos_nm,unit_vel);
tmp6[5] = state->boxv[ZZ][YY];
add_ebin(md->ebin,md->ipc,md->bTricl ? 6 : 3,tmp6,bSum);
}
- if(md->bMu)
+ if (md->bMu)
+ {
add_ebin(md->ebin,md->imu,3,mu_tot,bSum);
+ }
if (ekind && ekind->cosacc.cos_accel != 0)
{
vol = box[XX][XX]*box[YY][YY]*box[ZZ][ZZ];
pr_ebin(log,md->ebin,md->ipres,9,3,mode,FALSE);
fprintf(log,"\n");
}
- fprintf(log," Total Dipole (%s)\n",unit_dipole_D);
- pr_ebin(log,md->ebin,md->imu,3,3,mode,FALSE);
- fprintf(log,"\n");
+ if (md->bMu)
+ {
+ fprintf(log," Total Dipole (%s)\n",unit_dipole_D);
+ pr_ebin(log,md->ebin,md->imu,3,3,mode,FALSE);
+ fprintf(log,"\n");
+ }
if (md->nE > 1)
{