SSAGES
0.9.3
Software Suite for Advanced General Ensemble Simulations
|
Collective variable to measure parallel beta sheet secondary structure. More...
#include <ParallelBetaRMSDCV.h>
Public Member Functions | |
ParallelBetaRMSDCV (std::vector< int > resids, std::string refpdb, double unitconv, int mode) | |
Constructor. More... | |
void | Initialize (const Snapshot &snapshot) override |
Initialize necessary variables. More... | |
void | Evaluate (const Snapshot &snapshot) override |
Evaluate the CV. More... | |
Public Member Functions inherited from SSAGES::CollectiveVariable | |
CollectiveVariable () | |
Constructor. | |
virtual | ~CollectiveVariable () |
Destructor. | |
virtual void | Initialize (const class Snapshot &) |
Initialize CV. More... | |
virtual void | Evaluate (const class Snapshot &)=0 |
Evaluate CV. More... | |
double | GetValue () const |
Get current value of the CV. More... | |
virtual double | GetMinimumImage (double) const |
Returns the minimum image of a CV based on the input location. More... | |
virtual double | GetPeriodicValue (double location) const |
Apply periodic boundaries to a given value. More... | |
const std::vector< Vector3 > & | GetGradient () const |
Get current gradient of the CV. More... | |
const Matrix3 & | GetBoxGradient () const |
Get gradient contribution to box. More... | |
const std::array< double, 2 > & | GetBoundaries () |
Get CV boundaries. More... | |
virtual double | GetDifference (double location) const |
Static Public Member Functions | |
static ParallelBetaRMSDCV * | Build (const Json::Value &json, const std::string &path) |
Set up collective variable. More... | |
Static Public Member Functions inherited from SSAGES::CollectiveVariable | |
static CollectiveVariable * | BuildCV (const Json::Value &json, const std::string &path) |
Set up collective variable. More... | |
Private Attributes | |
std::vector< int > | resids_ |
Residue IDs for secondary structure calculation. | |
std::vector< std::vector< std::string > > | atomids_ |
Atom IDs for secondary structure calculation: backbone of resids_. | |
std::vector< int > | ids_only_ |
Atom IDs only, for secondary structure calculation: backbone atoms of resids_. | |
std::string | refpdb_ |
Name of pdb reference for system. | |
std::vector< Vector3 > | refalpha_ |
Coordinates for reference structure. | |
double | unitconv_ |
Length unit conversion: convert 1 nm to your internal MD units (ex. if using angstroms use 10) | |
int | mode_ |
Specify whether to calculate beta sheet character in intra or inter mode: 0 for either, 1 for inter, 2 for intra. | |
std::vector< double > | refdists_ |
Pairwise distance between backbone atoms for reference structure. | |
Additional Inherited Members | |
Protected Attributes inherited from SSAGES::CollectiveVariable | |
std::vector< Vector3 > | grad_ |
Gradient vector dCv/dxi. | |
Matrix3 | boxgrad_ |
Gradient w.r.t box vectors dCv/dHij. | |
double | val_ |
Current value of CV. | |
std::array< double, 2 > | bounds_ |
Bounds on CV. | |
Collective variable to measure parallel beta sheet secondary structure.
Following treatment in Pietrucci and Laio, "A Collective Variable for the Efficient Exploration of Protein Beta-Sheet Structures: Application to SH3 and GB1", JCTC, 2009, 5(9): 2197-2201.
Check 2 blocks of 3 consecutive protein residues for RMSD from reference "ideal" parallel beta sheet structure.
Definition at line 43 of file ParallelBetaRMSDCV.h.
|
inline |
Constructor.
resids | IDs of residues for calculating secondary structure |
refpdb | String of pdb filename with atom and residue indices. |
unitconv | Conversion for internal MD length unit: 1 nm is equal to unitconv internal units |
mode | Specification for inter/intra mode for beta sheet character |
Construct an AlphaRMSD CV – calculates alpha helix character by summing pairwise RMSD to an ideal helix structure for all possible 6 residue segments.
Definition at line 85 of file ParallelBetaRMSDCV.h.
References resids_.
Referenced by Build().
|
inlinestatic |
Set up collective variable.
nullptr
in case of unknown error.Builds a CV from a JSON node. Returns a pointer to the built cv. If an unknown error is encountered, this function will return a nullptr
, but generally it will throw a BuildException on failure.
Definition at line 260 of file ParallelBetaRMSDCV.h.
References Json::Requirement::GetErrors(), Json::Requirement::HasErrors(), ParallelBetaRMSDCV(), Json::ObjectRequirement::Parse(), and Json::ObjectRequirement::Validate().
Referenced by SSAGES::CollectiveVariable::BuildCV().
|
inlineoverride |
Evaluate the CV.
snapshot | Current simulation snapshot. |
Definition at line 179 of file ParallelBetaRMSDCV.h.
References atomids_, SSAGES::Snapshot::GetCommunicator(), SSAGES::Snapshot::GetLocalIndex(), SSAGES::Snapshot::GetNumAtoms(), SSAGES::Snapshot::GetPositions(), SSAGES::CollectiveVariable::grad_, ids_only_, mode_, refdists_, resids_, and SSAGES::CollectiveVariable::val_.
|
inlineoverride |
Initialize necessary variables.
snapshot | Current simulation snapshot. |
Definition at line 111 of file ParallelBetaRMSDCV.h.
References atomids_, SSAGES::Snapshot::GetCommunicator(), SSAGES::Snapshot::GetLocalIndices(), SSAGES::ReadBackbone::GetPdbBackbone(), ids_only_, refdists_, refpdb_, resids_, and unitconv_.