22 #include "CollectiveVariable.h"
23 #include "AlphaRMSDCV.h"
24 #include "CVManager.h"
27 #include "AntiBetaRMSDCV.h"
28 #include "BoxVolumeCV.h"
29 #include "GyrationTensorCV.h"
30 #include "PairwiseCV.h"
31 #include "ParallelBetaRMSDCV.h"
32 #include "ParticleCoordinateCV.h"
33 #include "ParticlePositionCV.h"
34 #include "ParticleSeparationCV.h"
35 #include "RouseModeCV.h"
36 #include "TorsionalCV.h"
38 #include "json/json.h"
46 auto type = json.get(
"type",
"none").asString();
50 else if (type ==
"ANNCV")
52 else if(type ==
"BoxVolume")
54 else if(type ==
"GyrationTensor")
56 else if(type ==
"Pairwise")
58 else if(type ==
"ParticleCoordinate")
60 else if(type ==
"ParticlePosition")
62 else if(type ==
"ParticleSeparation")
64 else if(type ==
"RouseMode")
66 else if(type ==
"Torsional")
68 else if (type ==
"AlphaRMSD")
70 else if (type ==
"ParallelBetaRMSD")
72 else if (type ==
"AntiBetaRMSD")
74 else if (type ==
"RMSD")
77 throw std::invalid_argument(path +
": Unknown CV type specified.");
static ANNCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static AlphaRMSDCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static AngleCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static AntiBetaRMSDCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static BoxVolumeCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static std::map< std::string, unsigned int > cvmap_
Map between CV names and ID's.
Abstract class for a collective variable.
static CollectiveVariable * BuildCV(const Json::Value &json, const std::string &path)
Set up collective variable.
static GyrationTensorCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static PairwiseCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static ParallelBetaRMSDCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static ParticleCoordinateCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static ParticlePositionCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static ParticleSeparationCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static RMSDCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static RouseModeCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.
static TorsionalCV * Build(const Json::Value &json, const std::string &path)
Set up collective variable.