leak:do_edsam
leak:do_inputrec
leak:do_single_flood
-leak:get_ir
leak:get_zone_pulse_cgs
leak:gmx::DomainDecompositionBuilder::Impl::build
leak:gmx_check
leak:make_fep_list
leak:make_pull_groups
leak:make_rotation_groups
-leak:make_swap_groups
leak:make_tables
leak:mdoutf_write_to_trajectory_files
# Stack trace does not report a function beyond gmx_srenew_impl, so the file is suppressed instead.
{
if (serializer->reading())
{
- snew(simtemp->temperatures, n_lambda);
+ simtemp->temperatures.resize(n_lambda);
}
- serializer->doRealArray(simtemp->temperatures, n_lambda);
+ serializer->doRealArray(simtemp->temperatures.data(), n_lambda);
}
}
}
sfree(opts->wall_atomtype[0]);
sfree(opts->wall_atomtype[1]);
sfree(opts->include);
+ sfree(opts->couple_moltype);
+
for (auto& mol : mi)
{
// Some of the contents of molinfo have been stolen, so
static void do_simtemp_params(t_inputrec* ir)
{
-
- snew(ir->simtempvals->temperatures, ir->fepvals->n_lambda);
+ ir->simtempvals->temperatures.resize(ir->fepvals->n_lambda);
getSimTemps(ir->fepvals->n_lambda,
ir->simtempvals.get(),
ir->fepvals->all_lambda[FreeEnergyPerturbationCouplingType::Temperature]);
pullCoord.eType = getEnum<PullingAlgorithm>(inp, buf, wi);
sprintf(buf, "pull-coord%d-potential-provider", coordNum);
setStringEntry(inp, buf, provider, "");
- pullCoord.externalPotentialProvider = gmx_strdup(provider);
+ pullCoord.externalPotentialProvider = provider;
sprintf(buf, "pull-coord%d-geometry", coordNum);
pullCoord.eGeom = getEnum<PullGroupGeometry>(inp, buf, wi);
sprintf(buf, "pull-coord%d-groups", coordNum);
sfree(rot);
}
+static void done_t_swapCoords(t_swapcoords* swapCoords)
+{
+ if (swapCoords == nullptr)
+ {
+ return;
+ }
+ for (int i = 0; i < swapCoords->ngrp; i++)
+ {
+ sfree(swapCoords->grp[i].ind);
+ sfree(swapCoords->grp[i].molname);
+ }
+ sfree(swapCoords->grp);
+ sfree(swapCoords);
+}
+
void done_inputrec(t_inputrec* ir)
{
sfree(ir->opts.nrdf);
sfree(ir->opts.nFreeze);
sfree(ir->opts.egp_flags);
+ done_t_swapCoords(ir->swap);
done_t_rot(ir->rot);
delete ir->params;
}
PS("simulated-tempering-scaling", enumValueToString(simtemp->eSimTempScale));
PR("sim-temp-low", simtemp->simtemp_low);
PR("sim-temp-high", simtemp->simtemp_high);
- pr_rvec(fp, indent, "simulated tempering temperatures", simtemp->temperatures, n_lambda, TRUE);
+ pr_rvec(fp, indent, "simulated tempering temperatures", simtemp->temperatures.data(), n_lambda, TRUE);
}
static void pr_expandedvals(FILE* fp, int indent, const t_expanded* expand, int n_lambda)
//! The high temperature for simulated tempering
real simtemp_high;
//! The range of temperatures used for simulated tempering
- real* temperatures;
+ std::vector<real> temperatures;
};
struct t_lambda