Gromacs  2026.0-dev-20241105-c8b684d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Functions
#include "gmxpre.h"
#include "sasa.h"
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <filesystem>
#include <memory>
#include <string>
#include <vector>
#include "gromacs/analysisdata/analysisdata.h"
#include "gromacs/analysisdata/modules/average.h"
#include "gromacs/analysisdata/modules/plot.h"
#include "gromacs/fileio/confio.h"
#include "gromacs/fileio/pdbio.h"
#include "gromacs/math/units.h"
#include "gromacs/math/vec.h"
#include "gromacs/math/vectypes.h"
#include "gromacs/options/basicoptions.h"
#include "gromacs/options/filenameoption.h"
#include "gromacs/options/ioptionscontainer.h"
#include "gromacs/options/optionfiletype.h"
#include "gromacs/pbcutil/pbc.h"
#include "gromacs/selection/indexutil.h"
#include "gromacs/selection/selection.h"
#include "gromacs/selection/selectionoption.h"
#include "gromacs/topology/atomprop.h"
#include "gromacs/topology/atoms.h"
#include "gromacs/topology/symtab.h"
#include "gromacs/topology/topology.h"
#include "gromacs/topology/topology_enums.h"
#include "gromacs/trajectory/trajectoryframe.h"
#include "gromacs/trajectoryanalysis/analysismodule.h"
#include "gromacs/trajectoryanalysis/analysissettings.h"
#include "gromacs/trajectoryanalysis/topologyinformation.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/basedefinitions.h"
#include "gromacs/utility/exceptions.h"
#include "gromacs/utility/futil.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/pleasecite.h"
#include "gromacs/utility/real.h"
#include "gromacs/utility/smalloc.h"
#include "gromacs/utility/stringutil.h"
#include "gromacs/utility/unique_cptr.h"
#include "surfacearea.h"
+ Include dependency graph for sasa.cpp:

Description

Implements gmx::analysismodules::Sasa.

Author
Teemu Murtola teemu.nosp@m..mur.nosp@m.tola@.nosp@m.gmai.nosp@m.l.com (C++ conversion)

Classes

struct  gmx::analysismodules::anonymous_namespace{sasa.cpp}::t_conect
 Tracks information on two nearest neighbors of a single surface dot. More...
 
class  gmx::analysismodules::anonymous_namespace{sasa.cpp}::Sasa
 Implements gmx sas trajectory analysis module. More...
 
class  gmx::analysismodules::anonymous_namespace{sasa.cpp}::SasaModuleData
 Temporary memory for use within a single-frame calculation. More...
 

Functions

void gmx::analysismodules::anonymous_namespace{sasa.cpp}::add_rec (t_conect c[], int i, int j, real d2)
 Updates nearest neighbor information for a surface dot. More...
 
void gmx::analysismodules::anonymous_namespace{sasa.cpp}::do_conect (const char *fn, int n, rvec x[])
 Adds CONECT records for surface dots. More...
 
void gmx::analysismodules::anonymous_namespace{sasa.cpp}::connolly_plot (const char *fn, int ndots, const real dots[], rvec x[], t_atoms *atoms, t_symtab *symtab, PbcType pbcType, const matrix box, gmx_bool bIncludeSolute)
 Plots the surface into a PDB file, optionally including the original atoms.
 
void gmx::analysismodules::anonymous_namespace{sasa.cpp}::computeAreas (const Selection &surfaceSel, const Selection &sel, const std::vector< real > &atomAreas, const std::vector< real > &dgsFactor, real *totalAreaOut, real *dgsolvOut, AnalysisDataHandle atomAreaHandle, AnalysisDataHandle resAreaHandle, std::vector< real > *resAreaWork)
 Helper method to compute the areas for a single selection. More...