}
}
+void gmx_print_sepdvdl(FILE *fplog, const char *s, real v, real dvdlambda)
+{
+ fprintf(fplog, " %-30s V %12.5e dVdl %12.5e\n", s, v, dvdlambda);
+}
+
void do_force_lowlevel(FILE *fplog, gmx_large_int_t step,
t_forcerec *fr, t_inputrec *ir,
t_idef *idef, t_commrec *cr,
double t0 = 0.0, t1, t2, t3; /* time measurement for coarse load balancing */
#endif
-#define PRINT_SEPDVDL(s, v, dvdlambda) if (bSepDVDL) {fprintf(fplog, sepdvdlformat, s, v, dvdlambda); }
-
+#define PRINT_SEPDVDL(s, v, dvdlambda) if (bSepDVDL) { gmx_print_sepdvdl(fplog, s, v, dvdlambda); }
set_pbc(&pbc, fr->ePBC, box);
NULL, &shake_vir, nrnb, econqForceDispl, FALSE, 0, 0);
if (fr->bSepDVDL && fplog)
{
- fprintf(fplog, sepdvdlformat, "Constraints", t, dvdl_constr);
+ gmx_print_sepdvdl(fplog, "Constraints", t, dvdl_constr);
}
enerd->term[F_DVDL_CONSTR] += dvdl_constr;
m_add(force_vir, shake_vir, vir);
fr->rc_scaling, fr->ePBC, fr->posres_com, fr->posres_comB);
if (bSepDVDL)
{
- fprintf(fplog, sepdvdlformat,
- interaction_function[F_POSRES].longname, v, dvdl);
+ gmx_print_sepdvdl(fplog, interaction_function[F_POSRES].longname, v, dvdl);
}
enerd->term[F_POSRES] += v;
/* If just the force constant changes, the FEP term is linear,
cr, t, lambda[efptRESTRAINT], x, f, vir_force, &dvdl);
if (bSepDVDL)
{
- fprintf(fplog, sepdvdlformat, "Com pull", enerd->term[F_COM_PULL], dvdl);
+ gmx_print_sepdvdl(fplog, "Com pull", enerd->term[F_COM_PULL], dvdl);
}
enerd->dvdl_lin[efptRESTRAINT] += dvdl;
}
&cycles_seppme);
if (bSepDVDL)
{
- fprintf(fplog, sepdvdlformat, "PME mesh", e, dvdl);
+ gmx_print_sepdvdl(fplog, "PME mesh", e, dvdl);
}
enerd->term[F_COUL_RECIP] += e;
enerd->dvdl_lin[efptCOUL] += dvdl;
groups, &(inputrec->opts), top, mdatoms,
cr, nrnb, lambda, dvdlambda, &enerd->grpp, bFillGrid,
bDoLongRangeNS);
- if (bSepDVDL)
- {
- fprintf(fplog, sepdvdlformat, "LR non-bonded", 0.0, dvdlambda);
- }
- enerd->dvdl_lin[efptVDW] += dvdlambda[efptVDW];
- enerd->dvdl_lin[efptCOUL] += dvdlambda[efptCOUL];
wallcycle_stop(wcycle, ewcNS);
}
if (fr->bSepDVDL && do_per_step(step, ir->nstlog))
{
- fprintf(fplog, sepdvdlformat, "Dispersion correction",
- *enercorr, dvdlambda);
+ gmx_print_sepdvdl(fplog, "Dispersion correction", *enercorr, dvdlambda);
}
if (fr->efep != efepNO)
{