*
* Copyright (c) 1991-2000, University of Groningen, The Netherlands.
* Copyright (c) 2001-2006, The GROMACS development team.
- * Copyright (c) 2008,2009,2010,2011,2012,2013,2014, by the GROMACS development team, led by
+ * Copyright (c) 2008,2009,2010,2011,2012,2013,2014,2015, by the GROMACS development team, led by
* Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
* and including many others, as listed in the AUTHORS file in the
* top-level source directory and at http://www.gromacs.org.
"See Eisenhaber F, Lijnzaad P, Argos P, Sander C, & Scharf M",
"(1995) J. Comput. Chem. 16, 273-284 for the algorithm used.",
"With [TT]-q[tt], the Connolly surface can be generated as well",
- "in a [TT].pdb[tt] file where the nodes are represented as atoms",
+ "in a [REF].pdb[ref] file where the nodes are represented as atoms",
"and the edges connecting the nearest nodes as CONECT records.",
"[TT]-odg[tt] allows for estimation of solvation free energies",
"from per-atom solvation energies per exposed surface area.[PAR]",
"The average and standard deviation of the area over the trajectory",
"can be calculated per residue and atom (options [TT]-or[tt] and",
"[TT]-oa[tt]).[PAR]",
- //"In combination with the latter option an [TT].itp[tt] file can be",
+ //"In combination with the latter option an [REF].itp[ref] file can be",
//"generated (option [TT]-i[tt])",
//"which can be used to restrain surface atoms.[PAR]",
"that are both too high."
};
- options->setDescription(concatenateStrings(desc));
+ settings->setHelpText(desc);
options->addOption(FileNameOption("o").filetype(eftPlot).outputFile().required()
.store(&fnArea_).defaultBasename("area")
//options->addOption(DoubleOption("minarea").store(&minarea_)
// .description("The minimum area (nm^2) to count an atom as a surface atom when writing a position restraint file (see help)"));
options->addOption(BooleanOption("prot").store(&bIncludeSolute_)
- .description("Output the protein to the Connolly [TT].pdb[tt] file too"));
+ .description("Output the protein to the Connolly [REF].pdb[ref] file too"));
options->addOption(DoubleOption("dgs").store(&dgsDefault_)
.description("Default value for solvation free energy per area (kJ/mol/nm^2)"));
}
calculator_.setDotCount(ndots_);
+ calculator_.setRadii(radii_);
// Initialize all the output data objects and initialize the output plotters.
AnalysisDataPlotModulePointer plotm(
new AnalysisDataPlotModule(settings.plotSettings()));
plotm->setFileName(fnAtomArea_);
- plotm->setTitle("Area per residue over the trajectory");
+ plotm->setTitle("Area per atom over the trajectory");
plotm->setXLabel("Atom");
plotm->setXFormat(8, 0);
plotm->setYLabel("Area (nm\\S2\\N)");
}
{
AnalysisDataAverageModulePointer avem(new AnalysisDataAverageModule);
+ int prevResind = -1;
+ int row = 0;
for (int i = 0; i < surfaceSel_.posCount(); ++i)
{
const int atomIndex = surfaceSel_.position(i).atomIndices()[0];
const int residueIndex = atoms.atom[atomIndex].resind;
- avem->setXAxisValue(i, atoms.resinfo[residueIndex].nr);
+ if (residueIndex != prevResind)
+ {
+ avem->setXAxisValue(row, atoms.resinfo[residueIndex].nr);
+ prevResind = residueIndex;
+ ++row;
+ }
}
residueArea_.addModule(avem);
if (!fnResidueArea_.empty())
AnalysisDataPlotModulePointer plotm(
new AnalysisDataPlotModule(settings.plotSettings()));
plotm->setFileName(fnResidueArea_);
- plotm->setTitle("Area per atom over the trajectory");
+ plotm->setTitle("Area per residue over the trajectory");
plotm->setXLabel("Residue");
plotm->setXFormat(8, 0);
plotm->setYLabel("Area (nm\\S2\\N)");
real totarea, totvolume;
real *area = NULL, *surfacedots = NULL;
int nsurfacedots;
- calculator_.calculate(surfaceSel.coordinates().data(), &radii_[0], pbc,
+ calculator_.calculate(surfaceSel.coordinates().data(), pbc,
frameData.index_.size(), &frameData.index_[0], flag,
&totarea, &totvolume, &area,
&surfacedots, &nsurfacedots);