#include <ArgumentOnlyDistance.h>
Public Member Functions | |
ArgumentOnlyDistance (const ReferenceConfigurationOptions &ro) | |
double | calc (const std::vector< Vector > &pos, const Pbc &pbc, const std::vector< Value * > &vals, const std::vector< double > &arg, ReferenceValuePack &myder, const bool &squared) const override |
Calculate the distance from the reference configuration. More... | |
double | calculate (const std::vector< Value * > &vals, ReferenceValuePack &myder, const bool &squared) const |
double | calculate (const std::vector< Vector > &pos, const Pbc &pbc, const std::vector< Value * > &vals, ReferenceValuePack &myder, const bool &squared=false) const |
Calculate the distance from the reference configuration. More... | |
virtual double | calculateArgumentDistance (const std::vector< Value * > &vals, const std::vector< double > &arg, ReferenceValuePack &myder, const bool &squared) const |
Calculate the euclidean/malanobius distance the atoms have moved from the reference configuration in CV space. More... | |
void | copyDerivatives (const ReferenceConfiguration *) |
Parse something from the pdb remarks Copy derivatives from one frame to this frame. More... | |
void | displaceReferenceArguments (const double &weight, const std::vector< double > &displace) |
Displace the positions of the reference atoms. More... | |
void | displaceReferenceConfiguration (const double &weight, Direction &dir) |
Move the reference configuration by an amount specified using a Direction. More... | |
virtual void | extractArgumentDisplacement (const std::vector< Value * > &vals, const std::vector< double > &arg, std::vector< double > &dirout) const |
Extract the displacement from a position in a space. More... | |
void | extractDisplacementVector (const std::vector< Vector > &pos, const std::vector< Value * > &vals, const std::vector< double > &arg, const bool &nflag, Direction &mydir) const |
Extract a Direction giving you the displacement from some position. More... | |
virtual const std::vector< AtomNumber > & | getAbsoluteIndexes () |
These are overwritten in ReferenceArguments and ReferenceAtoms to make frame copying work. More... | |
const std::vector< std::string > & | getArgumentNames () override |
Return names. More... | |
void | getArgumentRequests (std::vector< std::string > &, bool disable_checks=false) override |
Get the arguments required. More... | |
virtual void | getAtomRequests (std::vector< AtomNumber > &, bool disable_checks=false) |
Retrieve the atoms that are required for this guy. More... | |
std::string | getName () const |
Return the name of this metric. More... | |
unsigned | getNumberOfReferenceArguments () const override |
Get the number of reference arguments. More... | |
virtual unsigned | getNumberOfReferencePositions () const |
double | getReferenceArgument (const unsigned &i) const override |
Get the value of the ith reference argument. More... | |
const std::vector< double > & | getReferenceArguments () const override |
Return all the reference arguments. More... | |
const std::vector< double > & | getReferenceMetric () override |
virtual const std::vector< Vector > & | getReferencePositions () const |
These are overwritten in ReferenceArguments and ReferenceAtoms but are required here to make PLMD::distance work. More... | |
void | moveReferenceArguments (const std::vector< double > &arg_vals) |
Set the positions of the reference arguments. More... | |
bool | pcaIsEnabledForThisReference () override |
Stuff for pca. More... | |
double | projectArgDisplacementOnVector (const std::vector< double > &eigv, const std::vector< Value * > &vals, const std::vector< double > &arg, ReferenceValuePack &mypack) const |
Project the displacement of the arguments on a vector. More... | |
double | projectDisplacementOnVector (const Direction &mydir, const std::vector< Value * > &vals, const std::vector< double > &arg, ReferenceValuePack &mypack) const |
void | read (const PDB &pdb) override |
Do all local business for setting the configuration. More... | |
void | setReferenceArguments (const std::vector< double > &arg_vals, const std::vector< double > &sigma) |
Set the positions of the reference arguments. More... | |
void | setupPCAStorage (ReferenceValuePack &mypack) override |
Stuff to setup pca. More... | |
Protected Member Functions | |
void | error (const std::string &msg) |
Crash with an error. More... | |
void | readArgumentsFromPDB (const PDB &pdb) |
Read in the atoms from the pdb file. More... | |
void | setReferenceArguments () |
Set the values of the colvars based on their current instantanous values (used in Analysis) More... | |
Protected Attributes | |
bool | hasmetric |
Are we calculating a Malanobius distance. More... | |
bool | hasweights |
Are we reading weights from input. More... | |
Private Attributes | |
std::vector< unsigned > | arg_der_index |
The indices for setting derivatives. More... | |
std::vector< std::string > | arg_names |
The names of the arguments. More... | |
std::vector< std::string > | fake_arg_names |
std::vector< AtomNumber > | fake_atom_numbers |
These are used to do fake things when we copy frames. More... | |
std::vector< double > | fake_metric |
std::vector< double > | fake_refargs |
std::vector< Vector > | fake_refatoms |
These are use by the distance function above. More... | |
std::vector< std::string > | line |
A vector containing all the remarks from the pdb input. More... | |
Matrix< double > | metric |
The N X N matrix we are using to calculate our Malanobius distance. More... | |
std::string | name |
The name of this particular config. More... | |
std::vector< double > | reference_args |
The values of the colvars in the reference configuration. More... | |
std::vector< double > | sqrtweight |
std::vector< double > | trig_metric |
std::vector< double > | weights |
The weights for normed euclidean distance. More... | |
|
explicit |
|
overridevirtual |
Calculate the distance from the reference configuration.
Implements PLMD::ReferenceConfiguration.
double PLMD::ArgumentOnlyDistance::calculate | ( | const std::vector< Value * > & | vals, |
ReferenceValuePack & | myder, | ||
const bool & | squared | ||
) | const |
|
inherited |
Calculate the distance from the reference configuration.
|
virtualinherited |
Calculate the euclidean/malanobius distance the atoms have moved from the reference configuration in CV space.
Reimplemented in PLMD::DotProductDistance.
|
inherited |
Parse something from the pdb remarks Copy derivatives from one frame to this frame.
|
inherited |
Displace the positions of the reference atoms.
|
inherited |
Move the reference configuration by an amount specified using a Direction.
|
protectedinherited |
Crash with an error.
|
virtualinherited |
Extract the displacement from a position in a space.
Reimplemented in PLMD::Direction.
|
inherited |
Extract a Direction giving you the displacement from some position.
|
inlinevirtualinherited |
These are overwritten in ReferenceArguments and ReferenceAtoms to make frame copying work.
Reimplemented in PLMD::ReferenceAtoms.
|
inlineoverridevirtualinherited |
Return names.
Reimplemented from PLMD::ReferenceConfiguration.
|
overridevirtualinherited |
Get the arguments required.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlinevirtualinherited |
Retrieve the atoms that are required for this guy.
Reimplemented in PLMD::ReferenceAtoms.
|
inherited |
Return the name of this metric.
|
inlineoverridevirtualinherited |
Get the number of reference arguments.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlinevirtualinherited |
Reimplemented in PLMD::ReferenceAtoms.
|
inlineoverridevirtualinherited |
Get the value of the ith reference argument.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlineoverridevirtualinherited |
Return all the reference arguments.
Reimplemented from PLMD::ReferenceConfiguration.
|
overridevirtualinherited |
Reimplemented from PLMD::ReferenceConfiguration.
|
inlinevirtualinherited |
These are overwritten in ReferenceArguments and ReferenceAtoms but are required here to make PLMD::distance work.
Reimplemented in PLMD::ReferenceAtoms.
|
inherited |
Set the positions of the reference arguments.
|
inlineoverridevirtual |
Stuff for pca.
Reimplemented from PLMD::ReferenceConfiguration.
|
inherited |
Project the displacement of the arguments on a vector.
|
inherited |
|
overridevirtual |
Do all local business for setting the configuration.
Implements PLMD::ReferenceConfiguration.
Reimplemented in PLMD::DotProductDistance.
|
protectedinherited |
Read in the atoms from the pdb file.
|
protectedinherited |
Set the values of the colvars based on their current instantanous values (used in Analysis)
|
inherited |
Set the positions of the reference arguments.
|
inlineoverridevirtual |
Stuff to setup pca.
Reimplemented from PLMD::ReferenceConfiguration.
|
privateinherited |
The indices for setting derivatives.
|
privateinherited |
The names of the arguments.
|
privateinherited |
|
privateinherited |
These are used to do fake things when we copy frames.
|
privateinherited |
|
privateinherited |
|
privateinherited |
These are use by the distance function above.
|
protectedinherited |
Are we calculating a Malanobius distance.
|
protectedinherited |
Are we reading weights from input.
|
privateinherited |
A vector containing all the remarks from the pdb input.
|
privateinherited |
The N X N matrix we are using to calculate our Malanobius distance.
|
privateinherited |
The name of this particular config.
|
privateinherited |
The values of the colvars in the reference configuration.
|
privateinherited |
|
privateinherited |
|
privateinherited |
The weights for normed euclidean distance.
Hosted by GitHub | 1.8.17 |